Symbian3/SDK/Source/GUID-165EE4DD-C9CA-430B-8377-068A4194716E.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Wed, 31 Mar 2010 11:11:55 +0100
changeset 7 51a74ef9ed63
child 8 ae94777fff8f
permissions -rw-r--r--
Week 12 contribution of API Specs and fix SDK submission

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE task
  PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd">
<task id="GUID-165EE4DD-C9CA-430B-8377-068A4194716E" xml:lang="en"><title>Modifying
applications to support single-tap</title><shortdesc> Symbian^3 enhances the touch interaction by providing support
for single-tap.</shortdesc><prolog><metadata><keywords/></metadata></prolog><taskbody>
<context id="GUID-0EFB67F7-2936-4126-B13A-67402F696663"><p>S60 5th Edition
introduced touch support feature with double-tap to maintain binary and source
code compatibility with the existing S60 3.x applications. The UI was focus
driven, with the first tap for object selection (the corresponding event forwarded
to the application) and the second tap for activation.</p><p>Symbian^3 enhances
the touch support with single tap for achieving better usability and development
of platform and 3rd party applications. The supporting UI is based on direct
manipulation and is not focus driven, which means that a single-tap on the
device selects and activates an event. This change modifies the touch behavior
of certain UI components as listed below:<ul>
<li><p>By default, none of the menu items are highlighted.</p></li>
<li><p>Item specific options are displayed in stylus menus rather than in
options menus.</p></li>
<li><p>The side toolbar is hidden in the landscape layout view except in specific
applications like the message viewer and editor.</p></li>
</ul></p><p>It is highly recommended that you migrate your applications to
single-tap to complement the platform UI behavior. However, if you do not
migrate your applications to single-tap, they work the same way as in S60
5th Edition (touch support with double-tap).<note> The UI components can be
used in hybrid devices for both touch and non-touch events. For details, see <xref href="GUID-EE001282-604B-45F4-8A9E-F657113C86CE.dita">Designing application UIs
for touch and non-touch devices</xref>.</note>  </p></context>
<steps id="GUID-4DD07DEC-6017-4237-BE46-1D69E5FBD744-GENID-1-4-1-1-7-1-4-1-3-2">
<step id="GUID-9A69E5AD-E938-4092-A8C2-CB65C37C8962-GENID-1-4-1-1-7-1-4-1-3-2-1"><cmd>Include the <xref href="GUID-2A5F78CD-F404-338E-A505-93DC30CD4A0A.dita"><apiname>EAknTouchCompatible</apiname></xref> and <xref href="GUID-42FC6075-C1A0-3E68-8109-F6CC04CFBAE2.dita"><apiname>EAknSingleClickCompatible</apiname></xref> flags in your application's UI (<codeph>CAknAppUi</codeph> ) constructor.</cmd>
<stepxmp><p>For example, </p><codeblock xml:space="preserve">void CFileBrowseBaseView::ConstructL() //Called from framework (CEikDocument)
{
  ...
    BaseConstructL(EAknEnableSkin | EAknEnableMSK | <b>EAknTouchCompatible</b> | <b>EAknSingleClickCompatible</b>);
  ...
}</codeblock></stepxmp>
<info><p>The <xref href="GUID-2A5F78CD-F404-338E-A505-93DC30CD4A0A.dita"><apiname>EAknTouchCompatible</apiname></xref> flag enables touch functionality.
The <xref href="GUID-42FC6075-C1A0-3E68-8109-F6CC04CFBAE2.dita"><apiname>EAknSingleClickCompatible</apiname></xref> flag enables single-click
functionality on the Symbian device.</p></info>
<stepresult><p>The following illustrations show how applications behave before
and after the single-tap changes are made:</p><fig id="GUID-7015C5AD-8162-4185-801C-BEF4352B9837">
<title>Double-tap enabled: By default, UI component is highlighted.</title>
<image href="GUID-BF626AFA-F8E5-4049-BC3E-E947AD2D39A1_d0e2580_href.png" placement="inline"/>
</fig><fig id="GUID-12C4AB22-ACF7-4A43-B322-ABB39B5653DC">
<title>Single-tap enabled: By default, no UI component is highlighted.</title>
<image href="GUID-CAB2A21A-B2EE-4B49-AC97-7F70BDC95755_d0e2587_href.png" placement="inline"/>
</fig></stepresult>
</step>
<step id="GUID-CCF099FE-76F5-49AC-99A7-E834A07FD628"><cmd>Hide item-specific
commands from the application's <xref href="GUID-AC8439C7-7E57-4829-AB4B-70BC394DD66F.dita">menus</xref>, <xref href="GUID-244631CF-03F9-4C48-9802-682A76E9ECCC.dita">submenus</xref> and <xref href="GUID-E3A60844-EE37-4AF1-8921-59375C563723.dita">toolbars</xref>. Item-specific
commands are functions that are specific to an item. For example, <b>Edit</b> is
an item-specific command for an existing contact in the <b>Phone book</b>.</cmd>
<stepresult><p>As a result, all item-specific options are hidden in menus,
submenus and toolbars and are displayed in the <xref href="GUID-C4E728B4-3E84-49A4-83CB-DF146420D78A.dita">stylus
popup menus</xref>. </p></stepresult>
</step>
<step id="GUID-10C30123-1921-43E1-B39F-C41DC65991E6"><cmd><xref href="GUID-361BB951-DB74-4D83-ACFC-812383C8129C.dita">Activate
items in a list</xref> on single-tap.</cmd>
</step>
<step id="GUID-10F9F971-4E80-4D0A-90B2-7BDC9C40E0A9"><cmd><xref href="GUID-78453EBD-B4F3-4A78-AEAE-3D126DFED31F.dita">Disable
stylus popup menu in AVKON lists</xref>.</cmd>
</step>
<step id="GUID-FF167282-56A6-42F4-ABAE-5A53ECCC0E2F"><cmd><xref href="GUID-2131E679-779D-427D-BD41-47D9949A8749.dita">Disable
hardware key shortcuts</xref>.</cmd>
</step>
</steps>
</taskbody></task>