org.symbian.tools.wrttools.doc.WebDeveloper/html/GUID-2D87333D-5475-4A8F-9E98-1EBF8035EF96.html
author Eugene Ostroukhov <eugeneo@symbian.org>
Wed, 26 May 2010 17:01:34 -0700
changeset 341 480716493610
parent 229 716254ccbcc0
permissions -rw-r--r--
Set content type for png files


<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><meta name="copyright" content="(C) Copyright 2009"/><meta name="DC.rights.owner" content="(C) Copyright 2009"/><meta name="DC.Type" content="concept"/><meta name="DC.Title" content="Porting widgets"/><meta name="DC.Relation" scheme="URI" content="GUID-6DD2B3D2-BA3B-4936-BBC9-F61B6757B6F8"/><meta name="DC.Relation" scheme="URI" content="GUID-3DA126B3-12E2-44C8-A009-8D25E7B3F7E6"/><meta name="DC.Relation" scheme="URI" content="GUID-D54DEFE7-E878-4530-B707-A5388DFE1D9D"/><meta name="DC.Format" content="XHTML"/><meta name="DC.Identifier" content="GUID-2D87333D-5475-4A8F-9E98-1EBF8035EF96"/><title>Porting widgets </title><script type="text/javascript">
      function initPage() {}
    </script><link href="../PRODUCT_PLUGIN/book.css" rel="stylesheet" type="text/css"/><link href="css/s60/style.css" rel="stylesheet" type="text/css" media="all"/></head><body onload="initPage();"><div class="body"><div class="contentLeft prTxt"><h1 class="pageHeading" id="GUID-2D87333D-5475-4A8F-9E98-1EBF8035EF96">Porting widgets</h1><div>
<p>Although widgets are conceptually similar in different environments, the way they are implemented and built varies depending on the underlying execution environment and the type of browser that is used to run them. Especially the UI resources available may differ notably between environments. For this reason, there are some changes that you need to make manually when porting a widget from a desktop environment to the Web Runtime (WRT) environment of S60 mobile devices.</p>
<p> The most important aspects to consider in the porting process include:</p>
<ul>
<li><p>Adjusting UI components</p><p>Due to the differences between the user interface of a desktop environment and that of a mobile device, you need to implement the S60 platform UI requirements on top of your widget. This includes scaling the UI to make it suitable for the mobile device screen size as well as handling possible screen orientation changes. For more information on UI related considerations, see <a href="GUID-9E0EC12F-EF50-4831-B0F4-C588590871D8.html#GUID-9E0EC12F-EF50-4831-B0F4-C588590871D8">Designing for mobile devices</a>.</p></li>
<li><p>Navigation in the widget</p><p>Due to the small screen size and lack of a mouse and a full-size keyboard, the navigation experience of a widget should be made as simple and easy as possible. This may mean adjustments to the navigation mode, scrollbar usage, and key input handling, for example. Consider using softkeys and menu options in your widget.</p><p>For more information, see <a href="GUID-6DD2B3D2-BA3B-4936-BBC9-F61B6757B6F8.html#GUID-6DD2B3D2-BA3B-4936-BBC9-F61B6757B6F8">Managing user interaction</a> and <a href="GUID-C359CC7E-B8BA-491B-A0C4-0FF1D3C4110C.html#GUID-C359CC7E-B8BA-491B-A0C4-0FF1D3C4110C">Moving within widgets</a>.</p></li>
<li><p>Differences in supported tags and API functionality</p><p>The underlying execution environments for widgets share many common features. However, the WRT environment may include some limitations to tag and method support compared to the environment from which you are porting. On the other hand, the <a href="GUID-7C69DDA4-16F1-4A8F-BDB2-4CB0015B4E81.html#GUID-7C69DDA4-16F1-4A8F-BDB2-4CB0015B4E81">Web Runtime API reference</a> provides some additional features that are mobile device specific.</p></li>
<li><p>Differences in file paths</p><p>You may need to modify the file path references of the widget to make it compliant with the file system of the S60 platform.</p></li>
<li><p>Plug-in interface support</p><p>Your widget may include functionality that relies on plug-in interface extensions, and the WRT environment may not support such plug-ins. In this case, you may not be able to implement certain functionality in your widget in the WRT environment.</p></li>
<li><p>Library support</p><p>The WRT environment only supports libraries that are not copyrighted or protected by any means.</p></li>
<li><p>Deployment</p><p>The way in which widgets are deployed to the S60 mobile devices differs from widget deployment in other execution environments. For more information, see sections <a href="GUID-E5AF6C82-3A6E-47DE-BF58-750D97AAD70E.html#GUID-E5AF6C82-3A6E-47DE-BF58-750D97AAD70E">Widget development process</a> and <a href="GUID-CCA3FA0B-9D75-453A-947C-B3CB2A85C684.html#GUID-CCA3FA0B-9D75-453A-947C-B3CB2A85C684">Deploying widgets</a>.</p></li>
</ul>
<p>For more information on porting widgets, see <a href="http://www.forum.nokia.com/info/sw.nokia.com/id/67cd7763-55c6-4558-beda-05ba4cfe48a4/Porting_Apple_Dashboard_Widgets_to_S60.html" target="_blank">Porting Apple Dashboard Widgets to S60</a> available at Forum Nokia.</p>
</div></div></div><div class="footer"><hr/><div class="copy">© Nokia 2009.</div></div></body></html>