--- a/akntouchgesturefw/inc/akntouchgesturefwdefs.h Wed Mar 31 21:59:52 2010 +0300
+++ b/akntouchgesturefw/inc/akntouchgesturefwdefs.h Wed Apr 14 16:14:00 2010 +0300
@@ -99,7 +99,7 @@
const TUint32 KAknTouchGestureFwAllGestureTypes = 0x7fffffff;
/// Default feedback intensity.
-const TInt KAknTouchGestureFwFeedbackIntensity = 50;
+const TInt KAknTouchGestureFwFeedbackIntensity = 100;
/// Pinch feedback timeout (in microseconds).
const TInt KAknTouchGestureFwPinchFeedbackTimeout = 200000;
--- a/classicui_plat/avkon_localised_texts_api/loc/avkon.loc Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/avkon_localised_texts_api/loc/avkon.loc Wed Apr 14 16:14:00 2010 +0300
@@ -4290,4 +4290,18 @@
//
#define qtn_iim_uni_ind_default "New unread chats"
+//d: Text in touch inputmethod menu list
+//d: Command to change editor input mode to alpha input mode
+//d: Only Korean
+//l: list_single_pane_t1_cp2
+//r: 5.0
+#define qtn_activate_english_mode "Alpha mode"
+
+//d: Text in touch inputmethod menu list
+//d: Command to change editor input mode to Korean character input mode
+//d: Only Korean
+//l: list_single_pane_t1_cp2
+//r: 5.0
+#define qtn_activate_korean_mode "Korean mode"
+
// End of File
--- a/classicui_plat/avkon_localised_texts_api/loc/avkonsct.loc Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/avkon_localised_texts_api/loc/avkonsct.loc Wed Apr 14 16:14:00 2010 +0300
@@ -208,7 +208,21 @@
//
#define qtn_sct_cdma_sp_sms_speci_chars_upper ".@?!-,&:'\"+=/$*#%;\<>{}[]_()"<0x2029>"~^`|"
+//d: Special character table character set for Korean variant.
+//d: Special character table opened in Messaging, Note, Contacts, and Calendar editor.
+//d: Maximum 255 characters.
+//d: Unicode format: <0x0041><0x0042><0x0043> etc.
+//d: <0x2029> = line feed. <0x0020> = space
+//d: Only Korean
+//l:(none)
+//
+#define qtn_sct_kor_special_characters ".,'?!\"-()@/\\:_;+&%*#=<>~^`"<0x2665><0x007C><0x0020><0x2029><0x2592><0x25A4><0x25A5><0x25A0><0x25A1><0x25B2><0x25B3><0x25B6><0x25B7><0x25BC><0x25BD><0x25C0><0x25C1><0x25C6><0x25C7><0x25CB><0x25CE><0x25CF><0x2605><0x2606><0x2661><0x2660><0x2664><0x2663><0x2667><0x25D0><0x25D1><0x260E><0x266A><0x266C><0x2640><0x2642><0x2299><0x2252><0x2260><0x00B1><0x00D7><0x00F7><0x2264><0x2265><0x2282><0x2283><0x2286><0x2287><0x2208><0x220B><0x221E><0x222B><0x222E><0x2234><0x2235><0x2200><0x00B0><0x221A><0x2030><0x2153><0x2154><0x2202><0x223D><0x2211><0x2103><0x2126><0x2113><0x3389><0x338F><0x3392><0x33A1><0x005B><0x005D><0x007B><0x007D><0xFFE6><0x20AC><0x0024><0xFFE5><0xFFE1><0x203B><0x00A7><0x261C><0x261E><0x2668><0x2190><0x2191><0x2192><0x2193><0x2196><0x2197><0x2198><0x2199>
+//d: Special character table character set for lockcode.
+//d: Maximum 255 characters.
+//l:(none)
+//
+#define qtn_sct_special_characters_lockcode ".,'?!\"-()@/:_;+&#%*=<>$[]{}\\~^`|"
// End of File
--- a/classicui_plat/extended_options_menu_api/inc/aknitemactionmenu.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/extended_options_menu_api/inc/aknitemactionmenu.h Wed Apr 14 16:14:00 2010 +0300
@@ -105,6 +105,18 @@
MAknCollection& aCollection );
/**
+ * Adds collection to the item action menu of this view / dialog / appUi.
+ *
+ * @param aCollection Collection implementing MAknCollection interface.
+ * @param aMenuBarOwner Owner of the menubar that collection will be
+ * registered with.
+ * @return Pointer to the item action menu instance.
+ * Ownership does not transfer to caller.
+ */
+ IMPORT_C static CAknItemActionMenu* RegisterCollectionL(
+ MAknCollection& aCollection, MObjectProvider* aMenuBarOwner );
+
+ /**
* Removes collection of this item action menu.
*
* @param aCollection Collection to be removed.
--- a/classicui_plat/extended_options_menu_api/tsrc/conf/testdomoptionsmenu.cfg Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/extended_options_menu_api/tsrc/conf/testdomoptionsmenu.cfg Wed Apr 14 16:14:00 2010 +0300
@@ -25,3 +25,7 @@
run testscripter c:\testframework\ui_testdomoptionsmenu.cfg 5
[Endtest]
+[Test]
+title TestIMRegisterCollection2L
+run testscripter c:\testframework\ui_testdomoptionsmenu.cfg 6
+[Endtest]
--- a/classicui_plat/extended_options_menu_api/tsrc/conf/ui_testdomoptionsmenu.cfg Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/extended_options_menu_api/tsrc/conf/ui_testdomoptionsmenu.cfg Wed Apr 14 16:14:00 2010 +0300
@@ -37,3 +37,9 @@
delete test
[Endtest]
+[Test]
+title TestIMRegisterCollection2L
+create testdomoptionsmenu test
+test TestIMRegisterCollection2L
+delete test
+[Endtest]
--- a/classicui_plat/extended_options_menu_api/tsrc/inc/testdomoptionsmenu.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/extended_options_menu_api/tsrc/inc/testdomoptionsmenu.h Wed Apr 14 16:14:00 2010 +0300
@@ -155,7 +155,16 @@
* @return Symbian OS error code.
*/
virtual TInt TestIMCollectionChangedL( CStifItemParser& aItem );
-
+
+ /**
+ * TestIMRegisterCollection2L test function of class CAknItemActionMenu for in aknitemactionmenu.h
+ * @since S60 5.2
+ * @param aItem never used
+ * @return Symbian OS error code.
+ */
+ virtual TInt TestIMRegisterCollection2L( CStifItemParser& aItem );
+
+
public: // Data
protected: // Data
--- a/classicui_plat/extended_options_menu_api/tsrc/inc/testoptionsmenu.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/extended_options_menu_api/tsrc/inc/testoptionsmenu.h Wed Apr 14 16:14:00 2010 +0300
@@ -25,7 +25,7 @@
* CTestOptionsMenu test class for STIF Test Framework TestScripter.
* @since S60 5.0
*/
-class TTestCollection : public MAknCollection
+class TTestCollection : public MAknCollection, public MObjectProvider
{
// Constructors and destructor
public:
@@ -71,6 +71,17 @@
{
return 0;
}
+
+public:// Functions inherit from MObjectProvider classes
+
+ /**
+ * Object provider
+ */
+ TTypeUid::Ptr MopSupplyObject( TTypeUid aId )
+ {
+ return TTypeUid::Null();
+ }
+
};
#endif /*T_TESDOMMENU_H*/
--- a/classicui_plat/extended_options_menu_api/tsrc/src/testdomoptionsmenublocks.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/extended_options_menu_api/tsrc/src/testdomoptionsmenublocks.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -59,6 +59,7 @@
ENTRY( "TestIMShowMenuL", CTestDomOptionsMenu::TestIMShowMenuL ),
ENTRY( "TestIMInitMenuL", CTestDomOptionsMenu::TestIMInitMenuL ),
ENTRY( "TestIMCollectionChangedL", CTestDomOptionsMenu::TestIMCollectionChangedL ),
+ ENTRY( "TestIMRegisterCollection2L", CTestDomOptionsMenu::TestIMRegisterCollection2L )
};
const TInt count = sizeof( KFunctions ) /
@@ -204,4 +205,30 @@
return KErrNone;
}
+// -----------------------------------------------------------------------------
+// CTestSDKOptionsMenu::TestIMRegisterCollection2L
+// -----------------------------------------------------------------------------
+//
+TInt CTestDomOptionsMenu::TestIMRegisterCollection2L( CStifItemParser& /*aItem*/ )
+ {
+ // Print to UI
+ _LIT( KTestSDKDomMenu, "TestSDKDomMenu" );
+ _LIT( KTestIMRegisterCollectionL, "In TestIMRegisterCollection2L" );
+ TestModuleIf().Printf( 0, KTestSDKDomMenu, KTestIMRegisterCollectionL );
+ // Print to log file
+ iLog->Log( KTestIMRegisterCollectionL );
+
+ if( !iCollection )
+ {
+ iCollection = new(ELeave) TTestCollection;
+ }
+
+ //since STIF does not enable single click now, can't get instance of CAknItemActionMenu.
+ //Hence following method will not be invoked.
+ CAknItemActionMenu::RegisterCollectionL( *iCollection, iCollection );
+ return KErrNone;
+
+ }
+
+
// [End of File] - Do not remove
--- a/classicui_plat/find_item_ui_api/inc/finditemmenu.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/find_item_ui_api/inc/finditemmenu.h Wed Apr 14 16:14:00 2010 +0300
@@ -371,12 +371,6 @@
TBool ItemFinderExists();
TPtrC CurrentSelection();
- /**
- * Returns text highlight status.
- * @return ETrue if there is highlighted text, otherwise EFalse
- */
- TBool HasSelection() const;
-
private:
/**
* Enumeration for menu command ids
--- a/classicui_plat/ganes_api/inc/ganes/HgScroller.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/ganes_api/inc/ganes/HgScroller.h Wed Apr 14 16:14:00 2010 +0300
@@ -316,6 +316,11 @@
*/
IMPORT_C void DisableScrollBuffer();
+ /**
+ *
+ */
+ IMPORT_C void SetMenuProviderL( MObjectProvider* aMenuProvider );
+
// Selection modes. Used in internal key marking implemention.
enum TSelectionMode
{
--- a/classicui_plat/ganes_api/inc/ganes/HgVgMediaWall.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_plat/ganes_api/inc/ganes/HgVgMediaWall.h Wed Apr 14 16:14:00 2010 +0300
@@ -460,12 +460,12 @@
/**
* Does transition animation, called by DoAnimation.
*/
- void DoTransitionAnimation();
+ TBool DoTransitionAnimation();
/**
* Does selection animation
*/
- void DoSelectionAnimation();
+ TBool DoSelectionAnimation();
/**
* Callback method for animation
--- a/classicui_plat/media_shared_document_api/media_shared_document_api.metaxml Wed Mar 31 21:59:52 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-<?xml version="1.0" ?>
-<api id="bb49a13f8e3a9f21f21cdc2bc6a2e47a" dataversion="1.0">
- <name>Media Shared Document API</name>
- <description>Offers embedded applications sharing documents of this type the means to exchange data.</description>
- <type>c++</type>
- <subsystem>commonuis</subsystem>
- <libs>
- <lib name="commonui.lib" />
- </libs>
- <release category="domain"/>
- <attributes>
- <!-- This indicates wether the api provedes separate html documentation -->
- <!-- or is the additional documentation generated from headers. -->
- <!-- If you are unsuere then the value is "no" -->
- <htmldocprovided>yes</htmldocprovided>
- <adaptation>no</adaptation>
- </attributes>
-</api>
--- a/classicui_pub/lists_api/inc/EIKLBX.H Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_pub/lists_api/inc/EIKLBX.H Wed Apr 14 16:14:00 2010 +0300
@@ -1519,6 +1519,17 @@
*/
IMPORT_C void DisableItemSpecificMenu();
+ /**
+ * Checks if highlight drawing is enabled. If single click is
+ * enabled highlight drawing is by default disabled, but highlight comes
+ * visible with hardware keys.
+ *
+ * @return ETrue if highlight is enabled, EFalse if not.
+ *
+ * @since S60 5.2
+ */
+ IMPORT_C TBool IsHighlightEnabled();
+
private:
IMPORT_C virtual void CEikListBox_Reserved(); // listbox use only
void HorizontalScroll(TInt aScrollAmountInPixels);
--- a/classicui_pub/lists_api/tsrc/conf/tctestsdklistseiklbx.cfg Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_pub/lists_api/tsrc/conf/tctestsdklistseiklbx.cfg Wed Apr 14 16:14:00 2010 +0300
@@ -689,3 +689,8 @@
title TestLBItemsInSingleLine
run testscripter c:\testframework\ui_testsdklistseiklbx.cfg 138
[Endtest]
+
+[Test]
+title TestLBIsHighlightEnabled
+run testscripter c:\testframework\ui_testsdklistseiklbx.cfg 139
+[Endtest]
--- a/classicui_pub/lists_api/tsrc/conf/ui_testsdklistseiklbx.cfg Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_pub/lists_api/tsrc/conf/ui_testsdklistseiklbx.cfg Wed Apr 14 16:14:00 2010 +0300
@@ -1098,3 +1098,12 @@
test TestLBItemsInSingleLine
delete test
[Endtest]
+
+[Test] //139
+title TestLBIsHighlightEnabled
+create testsdklists test
+test TestLBConstructorL
+test TestLBConstructWithTGulBorderL
+test TestLBIsHighlightEnabled
+delete test
+[Endtest]
--- a/classicui_pub/lists_api/tsrc/inc/testsdklists.h Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_pub/lists_api/tsrc/inc/testsdklists.h Wed Apr 14 16:14:00 2010 +0300
@@ -5877,6 +5877,16 @@
*/
virtual TInt TestLBItemsInSingleLine( CStifItemParser& aItem );
+ /**
+ * TestLBSetItemsInSingleLine test function for testing the
+ * IsHighlightEnabled function
+ * @since S60 5.2
+ * @param aItem never used
+ * @return Symbian OS error code.
+ */
+ virtual TInt TestLBIsHighlightEnabled( CStifItemParser& aItem );
+
+
private: // eikslb.h
// class CSettingsListBoxItemDrawer
/**
--- a/classicui_pub/lists_api/tsrc/src/testsdklistsblockseiklbx.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/classicui_pub/lists_api/tsrc/src/testsdklistsblockseiklbx.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -4393,5 +4393,23 @@
return KErrNone;
}
+// -----------------------------------------------------------------------------
+// CTestSDKLists::TestLBIsHighlightEnabled
+// -----------------------------------------------------------------------------
+//
+TInt CTestSDKLists::TestLBIsHighlightEnabled( CStifItemParser& /*aItem*/)
+ {
+ // Print to UI
+ _LIT( KTestModule, "EIKLBXTestModule" );
+ _LIT( KTestEIKLBX, "In TestLBIsHighlightEnabled" );
+ TestModuleIf().Printf( 0, KTestModule, KTestEIKLBX );
+ // Print to log file
+ iLog->Log( KTestEIKLBX );
+
+ TBool enabled = iListBox->IsHighlightEnabled();
+ STIF_ASSERT_TRUE( enabled );
+
+ return KErrNone;
+ }
// [End of file]
--- a/commonuis/CommonDialogs/src/CAknCFDFileSystemEvent.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/commonuis/CommonDialogs/src/CAknCFDFileSystemEvent.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -109,11 +109,10 @@
// If not ENotifyDisk, do refresh when event is checked
// using CheckFileSystemEvent
- if ( iNotifyType == ENotifyEntry )
+ if ( iNotifyType == ENotifyDisk || iNotifyType == ENotifyEntry )
{
iObserver.NotifyFileSystemChangedL();
}
- Setup();
}
// -----------------------------------------------------------------------------
--- a/commonuis/CommonDialogs/src/CAknFileSelectionEventHandler.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/commonuis/CommonDialogs/src/CAknFileSelectionEventHandler.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -408,5 +408,6 @@
{
iModel->UpdateItemListL();
iPopupList->HandleFileSystemChangedL(iModel);
+ iFSObserver->Setup();
}
// End of File
--- a/commonuis/CommonUi/src/FindItemMenu.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/commonuis/CommonUi/src/FindItemMenu.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -53,7 +53,7 @@
#endif // !RD_VIRTUAL_PHONEBOOK
#include "finditem.hrh"
-#include <FindItemui.rsg>
+#include <finditemui.rsg>
#include <aknnotewrappers.h>
// add to gallery related
@@ -356,21 +356,6 @@
*iFindItemUrlItemString );
}
}
-
-// -----------------------------------------------------------------------------
-// HasSelection
-// Returns ETrue if editor has highlighted text
-// -----------------------------------------------------------------------------
-//
-TBool CFindItemMenu::HasSelection() const
- {
- TBool retval ( EFalse );
- if ( iAutomaticFind )
- {
- retval = iAutomaticFind->HasSelection();
- }
- return retval;
- }
// -----------------------------------------------------------------------------
// AddMenuItemL
@@ -556,41 +541,15 @@
TBuf<KMaxMenuTextLength> tempBuf;
// Adds menu items depending the selected item
- if ( HasSelection() )
+ switch ( itemType )
{
- switch ( itemType )
+ case CItemFinder::EPhoneNumber:
{
- case CItemFinder::EPhoneNumber:
- {
#ifdef RD_VOIP_REL_2_2
- if ( FeatureManager::FeatureSupported(KFeatureIdCommonVoip ) )
- {
- // show call menu if allowed
- if ( !( iMenuItemFlags & CFindItemMenu::ECallItem ) )
- {
- // Call
- iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdCall,
- ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
- 0,
- tempBuf );
- }
- // if context menu, we will show call item anyway
- else if ( iIsContextMenu )
- {
- // Call
- iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdCall,
- EFindItemContextMenuPlaceHolder,
- 0,
- tempBuf );
- }
- }
- else
+ if ( FeatureManager::FeatureSupported(KFeatureIdCommonVoip ) )
+ {
+ // show call menu if allowed
+ if ( !( iMenuItemFlags & CFindItemMenu::ECallItem ) )
{
// Call
iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
@@ -601,8 +560,21 @@
0,
tempBuf );
}
- index = EFindItemCmdCall;
-#else
+ // if context menu, we will show call item anyway
+ else if ( iIsContextMenu )
+ {
+ // Call
+ iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdCall,
+ EFindItemContextMenuPlaceHolder,
+ 0,
+ tempBuf );
+ }
+ }
+ else
+ {
// Call
iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
AddMenuItemL(
@@ -611,132 +583,141 @@
( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
0,
tempBuf );
- index = EFindItemCmdCall;
+ }
+ index = EFindItemCmdCall;
+#else
+ // Call
+ iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdCall,
+ ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
+ 0,
+ tempBuf );
+ index = EFindItemCmdCall;
#endif // RD_VOIP_REL_2_2
- // Write
+ // Write
+ iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_MESSAGE_SUB );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemSubMenuSend,
+ index,
+ 0,//R_FINDITEM_NUMBER_MESSAGE_SUBMENU,
+ tempBuf );
+ index = EFindItemSubMenuSend;
+
+ break;
+ }
+ case CItemFinder::EUrlAddress:
+ {
+ iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_GOTO_URL );
+
+ // check if not rstp
+ if ( iAutomaticFind->CurrentItemExt().iItemDescriptor->FindF( KRtspUrlAddress ) == KErrNotFound )
+ {
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdGoToUrl,
+ ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
+ 0,
+ tempBuf);
+ index = EFindItemCmdGoToUrl;
+
+ if ( !iIsContextMenu )
+ {
+ // Add bookmark
+ iCoeEnv->ReadResourceL(
+ tempBuf, R_FINDITEMMENU_ADD_BOOKMARK );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdAddToBookmark,
+ index,
+ 0,
+ tempBuf );
+ index = EFindItemCmdAddToBookmark;
+ }
+ }
+ else
+ {
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdGoToRstp,
+ ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
+ 0,
+ tempBuf );
+ index = EFindItemCmdGoToRstp;
+
+ if ( !iIsContextMenu )
+ {
+ iCoeEnv->ReadResourceL(
+ tempBuf, R_FINDITEMMENU_ADD_TO_GALLERY );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdAddToGallery,
+ index,
+ 0,
+ tempBuf );
+ index = EFindItemCmdAddToGallery;
+ }
+ }
+ break;
+ }
+ case CItemFinder::EEmailAddress:
+ {
+ // Checks VoIP profile count and local variation
+ if ( iIsContextMenu && iFindItemVoIPExtension->VoIPProfilesExistL() )
+ {
+ //Call
+ iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdCall,
+ EFindItemContextMenuPlaceHolder,
+ 0,
+ tempBuf );
+ index = EFindItemCmdCall; // Replaces the call ui menu when email
+ // field is selected.
+ }
+
+ // Write
+ if( iEmailOverSmsFeatureSupported || iMMSFeatureSupported ||
+ iEmailUiFeatureSupported ) // Sometimes submenu can be empty.
+ {
iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_MESSAGE_SUB );
AddMenuItemL(
*iMenuPane,
EFindItemSubMenuSend,
- index,
- 0,//R_FINDITEM_NUMBER_MESSAGE_SUBMENU,
+ ( ( iIsContextMenu &&
+ !iFindItemVoIPExtension->VoIPProfilesExistL() ) ?
+ EFindItemContextMenuPlaceHolder : index ),
+ 0,//R_FINDITEM_EMAIL_MESSAGE_SUBMENU,
tempBuf );
index = EFindItemSubMenuSend;
-
- break;
}
- case CItemFinder::EUrlAddress:
- {
- iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_GOTO_URL );
-
- // check if not rstp
- if ( iAutomaticFind->CurrentItemExt().iItemDescriptor->FindF( KRtspUrlAddress ) == KErrNotFound )
- {
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdGoToUrl,
- ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
- 0,
- tempBuf);
- index = EFindItemCmdGoToUrl;
-
- if ( !iIsContextMenu )
- {
- // Add bookmark
- iCoeEnv->ReadResourceL(
- tempBuf, R_FINDITEMMENU_ADD_BOOKMARK );
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdAddToBookmark,
- index,
- 0,
- tempBuf );
- index = EFindItemCmdAddToBookmark;
- }
- }
- else
- {
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdGoToRstp,
- ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
- 0,
- tempBuf );
- index = EFindItemCmdGoToRstp;
-
- if ( !iIsContextMenu )
- {
- iCoeEnv->ReadResourceL(
- tempBuf, R_FINDITEMMENU_ADD_TO_GALLERY );
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdAddToGallery,
- index,
- 0,
- tempBuf );
- index = EFindItemCmdAddToGallery;
- }
- }
- break;
- }
- case CItemFinder::EEmailAddress:
- {
- // Checks VoIP profile count and local variation
- if ( iIsContextMenu && iFindItemVoIPExtension->VoIPProfilesExistL() )
- {
- //Call
- iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_CALL );
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdCall,
- EFindItemContextMenuPlaceHolder,
- 0,
- tempBuf );
- index = EFindItemCmdCall; // Replaces the call ui menu when email
- // field is selected.
- }
-
- // Write
- if( iEmailOverSmsFeatureSupported || iMMSFeatureSupported ||
- iEmailUiFeatureSupported ) // Sometimes submenu can be empty.
- {
- iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_MESSAGE_SUB );
- AddMenuItemL(
- *iMenuPane,
- EFindItemSubMenuSend,
- ( ( iIsContextMenu &&
- !iFindItemVoIPExtension->VoIPProfilesExistL() ) ?
- EFindItemContextMenuPlaceHolder : index ),
- 0,//R_FINDITEM_EMAIL_MESSAGE_SUBMENU,
- tempBuf );
- index = EFindItemSubMenuSend;
- }
- break;
- }
- case CItemFinder::EUriScheme:
- {
- // Use
- iCoeEnv->ReadResourceL( tempBuf, R_QTN_OPTIONS_SCHEME_USE );
- AddMenuItemL(
- *iMenuPane,
- EFindItemCmdUse,
- ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
- 0,
- tempBuf );
- index = EFindItemCmdUse;
- break;
- }
- default:
- {
- // Something else, probably nothing selected or new type which we
- // don't support.
- break;
- }
+ break;
+ }
+ case CItemFinder::EUriScheme:
+ {
+ // Use
+ iCoeEnv->ReadResourceL( tempBuf, R_QTN_OPTIONS_SCHEME_USE );
+ AddMenuItemL(
+ *iMenuPane,
+ EFindItemCmdUse,
+ ( iIsContextMenu ? EFindItemContextMenuPlaceHolder : index ),
+ 0,
+ tempBuf );
+ index = EFindItemCmdUse;
+ break;
+ }
+ default:
+ {
+ // Something else, probably nothing selected or new type which we
+ // don't support.
+ break;
}
}
-
// Call
- if ( HasSelection() && (
+ if (
( itemType == CItemFinder::ENoneSelected ) &&
(
(
@@ -752,7 +733,7 @@
||
( itemType == CItemFinder::EEmailAddress &&
iFindItemVoIPExtension->VoIPProfilesExistL() &&
- !iIsContextMenu ) )
+ !iIsContextMenu )
)
{
#ifdef RD_VOIP_REL_2_2
@@ -842,10 +823,10 @@
CleanupStack::PopAndDestroy( );
}
- if( HasSelection() && ( (!iAutomaticFind || len != 0) &&
+ if( (!iAutomaticFind || len != 0) &&
highlight &&
( itemType != CItemFinder::ENoneSelected ||
- iSenderHighlighted ) ) )
+ iSenderHighlighted ) )
{
iCoeEnv->ReadResourceL( tempBuf, R_FINDITEMMENU_COPY );
AddMenuItemL(
@@ -860,14 +841,14 @@
}
// Add to contacts
- if ( HasSelection() && ( ( itemType != CItemFinder::EUriScheme ) &&
+ if ( ( itemType != CItemFinder::EUriScheme ) &&
!( itemType == CItemFinder::EUrlAddress &&
iIsContextMenu ) &&
( ( ( ( !iIsSenderKnown &&
iSenderDescriptor->Length() ) ||
iCallbackNumber ) &&
itemType == CItemFinder::ENoneSelected ) ||
- itemType != CItemFinder::ENoneSelected ) ) )
+ itemType != CItemFinder::ENoneSelected ) )
{
AddMenuItemL(
*iMenuPane,
@@ -1699,16 +1680,11 @@
{
HBufC* item = 0;
TInt len = 0;
- if ( iAutomaticFind && iAutomaticFind->CurrentSelection().Length() > 0 )
+ if ( iAutomaticFind && iAutomaticFind->CurrentItemExt().iItemType != CItemFinder::ENoneSelected )
{
item = iAutomaticFind->CurrentSelection().AllocLC();
len = item->Length();
}
- else if ( iAutomaticFind && iAutomaticFind->CurrentItemExt().iItemDescriptor )
- {
- item = iAutomaticFind->CurrentItemExt().iItemDescriptor->AllocLC();
- len = item->Length();
- }
else if( iSenderHighlighted )
{
item = iSenderDisplayText->AllocLC();
--- a/lafagnosticuifoundation/uigraphicsutils/gulsrc/GULUTIL.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/lafagnosticuifoundation/uigraphicsutils/gulsrc/GULUTIL.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -866,6 +866,12 @@
return TRgb::Color16M(aRgb.Color16M());
case EColor4K:
return TRgb::Color4K(aRgb.Color4K());
+ case EColor16MU:
+ return TRgb::Color16MU(aRgb.Color16MU());
+ case EColor16MA:
+ return TRgb::Color16MA(aRgb.Color16MA());
+ case EColor16MAP:
+ return TRgb::Color16MAP(aRgb.Color16MAP());
default:
return aRgb;
}
@@ -893,6 +899,12 @@
return aRgb.Color16M();
case EColor4K:
return aRgb.Color4K();
+ case EColor16MU:
+ return aRgb.Color16MU();
+ case EColor16MA:
+ return aRgb.Color16MA();
+ case EColor16MAP:
+ return aRgb.Color16MAP();
default:
return aRgb.Color16M();
}
--- a/psln/Src/PslnMainViewContainer.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/psln/Src/PslnMainViewContainer.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -239,13 +239,20 @@
CleanupStack::PushL( item );
reallocItem = NULL; // do not use anymore.
TPtr ptr = item->Des();
+
+ TInt wallpaperOffset = 0;
+ if ( aIndex == KPslnScreenSaverId
+ && !iPslnUi->ViewSupport().IsSet( CPslnUi::EPslnWallpaperView ) )
+ {
+ wallpaperOffset = 1;
+ }
if ( aOffset != KErrNotFound )
{
- iItemArray->InsertL( aIndex + aOffset, ptr );
+ iItemArray->InsertL( aIndex + aOffset - wallpaperOffset, ptr );
}
else
{
- iItemArray->InsertL( aIndex, ptr );
+ iItemArray->InsertL( aIndex - wallpaperOffset, ptr );
}
CleanupStack::PopAndDestroy( item );
PSLN_TRACE_DEBUG("CPslnMainViewContainer::MakeItemL END");
Binary file psln/cenrep/keys_themes.xls has changed
Binary file psln/conf/themes.confml has changed
--- a/uifw/AknGlobalUI/AknCapServer/inc/AknCapServerEntry.h Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AknGlobalUI/AknCapServer/inc/AknCapServerEntry.h Wed Apr 14 16:14:00 2010 +0300
@@ -188,6 +188,11 @@
{
return iShortTimeGlobalNoteDisplaying;
}
+
+ CAknCapAppServerAlternateFs* AlternateFS()
+ {
+ return iAlternateFS;
+ }
private:
void PublishHiddenList();
--- a/uifw/AknGlobalUI/AknCapServer/src/AknCapServerEntry.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AknGlobalUI/AknCapServer/src/AknCapServerEntry.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -33,7 +33,7 @@
#include "avkoninternalpskeys.h" // KAknIdleAppWindowGroupId
#include <AknCapServerDefs.h>
#include <activeidle2domainpskeys.h>
-#include <EIKPRIV.rsg>
+#include <eikpriv.rsg>
#include <coedef.h>
#include <eiksvdef.h>
#include <aknconsts.h>
--- a/uifw/AknGlobalUI/AknCapServer/src/AknEikSgcs.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AknGlobalUI/AknCapServer/src/AknEikSgcs.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -26,6 +26,7 @@
#include <aknappui.h>
#include <e32property.h>
#include <UikonInternalPSKeys.h>
+#include <akncapserveralternatefsplugin.h>
#include <avkondomainpskeys.h>
#include <AknSettingCache.h>
#include "AknCapServerEntry.h"
@@ -47,7 +48,7 @@
#include <akntransitionutils.h>
#endif
-#include <LayoutPack.cdl.h>
+#include <layoutpack.cdl.h>
#include <CdlRefs.h>
const TInt KCdlEComInterfaceId = 0x101f8243;
const TInt KMatrixMenuAppId = 0x101F4CD2;
@@ -1374,6 +1375,13 @@
void CEikSgcServer::SetIdleState(TBool aFlag)
{
+ //idle is changed to nonidle if taskswitcher is shown
+ if (aFlag && iAknCapAppServerAppUi->AlternateFS()
+ && iAknCapAppServerAppUi->AlternateFS()->IsVisible())
+ {
+ aFlag = EFalse;
+ }
+
// Update the P&S key only if the value has been changed.
if ((iNotificationsInIdleAllowed && !aFlag)
|| (!iNotificationsInIdleAllowed && aFlag))
--- a/uifw/AknGlobalUI/AknCapServer/src/aknKeyFilter.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AknGlobalUI/AknCapServer/src/aknKeyFilter.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -22,10 +22,12 @@
#include <e32property.h>
#include <UikonInternalPSKeys.h> // KUikLayoutState, KUikFlipStatus
#include <AvkonInternalCRKeys.h> // KAknQwertyInputModeActive
-#include <EIKPRIV.rsg>
+#include <eikpriv.rsg>
#include <AknDef.h>
#include <AknSgcc.h>
#include <aknenv.h>
+#include <AknFepInternalPSKeys.h>
+#include <AknFepGlobalEnums.h>
#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
#include <uikon/eikenvinterface.h>
#endif
@@ -166,6 +168,18 @@
// Set default value for the KAknKeyBoardLayout Pub&Sub key.
RProperty::Set(KCRUidAvkon, KAknKeyBoardLayout, keyboardLayout);
+
+ #ifdef RD_SCALABLE_UI_V2
+ // Define KAknFepVirtualKeyboardType Pub&sub key.
+ RProperty::Define( KPSUidAknFep, KAknFepVirtualKeyboardType, RProperty::EInt );
+ // Set default value for KAknFepVirtualKeyboardType Pub&sub key.
+ RProperty::Set( KPSUidAknFep, KAknFepVirtualKeyboardType, EPtiKeyboard12Key );
+
+ // Define KAknFepTouchInputActive Pub&sub key
+ RProperty::Define( KPSUidAknFep, KAknFepTouchInputActive, RProperty::EInt );
+ // Set default value for KAknFepTouchInputActive Pub&sub key.
+ RProperty::Set( KPSUidAknFep, KAknFepTouchInputActive, 0 );
+ #endif // RD_SCALABLE_UI_V2
#else
RProperty::Define( KCRUidAvkon, KAknKeyBoardLayout, RProperty::EInt );
@@ -174,6 +188,18 @@
iAvkonRepository->Get(KAknKeyBoardLayout, keyboardLayout);
RProperty::Set(KCRUidAvkon, KAknKeyBoardLayout, keyboardLayout);
+ #ifdef RD_SCALABLE_UI_V2
+ // Define KAknFepVirtualKeyboardType Pub&sub key.
+ RProperty::Define( KPSUidAknFep, KAknFepVirtualKeyboardType, RProperty::EInt );
+ // Set default value for KAknFepVirtualKeyboardType Pub&sub key.
+ RProperty::Set( KPSUidAknFep, KAknFepVirtualKeyboardType, EPtiKeyboard12Key );
+
+ // Define KAknFepTouchInputActive Pub&sub key
+ RProperty::Define( KPSUidAknFep, KAknFepTouchInputActive, RProperty::EInt );
+ // Set default value for KAknFepTouchInputActive Pub&sub key.
+ RProperty::Set( KPSUidAknFep, KAknFepTouchInputActive, 0 );
+
+ #endif // RD_SCALABLE_UI_V2
#endif // !__WINS__
TBool isQwertyOn = EFalse;
switch(keyboardLayout)
@@ -408,6 +434,17 @@
iHomeTimer = NULL;
if ( !iAppUi->HandleShortAppsKeyPressL() )
{
+ RWsSession& ws = iEikonEnv->WsSession();
+ TApaTaskList apList( ws );
+ TApaTask task = apList.FindApp( iHomeViewId.iAppUid );
+ if( task.Exists() && task.WgId() == ws.GetFocusWindowGroup() )
+ {
+ GfxTransEffect::BeginFullScreen(
+ AknTransEffect::EApplicationExit,
+ TRect(),
+ AknTransEffect::EParameterType,
+ AknTransEffect::GfxTransParam( iHomeViewId.iAppUid ) );
+ }
ToggleShellL();
}
--- a/uifw/AknGlobalUI/OldStyleNotif/Src/AknSystemListPopup.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AknGlobalUI/OldStyleNotif/Src/AknSystemListPopup.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -32,7 +32,7 @@
#include <AknMediatorFacade.h>
#include <aknSDData.h>
-#include <secondarydisplay/AknSecondaryDisplayDefs.h>
+#include <SecondaryDisplay/AknSecondaryDisplayDefs.h>
#include "AknAppsKeyCleanup.inl"
--- a/uifw/AknGlobalUI/OldStyleNotif/Src/AknSystemPopup.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AknGlobalUI/OldStyleNotif/Src/AknSystemPopup.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -772,7 +772,7 @@
}
if (Rect().Contains(aPointerEvent.iPosition) && (aPointerEvent.iType == TPointerEvent::EButton1Up)
- && iIsAlarm)
+ && iIsAlarm && iCaptured)
{
if (!iIsAlarmWakeup)
{
--- a/uifw/AvKon/aknhlist/src/akntreelistphysicshandler.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/aknhlist/src/akntreelistphysicshandler.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1155,7 +1155,7 @@
//
TBool CAknTreeListPhysicsHandler::PointerOnEmptyArea( TPoint aPosition )
{
- if ( aPosition.iY <= WorldHeight() )
+ if ( aPosition.iY - iViewRect.iTl.iY <= WorldHeight() )
{
return EFalse;
}
--- a/uifw/AvKon/aknhlist/src/akntreelistview.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/aknhlist/src/akntreelistview.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -861,6 +861,8 @@
if ( HighlightEnabled() )
{
EnableHighlight( EFalse );
+ // Redraw item
+ SetFocusedItem( FocusedItem(), FocusIndex(), ETrue );
}
break;
}
@@ -897,6 +899,7 @@
{
if( aPointerEvent.iType == TPointerEvent::EButton1Down )
{
+ iFlags.Clear( EFlagIgnoreButtonUpEvent );
iPreviouslyFocusedItem = FocusedItem();
}
@@ -1288,7 +1291,8 @@
iIsPressedDownState = EFalse;
iIsDragged = EFalse;
- iItemActionMenu = CAknItemActionMenu::RegisterCollectionL( *this );
+ iItemActionMenu = CAknItemActionMenu::RegisterCollectionL( *this, this );
+
if ( iItemActionMenu )
{
iLongTapDetector = CAknLongTapDetector::NewL( this );
@@ -2874,7 +2878,7 @@
AknListUtils::DrawSeparator( gc, offsetRect, textColor, skin );
}
- TBool focused = ( IsFocused() && FocusedItem() &&
+ TBool focused = ( FocusedItem() &&
iItems[ii].Item() == FocusedItem() );
if ( SingleClickEnabled() && !HighlightEnabled() )
Binary file uifw/AvKon/aknphysics/cenrep/20021192.txt has changed
Binary file uifw/AvKon/aknphysics/conf/s60/aknphysics.confml has changed
--- a/uifw/AvKon/aknphysics/src/aknphysics.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/aknphysics/src/aknphysics.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -939,7 +939,6 @@
// Create Physics timer to step physics emulation
iPhysics = CAknHighResPeriodic::NewL(
CActive::EPriorityStandard, nullThreadOpen ? &iNullThread : NULL );
- iPhysics->SetMinCallBackPeriod( FrameDelay() * 1000 );
iEngine = CAknPhysicsEngine::NewL( this );
iParamProvider = CAknPhysicsParameterProvider::NewL();
@@ -947,6 +946,7 @@
iConeObserver = CAknPhysicsConeObserver::NewL( this, iRestrictor );
iConeObserver->SetViewWindowControl( aViewControl );
iFeedback = MTouchFeedback::Instance();
+ iPhysics->SetMinCallBackPeriod( FrameDelay() * 1000 );
}
--- a/uifw/AvKon/aknphysics/src/aknphysicsconeobserver.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/aknphysics/src/aknphysicsconeobserver.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -289,7 +289,7 @@
{
if ( child->Rect().Contains( aEvent->iPosition ) )
{
- target = ETargetOtherControl;
+ target = ETargetChildControl;
}
}
}
@@ -346,8 +346,9 @@
if ( ongoingAction == CAknPhysics::EAknPhysicsActionFlicking )
{
// Event not targeted to view - stop flick
- if ( ( eventTarget == ETargetOtherControl ||
- eventTarget == ETargetChildControl ) && aTargetControl )
+ if (aTargetControl && (eventTarget == ETargetOtherControl
+ || (eventTarget == ETargetChildControl && aTargetControl
+ != iWindowControl)))
{
stopPhysics = ETrue;
aTargetControl->IgnoreEventsUntilNextPointerUp();
--- a/uifw/AvKon/aknphysics/src/aknphysicsengine.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/aknphysics/src/aknphysicsengine.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -267,7 +267,7 @@
dSpaceCollide ( iSpace, this , &CAknPhysicsEngine::CallbackFunc );
// Take a simulation step
- dWorldQuickStep( iWorldId, REAL( 0.1 ) );
+ dWorldQuickStep( iWorldId, REAL( 0.06 ) );
// Remove all joints in the contact
dJointGroupEmpty( iContactGroup );
--- a/uifw/AvKon/src/AknAdaptiveSearchGrid.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknAdaptiveSearchGrid.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -425,6 +425,7 @@
button->SetBackground(this);
button->SetTextColorIds( KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG65 );
button->ActivateL();
+ button->MakeVisible( EFalse );
return button;
}
else
@@ -986,8 +987,16 @@
iPrevButton->MakeVisible( ETrue );
iPageIndicator->MakeVisible( ETrue );
}
- iCloseButton->MakeVisible( ETrue );
- iDeleteButton->MakeVisible( ETrue );
+ if(iGridChars)
+ {
+ iCloseButton->MakeVisible( ETrue );
+ iDeleteButton->MakeVisible( ETrue );
+ }
+ else
+ {
+ iCloseButton->MakeVisible( EFalse );
+ iDeleteButton->MakeVisible( EFalse );
+ }
}
// -----------------------------------------------------------------------------
--- a/uifw/AvKon/src/AknAppUi.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknAppUi.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2002 - 2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -556,6 +556,8 @@
EXPORT_C CAknAppUiBase::~CAknAppUiBase()
{
+ AknItemActionMenuRegister::RemoveConstructingMenuBarOwner( this );
+
if (iAppUiBaseExtension)
{
MTouchFeedback::DestroyInstance();
@@ -661,6 +663,7 @@
delete defaultOrientationCr;
defaultOrientationCr = NULL;
}
+
iAknFlags.Assign(EOrientationSpecified, orientationFlags&EAppOrientationSpecifiedFlag);
iAknFlags.Assign(EOrientationLandscape, orientationFlags&EAppOrientationLandscapeFlag);
iAknFlags.Assign(EOrientationAutomatic, orientationFlags&EAppOrientationAutomaticFlag);
@@ -672,11 +675,21 @@
{
iAknFlags.Set( ETouchCompatible );
}
+ else if ( aAppUiFlags & EAknSingleClickCompatibleFlag )
+ {
+ // If application is single click compatible then it needs to
+ // be also touch compatible, so set that flag also if application
+ // has forgotten.
+ iAknFlags.Set( ETouchCompatible );
+ }
else
{
+ // Set the touch compatible flag for all applications that
+ // reside on the ROM, since all platform applications should
+ // be touch compatible.
RProcess process;
TFileName fileName = process.FileName();
- _LIT(KRomDrive,"z:");
+ _LIT( KRomDrive, "z:" );
if ( fileName.FindF( KRomDrive ) == 0 )
{
--- a/uifw/AvKon/src/AknIndicatorContainer.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknIndicatorContainer.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -835,9 +835,7 @@
EXPORT_C TInt CAknIndicatorContainer::CountComponentControls() const
{
- TInt n = CountShownIndicator();
- //__ASSERT_DEBUG ( n == iIndicatorsShown, User::Panic(_L( "indicatorshow"),n ) );
- return n;
+ return iIndicators->Count();
}
TInt CAknIndicatorContainer::CountShownIndicator() const
@@ -857,32 +855,15 @@
EXPORT_C CCoeControl* CAknIndicatorContainer::ComponentControl(TInt aIndex) const
{
- TInt count = iIndicators->Count();
-
- TInt ii = 0;
- for (ii = 0; (ii < count) && (aIndex >= 0); ii++)
- {
- if ( iIndicators->At(ii)->IndicatorState() && (iIndicators->At(ii)->Priority() != KIndicatorNotShown))
- {
- aIndex--;
- }
- }
-
- if ( ii > 0 )
- {
- return iIndicators->At(--ii);
- }
- else
- {
- return NULL;
- }
+ return iIndicators->At(aIndex);
}
EXPORT_C void CAknIndicatorContainer::Draw( const TRect& aRect ) const
{
if ( iExtension->iStatusPane &&
- iExtension->iStatusPane->IsTransparent() )
+ iExtension->iStatusPane->IsTransparent() &&
+ ( iIndicatorContext != EQueryEditorIndicators ) )
{
CWindowGc& gc = SystemGc();
TRgb rgb(TRgb::Color16MA(0));
--- a/uifw/AvKon/src/AknInfoPopupNote.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknInfoPopupNote.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -449,7 +449,8 @@
}
else if( aType == KEikMessageFadeAllWindows )
{
- if ( IsVisible() && iHideWhenAppFaded )
+ // Infopopu will be canceled when be faded no matter visible or not.
+ if ( iHideWhenAppFaded )
{
iController.HideInfoPopupNote();
}
--- a/uifw/AvKon/src/AknNumEdwin.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknNumEdwin.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -127,6 +127,7 @@
else
{
SetTextL( &KEmptyText );
+ ReportEventL( MCoeControlObserver::EEventStateChanged );
}
}
--- a/uifw/AvKon/src/AknPopupField.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknPopupField.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -445,6 +445,7 @@
if ((iSelectionList->Position() != rect.iTl) || (iSelectionList->Size() != rect.Size()))
{
iSelectionList->SetRect(rect);
+ SetScrollBarSelectionL();
}
AknsUtils::RegisterControlPosition(this);
AknsUtils::RegisterControlPosition(iSelectionList);
@@ -655,15 +656,30 @@
case MEikListBoxObserver::EEventItemSingleClicked:
{
CListBoxView* view = iSelectionList->View();
-
- if ( view->CurrentItemIndex() != iExtension->iOldItemIndex )
+ TInt selection = view->CurrentItemIndex();
+ if ( selection != iExtension->iOldItemIndex )
{
view->DeselectItem( iExtension->iOldItemIndex );
- iExtension->iOldItemIndex = view->CurrentItemIndex();
- view->SelectItemL( iExtension->iOldItemIndex );
+ iExtension->iOldItemIndex = selection;
+ view->SelectItemL( selection );
+
+ TInt decoratedIndex;
+ TBool decorated = iDecorator.DecoratedIndex( decoratedIndex );
+ if ( decorated && ( selection == decoratedIndex ) )
+ {
+ TBool accepted = iValue->CreateEditorL();
+ if ( !accepted )
+ {
+ break;
+ }
+ }
+ else
+ {
+ iValue->SetCurrentValueIndex( selection );
+ }
}
}
-
+ // fall through
case MEikListBoxObserver::EEventItemDoubleClicked:
case MEikListBoxObserver::EEventEnterKeyPressed:
{
@@ -1205,23 +1221,27 @@
if (aAccept)
{
- // get current selection
- const TInt selection=iSelectionList->CurrentItemIndex();
- TInt decoratedIndex;
- TBool decorated = iDecorator.DecoratedIndex(decoratedIndex);
- if (decorated && (selection == decoratedIndex))
+ if ( iSelectionList->IsHighlightEnabled() )
{
- TBool accepted = iValue->CreateEditorL();
- if (!accepted)
+ // get current selection
+ const TInt selection=iSelectionList->CurrentItemIndex();
+ TInt decoratedIndex;
+ TBool decorated = iDecorator.DecoratedIndex(decoratedIndex);
+ if (decorated && (selection == decoratedIndex))
{
- // dialog was cancelled, so popup list must remain
- finished = EFalse;
+ TBool accepted = iValue->CreateEditorL();
+ if (!accepted)
+ {
+ // dialog was cancelled, so popup list must remain
+ finished = EFalse;
+ }
+ }
+ else
+ {
+ iValue->SetCurrentValueIndex(selection);
}
}
- else
- iValue->SetCurrentValueIndex(selection);
}
-
if (finished)
{
delete iCba;
--- a/uifw/AvKon/src/AknSettingPage.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/AknSettingPage.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -47,6 +47,8 @@
#include <AknPopupFader.h>
#include <gfxtranseffect/gfxtranseffect.h>
#include <akntransitionutils.h>
+#include <touchfeedback.h>
+#include <akntranseffect.h>
#include "aknitemactionmenuregister.h"
#include "aknqueryeditorindicator.h"
@@ -1355,6 +1357,24 @@
*/
EXPORT_C void CAknSettingPage::AttemptExitL(TBool aAccept)
{
+ if ( AknLayoutUtils::PenEnabled() )
+ {
+ MTouchFeedback* feedback = MTouchFeedback::Instance();
+ if ( feedback )
+ {
+ TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
+ if ( CAknTransitionUtils::TransitionsEnabled(
+ AknTransEffect::EComponentTransitionsOff ) )
+ {
+ fbLogicalType = ETouchFeedbackDecreasingPopUp;
+ }
+ feedback->InstantFeedback(
+ this,
+ fbLogicalType,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
+ }
+ }
if ( OkToExitL( aAccept ) )
{
DismissL( aAccept );
@@ -1654,6 +1674,25 @@
// Ensure we have a menu bar by this point
__ASSERT_DEBUG( iMenuBar, Panic( EAknPanicSettingPageNoMenuBar ) ) ;
+ if ( AknLayoutUtils::PenEnabled() )
+ {
+ MTouchFeedback* feedback = MTouchFeedback::Instance();
+ if ( feedback )
+ {
+ TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
+ if ( CAknTransitionUtils::TransitionsEnabled(
+ AknTransEffect::EComponentTransitionsOff ) )
+ {
+ fbLogicalType = ETouchFeedbackIncreasingPopUp;
+ }
+ feedback->InstantFeedback(
+ this,
+ fbLogicalType,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
+ }
+ }
+
DynamicInitL();
ActivateL();
--- a/uifw/AvKon/src/Aknslider.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/Aknslider.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -63,7 +63,7 @@
// Default draw color
const TInt KAknSliderDefaultDrawColor = 120;
const TInt KScrollRepeatTimeout = 250000; // 0.25 seconds
-const TInt KStableFeedbackIntesity = 50;
+const TInt KStableFeedbackIntesity = 100;
const TInt KFeedbackTimeout = 100000;
const TInt KNoFeedbackTimeout = 0;
const TInt KStepThreshold = 15;
--- a/uifw/AvKon/src/aknPopup.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknPopup.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -30,6 +30,7 @@
#include <skinlayout.cdl.h>
#include <aknglobalpopupprioritycontroller.h>
#include <touchfeedback.h>
+#include <akntranseffect.h>
#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
#include <gfxtranseffect/gfxtranseffect.h>
@@ -239,7 +240,7 @@
// last member ste before the actiave scheduler is started.
// Reset action menu register
- AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( NULL );
+ AknItemActionMenuRegister::RemoveConstructingMenuBarOwner( this );
_AKNTRACE_FUNC_EXIT;
}
@@ -384,6 +385,25 @@
{
_AKNTRACE_FUNC_ENTER;
__ASSERT_DEBUG(iListBox,Panic(EAknPanicListboxUndefined));
+ if ( AknLayoutUtils::PenEnabled() )
+ {
+ MTouchFeedback* feedback = MTouchFeedback::Instance();
+ if ( feedback )
+ {
+ TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
+ if ( CAknTransitionUtils::TransitionsEnabled(
+ AknTransEffect::EComponentTransitionsOff ) )
+ {
+ fbLogicalType = ETouchFeedbackIncreasingPopUp;
+ }
+ feedback->InstantFeedback(
+ this,
+ fbLogicalType,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
+ }
+ }
+
iPopoutCba->SetBoundingRect(TRect(iAvkonAppUi->ApplicationRect().Size()));
// Disable item specific menu just before the popup is about to be shown.
@@ -798,6 +818,24 @@
EXPORT_C void CAknPopupList::AttemptExitL(TBool aAccept)
{
_AKNTRACE_FUNC_ENTER;
+ if ( AknLayoutUtils::PenEnabled() )
+ {
+ MTouchFeedback* feedback = MTouchFeedback::Instance();
+ if ( feedback )
+ {
+ TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
+ if ( CAknTransitionUtils::TransitionsEnabled(
+ AknTransEffect::EComponentTransitionsOff ) )
+ {
+ fbLogicalType = ETouchFeedbackDecreasingPopUp;
+ }
+ feedback->InstantFeedback(
+ this,
+ fbLogicalType,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
+ }
+ }
//EFTG-7HWDP6.
if( FindBox()
&& !( FindBox()->Editor().AknEdwinFlags() & EAknEditorFlagTouchInputModeOpened )
--- a/uifw/AvKon/src/aknbattery.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknbattery.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -581,6 +581,23 @@
return;
}
+ CEikStatusPaneBase* sp = CEikStatusPaneBase::Current();
+ if( sp )
+ {
+ TInt statusPaneCurrentLayoutResourceId = sp->CurrentLayoutResId();
+ if(statusPaneCurrentLayoutResourceId == R_AVKON_STATUS_PANE_LAYOUT_POWER_OFF_RECHARGE
+ || statusPaneCurrentLayoutResourceId == R_AVKON_STATUS_PANE_LAYOUT_POWER_OFF_RECHARGE_MIRRORED)
+ {
+ MTouchFeedback* feedback = MTouchFeedback::Instance();
+ if ( feedback )
+ {
+ feedback->RemoveFeedbackForControl( this );
+ }
+
+ AknsUtils::DeregisterControlPosition( this );
+ return;
+ }
+ }
// Get the rect of battery pane.
TRect rect( Rect() );
@@ -611,7 +628,7 @@
// here if the down event happened inside this control,
// but the up event inside digital clock or indicator
// pane area.
- CEikStatusPaneBase* sp = CEikStatusPaneBase::Current();
+
TBool pointerUpInIndicatorArea( EFalse );
TBool pointerUpInClockArea( EFalse );
--- a/uifw/AvKon/src/akncolourselectiongrid.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/akncolourselectiongrid.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1723,17 +1723,32 @@
// close the color grid:
// if the NGA effects are off, use “pop-up”.
// If NGA effects are on, use “pop-up closed”.
- MTouchFeedback* feedback = MTouchFeedback::Instance();
-
+ if( AknLayoutUtils::PenEnabled() )
+ {
+ MTouchFeedback* feedback = MTouchFeedback::Instance();
+ if ( feedback )
+ {
+ if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
+ {
+ feedback->InstantFeedback( this,
+ ETouchFeedbackIncreasingPopUp,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
+ }
+ else
+ {
+ feedback->InstantFeedback( this,
+ ETouchFeedbackPopUp,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
+ }
+ }
+ }
switch (aButton)
{
case EAknSoftkeyInsert:
case EEikBidOk:
{
- if ( feedback )
- {
- feedback->InstantFeedback( ETouchFeedbackBasic );
- }
TInt index = iGrid->CurrentItemIndex();
if (iNoneBox)
@@ -1749,20 +1764,7 @@
}
default:
{
- if ( feedback )
- {
- if( AknLayoutUtils::PenEnabled() )
- {
- if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
- {
- feedback->InstantFeedback( ETouchFeedbackDecreasingPopUp );
- }
- else
- {
- feedback->InstantFeedback( ETouchFeedbackPopUp );
- }
- }
- }
+
break;
}
}
@@ -1827,18 +1829,24 @@
// open the color grid:
// if the NGA effects are off, use “pop-up”.
// If NGA effects are on, use “increasing long touch”.
+ if( AknLayoutUtils::PenEnabled() )
+ {
MTouchFeedback* feedback = MTouchFeedback::Instance();
if ( feedback )
- {
- if( AknLayoutUtils::PenEnabled() )
{
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- feedback->InstantFeedback( ETouchFeedbackIncreasingPopUp );
+ feedback->InstantFeedback( this,
+ ETouchFeedbackIncreasingPopUp,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
}
else
{
- feedback->InstantFeedback( ETouchFeedbackPopUp );
+ feedback->InstantFeedback( this,
+ ETouchFeedbackPopUp,
+ ETouchFeedbackVibra,
+ TPointerEvent() );
}
}
}
--- a/uifw/AvKon/src/akndialog.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/akndialog.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -87,7 +87,7 @@
*/
EXPORT_C CAknDialog::~CAknDialog()
{
- AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( NULL );
+ AknItemActionMenuRegister::RemoveConstructingMenuBarOwner( this );
if ( iCoeEnv->AppUi() && iAttributes )
if (iAttributes->iAknDialogFlags&EAknDialogFlagDefaultSounds) // return original sound stack
--- a/uifw/AvKon/src/akndiscreetpopupcontrol.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/akndiscreetpopupcontrol.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -755,50 +755,53 @@
const TPointerEvent& aPointerEvent )
{
TBool eventInRect( Rect().Contains( aPointerEvent.iPosition ) );
-
- // Pointer down - set pressed-down state (popup completely visible while
- // pressed-down)
- if ( aPointerEvent.iType == TPointerEvent::EButton1Down
- && eventInRect
- && iInternalFlags.IsClear( EDismissed ) )
+
+ // The discreet popup which is global won't handle pointer event if there is notifier be popping up.
+ if( !iInternalFlags.IsSet( EGlobal ) || iCoeEnv->RootWin().OrdinalPriority() < ECoeWinPriorityAlwaysAtFront )
{
- _AKNTRACE( "CAknDiscreetPopupControl::HandlePointerEventL, TPointerEvent::EButton1Down" );
- SetPressedDownState( ETrue );
- ImmediateFeedback( ETouchFeedbackSensitive );
- }
-
- // Pointer drag - reset pressed-down state if pointer out of popup area
- else if ( aPointerEvent.iType == TPointerEvent::EDrag )
- {
- _AKNTRACE( "CAknDiscreetPopupControl::HandlePointerEventL, TPointerEvent::EDrag" );
- iInternalFlags.Set( EDragged );
- if ( !eventInRect && iInternalFlags.IsSet( EPressedDown ) )
+ // Pointer down - set pressed-down state (popup completely visible while
+ // pressed-down)
+ if ( aPointerEvent.iType == TPointerEvent::EButton1Down
+ && eventInRect
+ && iInternalFlags.IsClear( EDismissed ) )
+ {
+ _AKNTRACE( "CAknDiscreetPopupControl::HandlePointerEventL, TPointerEvent::EButton1Down" );
+ SetPressedDownState( ETrue );
+ ImmediateFeedback( ETouchFeedbackSensitive );
+ }
+
+ // Pointer drag - reset pressed-down state if pointer out of popup area
+ else if ( aPointerEvent.iType == TPointerEvent::EDrag )
{
- iInternalFlags.Clear( EPressedDown );
+ _AKNTRACE( "CAknDiscreetPopupControl::HandlePointerEventL, TPointerEvent::EDrag" );
+ iInternalFlags.Set( EDragged );
+ if ( !eventInRect && iInternalFlags.IsSet( EPressedDown ) )
+ {
+ iInternalFlags.Clear( EPressedDown );
+ }
+ else if ( eventInRect && !iInternalFlags.IsSet( EPressedDown ) )
+ {
+ iInternalFlags.Set( EPressedDown );
+ }
}
- else if ( eventInRect && !iInternalFlags.IsSet( EPressedDown ) )
- {
- iInternalFlags.Set( EPressedDown );
+
+ // Pointer up - reset pressed-down state
+ else if ( aPointerEvent.iType == TPointerEvent::EButton1Up )
+ {
+ _AKNTRACE( "CAknDiscreetPopupControl::HandlePointerEventL, TPointerEvent::EButton1Up" );
+ if ( eventInRect )
+ {
+ NotifyObserverL();
+ }
+ // Start fading away
+ if ( iInternalFlags.IsClear( EDismissed ) )
+ {
+ iInternalFlags.Set( EDismissed );
+ RequestExitL();
+ }
+ SetPressedDownState( EFalse );
}
}
- // Pointer up - reset pressed-down state
- else if ( aPointerEvent.iType == TPointerEvent::EButton1Up )
- {
- _AKNTRACE( "CAknDiscreetPopupControl::HandlePointerEventL, TPointerEvent::EButton1Up" );
- if ( eventInRect )
- {
- NotifyObserverL();
- }
-
- // Start fading away
- if ( iInternalFlags.IsClear( EDismissed ) )
- {
- iInternalFlags.Set( EDismissed );
- RequestExitL();
- }
-
- SetPressedDownState( EFalse );
- }
}
--- a/uifw/AvKon/src/aknenv.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknenv.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -41,7 +41,7 @@
#include <CdlEngine.h>
#include <CdlRefs.h>
#include <AknLayout2DataDef.h>
-#include <LayoutPack.cdl.h>
+#include <layoutpack.cdl.h>
#include <CdlExplorer.h>
#include <aknlayout.cdl.h>
#include <aknapaclayout.cdl.h>
--- a/uifw/AvKon/src/akngridview.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/akngridview.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1927,22 +1927,30 @@
{
blankRect.SetRect(ItemPos(i), ItemSize());
blankRect.Intersection(iViewRect);
-
- MAknsSkinInstance *skin = AknsUtils::SkinInstance();
- CFormattedCellListBoxItemDrawer *id = (CFormattedCellListBoxItemDrawer*)ItemDrawer();
- if (id->FormattedCellData()->Control())
- {
- MAknsControlContext *cc = AknsDrawUtils::ControlContext( id->FormattedCellData()->Control() );
- if ( !cc )
- {
- cc = id->FormattedCellData()->SkinBackgroundContext();
- }
- AknsDrawUtils::Background( skin, cc, id->FormattedCellData()->Control(), *iGc, blankRect );
- }
- else
- {
- iGc->Clear(blankRect);
- }
+ if ( blankRect.Width() > 0 && blankRect.Height() > 0 )
+ {
+ MAknsSkinInstance *skin = AknsUtils::SkinInstance();
+ CFormattedCellListBoxItemDrawer *id =
+ (CFormattedCellListBoxItemDrawer*)ItemDrawer();
+ if ( id->FormattedCellData()->Control())
+ {
+ MAknsControlContext *cc =
+ AknsDrawUtils::ControlContext( id->FormattedCellData()->Control() );
+ if ( !cc )
+ {
+ cc = id->FormattedCellData()->SkinBackgroundContext();
+ }
+ AknsDrawUtils::Background( skin,
+ cc,
+ id->FormattedCellData()->Control(),
+ *iGc,
+ blankRect );
+ }
+ else
+ {
+ iGc->Clear(blankRect);
+ }
+ }
}
_AKNTRACE_FUNC_EXIT;
}
--- a/uifw/AvKon/src/aknindicator.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknindicator.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -279,9 +279,11 @@
if ( iState == EAknIndicatorStateOn )
{
iAnimState = iCountOfAnimStates - 1;
+ this->MakeVisible(ETrue);
}
else if ( iState == EAknIndicatorStateOff )
{
+ this->MakeVisible(EFalse);
DeleteBitmaps();
}
SizeChanged();
--- a/uifw/AvKon/src/aknindicatorpopupcontent.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknindicatorpopupcontent.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2007,2008 Nokia Corporation and/or its subsidiary(-ies).
+* 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 "Eclipse Public License v1.0"
@@ -1100,12 +1100,12 @@
{
iClock = CAknDigitalClock::NewL( this );
TAknTextLineLayout clockLayout(
- AknLayoutScalable_Avkon::uniindi_top_pane_t1( 1 ).LayoutLine() );
+ AknLayoutScalable_Avkon::uniindi_top_pane_t1( 0 ).LayoutLine() );
// Ensure that the left and right values of the clock text layout
// are zero, currently the whole top area is set as the parent
// for this layout, so it's narrowed by reducting the
- // signal pane area.
+ // signal and battery pane areas.
clockLayout.il = 0;
clockLayout.ir = 0;
iClock->SetTimeLayout( clockLayout );
--- a/uifw/AvKon/src/aknlists.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknlists.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -3371,12 +3371,12 @@
formattedCellData->SetStretchableTextSubCellL(
1,
AknLayoutScalable_Avkon::list_double_graphic_pane_t1( 0 ),
- AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t1( 0 ) );
+ AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t1( 3 ) );
formattedCellData->SetStretchableTextSubCellL(
2,
AknLayoutScalable_Avkon::list_double_graphic_pane_t2( 0 ),
- AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t2( 0 ) );
+ AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t2( 3 ) );
formattedCellData->SetStretchableGraphicSubCellL(
3,
@@ -3389,9 +3389,11 @@
AknLayoutScalable_Avkon::list_double_graphic_pane_vc_g2( 1 ) );
// New icon below g1.
- formattedCellData->SetGraphicSubCellL(
+ formattedCellData->SetStretchableGraphicSubCellL(
5,
- AknLayoutScalable_Avkon::list_double_graphic_pane_g4( 0 ) );
+ AknLayoutScalable_Avkon::list_double_graphic_pane_g4( 0 ) ,
+ AknLayoutScalable_Avkon::list_double_graphic_pane_vc_g4( 0 ) );
+
// On default new cell is always drawn but this cell should NOT be drawn!
formattedCellData->SetNotAlwaysDrawnSubCellL( 5, ETrue );
@@ -3400,12 +3402,12 @@
formattedCellData->SetStretchableConditionalSubCellL(
4,
AknLayoutScalable_Avkon::list_double_graphic_pane_t1( 2 ),
- AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t2( 2 ), 1, 2 );
+ AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t2( 4 ), 1, 2 );
formattedCellData->SetStretchableConditionalSubCellL(
3,
AknLayoutScalable_Avkon::list_double_graphic_pane_t1( 1 ),
- AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t2( 1 ), 1, 2 );
+ AknLayoutScalable_Avkon::list_double_graphic_pane_vc_t2( 5 ), 1, 2 );
}
else
{
--- a/uifw/AvKon/src/aknnotewrappers.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknnotewrappers.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -134,14 +134,17 @@
{
if ( AknLayoutUtils::PenEnabled() )
{
- if (aPointerEvent.iType == TPointerEvent::EButton1Up)
+ if ( aPointerEvent.iType == TPointerEvent::EButton1Down )
{
MTouchFeedback* feedback = MTouchFeedback::Instance();
if ( feedback )
{
feedback->InstantFeedback( ETouchFeedbackPopUp );
}
- StaticDeleteL(this);
+ }
+ if (aPointerEvent.iType == TPointerEvent::EButton1Up)
+ {
+ StaticDeleteL(this);
}
}
}
--- a/uifw/AvKon/src/aknutils.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknutils.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -6616,6 +6616,7 @@
color.SetAlpha( !err ? colorFromSkin.Red() : KDefaultSeparatorAlpha );
aGc.SetPenColor( color );
+ aGc.SetDrawMode( CGraphicsContext::EDrawModePEN );
TRect lineRect( aRect );
TInt gap = AknLayoutScalable_Avkon::listscroll_gen_pane( 0 ).LayoutLine().it;
--- a/uifw/AvKon/src/aknview.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/aknview.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -82,7 +82,6 @@
public:
TBool iToolbarVisible;
TBool iToolbarFocusing;
- TBool iViewActivated;
private: // data
CAknToolbar* iToolbar;
CAknToolbar* iFixedToolbar;
@@ -428,6 +427,8 @@
delete iCba;
delete iExtension;
+
+ AknItemActionMenuRegister::RemoveConstructingMenuBarOwner( this );
}
// -----------------------------------------------------------------------------
@@ -459,10 +460,7 @@
Extension()->CreateToolbarL( iViewInfo.iToolbar );
- if ( iViewInfo.iMenu )
- {
- AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( this );
- }
+ AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( this );
}
// -----------------------------------------------------------------------------
@@ -580,31 +578,14 @@
//
EXPORT_C void CAknView::AknViewActivatedL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId, const TDesC8& aCustomMessage )
{
+ AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( this );
ConstructMenuAndCbaL( ETrue );
- if ( !iViewInfo.iMenu )
- {
- AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( this );
- }
Extension()->PrepareToolbar();
DoActivateL( aPrevViewId, aCustomMessageId, aCustomMessage );
- if ( !Extension()->iViewActivated || !iViewInfo.iMenu )
- {
- // Reset menu bar owner when view first activated
- AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( NULL );
- Extension()->iViewActivated = ETrue;
- }
-
-#ifdef RD_SCALABLE_UI_V2
- if ( iAvkonAppUi->TouchPane() )
- {
- iAvkonAppUi->TouchPane()->RefreshL();
- }
-#endif // RD_SCALABLE_UI_V2
-
ProcessForegroundEventL( ETrue );
}
@@ -621,6 +602,8 @@
DoDeactivate();
+ AknItemActionMenuRegister::RemoveConstructingMenuBarOwner( this );
+
if ( iCba )
{
iCba->MakeVisible( EFalse );
--- a/uifw/AvKon/src/eikfrlb.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/eikfrlb.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -512,7 +512,8 @@
#ifdef RD_LIST_STRETCH
EXPORT_C void CEikFormattedCellListBox::EnableStretching( const TBool aEnabled )
{
- if ( ItemDrawer()->FormattedCellData()->StretchingEnabled() != aEnabled )
+ if ( ItemDrawer() &&
+ ( ItemDrawer()->FormattedCellData()->StretchingEnabled() != aEnabled ) )
{
ItemDrawer()->FormattedCellData()->EnableStretching( aEnabled );
SizeChanged();
--- a/uifw/AvKon/src/eikfrlbd.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/src/eikfrlbd.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -3064,8 +3064,11 @@
TInt aFirstIndex,
TInt aSecondIndex )
{
- iExtension->iFirstWordWrappedSubcellIndex = (TInt16)aFirstIndex;
- iExtension->iSecondWordWrappedSubcellIndex = (TInt16)aSecondIndex;
+ if ( iExtension )
+ {
+ iExtension->iFirstWordWrappedSubcellIndex = (TInt16)aFirstIndex;
+ iExtension->iSecondWordWrappedSubcellIndex = (TInt16)aSecondIndex;
+ }
}
EXPORT_C void CFormattedCellListBoxData::EnableMarqueeL(TBool aEnable)
@@ -4128,6 +4131,7 @@
aGc.UseFont(CEikonEnv::Static()->NormalFont());
aGc.DrawText(TPtrC(),aRect,0); // use draw text so that don't need to change pen color/style
aGc.DiscardFont(); // Release the font cache
+ _AKNTRACE_FUNC_EXIT;
return;
}
const CFont* font=SubCellFont(0);
@@ -4377,6 +4381,11 @@
CGraphicsContext::TTextAlign align=sc->iAlign;
if (!sc->iGraphics)
{
+ if ( !iExtension )
+ {
+ _AKNTRACE_FUNC_EXIT;
+ return;
+ }
const CFont* rowAndCellFont=RowAndSubCellFont(iExtension->iCurrentlyDrawnItemIndex,subcell);
const CFont* cellFont=sc->iBaseFont;
const CFont* tempFont=(cellFont) ? cellFont : font;
--- a/uifw/AvKon/srcdata/avkon.rss Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/srcdata/avkon.rss Wed Apr 14 16:14:00 2010 +0300
@@ -8033,7 +8033,7 @@
// common
MENU_ITEM { command=EPenInputCmdHwrTraining; txt=qtn_tin_option_menu_training;},
MENU_ITEM { command=EAknCmdInputLanguage; txt=text_pup_option_input_language;},
- MENU_ITEM { command=EFepInputCmdHelp; txt=qtn_tin_option_menu_help; }
+ MENU_ITEM { command=EFepInputCmdHelp; txt=qtn_options_help; }
};
}
@@ -9845,7 +9845,7 @@
MENU_ITEM { command=EPenInputCmdVITUT; flags=EEikMenuItemDimmed; txt=qtn_input_switcher_itu_t; },
MENU_ITEM { command=EPeninputCmdFSQ; flags=EEikMenuItemDimmed; txt=qtn_input_switcher_fs_qwerty; },
MENU_ITEM { command=EPeninputCmdHwr; flags=EEikMenuItemDimmed; txt=qtn_input_switcher_hwr; },
- MENU_ITEM { command=EFepInputCmdHelp; txt=qtn_tin_option_menu_help; },
+ MENU_ITEM { command=EFepInputCmdHelp; txt=qtn_options_help; },
MENU_ITEM { command=EAknCmdEditModeEnglish; flags=EEikMenuItemDimmed; txt=qtn_activate_english_mode; }
};
}
@@ -9905,7 +9905,7 @@
MENU_ITEM { command=EAknCmdInputLanguage; flags=EEikMenuItemDimmed; txt=text_pup_option_input_language; },
MENU_ITEM { command=EAknCmdInputMethod; flags=EEikMenuItemDimmed; txt=text_pup_option_input_language; cascade=r_avkon_input_mode_sub_menu; },
MENU_ITEM { command=EChinFepCmdModeCangJieOption; flags=EEikMenuItemDimmed; txt=qtn_chi_pup_option_cangjie_mode; },
- MENU_ITEM { command=EFepInputCmdHelp; txt=qtn_tin_option_menu_help; },
+ MENU_ITEM { command=EFepInputCmdHelp; txt=qtn_options_help; },
MENU_ITEM { command=EAknCmdEditModeKorean; flags=EEikMenuItemDimmed; txt=qtn_activate_korean_mode; },
MENU_ITEM { command=EAknCmdEditModeEnglish; flags=EEikMenuItemDimmed; txt=qtn_activate_english_mode; }
};
--- a/uifw/AvKon/srcdata/smiley.rss Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/srcdata/smiley.rss Wed Apr 14 16:14:00 2010 +0300
@@ -201,7 +201,7 @@
{
code = EAknSmileyIconNerd;
smileyIconId = EMbmSmileyQgn_indi_smiley_nerd;
- strings = "8) 8-)";
+ strings = "8-)";
},
SMILEY_ICON_ITEM
{
--- a/uifw/AvKon/tsrc/bc/S60_SDKMCL/bctestsingleclick/group/bctestsingleclick.mmp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/tsrc/bc/S60_SDKMCL/bctestsingleclick/group/bctestsingleclick.mmp Wed Apr 14 16:14:00 2010 +0300
@@ -48,6 +48,7 @@
USERINCLUDE ./../inc
USERINCLUDE ../../../bctestutil/inc
+USERINCLUDE ../../../../../../../inc
APP_LAYER_SYSTEMINCLUDE
--- a/uifw/AvKon/tsrc/bc/S60_SDKMCL/bctestsingleclick/inc/bctestsingleclickcase.h Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/tsrc/bc/S60_SDKMCL/bctestsingleclick/inc/bctestsingleclickcase.h Wed Apr 14 16:14:00 2010 +0300
@@ -28,7 +28,8 @@
/**
* test case for various classes
*/
-class CBCTESTSingleClickCase: public CBCTestCase, public MAknCollection
+class CBCTESTSingleClickCase: public CBCTestCase, public MAknCollection,
+ public MObjectProvider
{
public: // constructor and destructor
@@ -76,6 +77,12 @@
virtual TInt CollectionExtension(
TUint aExtensionId, TAny*& a0, TAny* a1 );
+
+ /**
+ * Pure virtual from MObjectProvider.
+ */
+ virtual TTypeUid::Ptr MopSupplyObject( TTypeUid aId);
+
protected: // new functions
/**
--- a/uifw/AvKon/tsrc/bc/S60_SDKMCL/bctestsingleclick/src/bctestsingleclickcase.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/AvKon/tsrc/bc/S60_SDKMCL/bctestsingleclick/src/bctestsingleclickcase.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -18,20 +18,14 @@
#include <w32std.h>
#include <coecntrl.h>
#include <aknitemactionmenu.h>
-#ifdef RD_TOUCH2
#include <aknViewAppUi.h>
#include <aknview.h>
-#else
-#include <aknappui.h>
-#endif // RD_TOUCH2
#include <eikmenup.h>
#include <eikmenub.h>
#include <avkon.hrh>
#include <eikfrlb.h>
#include <bctestsingleclick.rsg>
-#ifdef RD_TOUCH2
-#include <aknitemactionmenuregister.h>
-#endif // RD_TOUCH2
+#include "aknitemactionmenuregister.h"
#include "bctestsingleclickcase.h"
#include "bctestsingleclickcontainer.h"
@@ -174,30 +168,28 @@
_LIT( KIsSingleClickCompatible,
"CAknAppUiBase::IsSingleClickCompatible()" );
_LIT( KRegisterCollectionL, "CAknItemActionMenu::RegisterCollectionL" );
+ _LIT( KRegisterCollection2L,
+ "CAknItemActionMenu::RegisterCollectionL( MAknCollection, MObjectProvider" );
_LIT( KInitMenuL, "CAknItemActionMenu::InitMenuL" );
_LIT( KShowMenuL, "CAknItemActionMenu::ShowMenuL" );
_LIT( KRemoveCollection, "CAknItemActionMenu::RemoveCollection" );
_LIT( KItemSpecificCommandsEnabled,
"CEikMenuBar::ItemSpecificCommandsEnabled()" );
_LIT( KSetItemSpecific, "CEikMenuPane::SetItemSpecific()" );
-#ifdef RD_TOUCH2
_LIT( KSetOverridingMenuBarOwnerL,
"AknItemActionMenuRegister::SetOverridingMenuBarOwnerL" );
_LIT( KCollectionChanged, "CAknItemActionMenu::CollectionChanged" );
-#endif // RD_TOUCH2
//AknItemActionMenuRegister::SetConstructingMenuBarOwnerL is invoked in
//CAknView::BaseConstructL().
AssertTrueL( ETrue, KSetConstructingMenuBarOwnerL );
-#ifdef RD_TOUCH2
CCoeControl* dummy = new ( ELeave ) CCoeControl;
CleanupStack::PushL( dummy );
AknItemActionMenuRegister::SetOverridingMenuBarOwnerL( dummy );
AknItemActionMenuRegister::SetOverridingMenuBarOwnerL( NULL );
AssertTrueL( ETrue, KSetOverridingMenuBarOwnerL );
CleanupStack::PopAndDestroy();
-#endif // RD_TOUCH2
TBool isSingleClick = iAvkonAppUiBase->IsSingleClickCompatible();
AssertTrueL( isSingleClick, KIsSingleClickCompatible );
@@ -205,6 +197,7 @@
CAknItemActionMenu* aknItemActionMenu =
CAknItemActionMenu::RegisterCollectionL( *this );
AssertTrueL( ETrue, KRegisterCollectionL );
+
if ( aknItemActionMenu )
{
aknItemActionMenu->InitMenuL();
@@ -214,23 +207,27 @@
aknItemActionMenu->ShowMenuL( p );
AssertTrueL( ETrue, KShowMenuL );
-#ifdef RD_TOUCH2
aknItemActionMenu->CollectionChanged( *this );
AssertTrueL( ETrue, KCollectionChanged );
-#endif // RD_TOUCH2
aknItemActionMenu->RemoveCollection( *this );
AssertTrueL( ETrue, KRemoveCollection );
}
+
+ CAknItemActionMenu* aknItemActionMenu2 =
+ CAknItemActionMenu::RegisterCollectionL( *this, this );
+ AssertTrueL( ETrue, KRegisterCollection2L );
+
+ if ( aknItemActionMenu2 )
+ {
+ aknItemActionMenu2->RemoveCollection( *this );
+ }
+
-#ifdef RD_TOUCH2
TVwsViewId uid;
iAvkonViewAppUi->GetActiveViewId( uid );
CEikMenuBar* menuBar = iAvkonViewAppUi->View( uid.iViewUid )->MenuBar();
-#else
- CEikMenuBar* menuBar = CEikonEnv::Static()->AppUiFactory()->MenuBar();
-#endif // RD_TOUCH2
CEikMenuPane* menuPane = NULL;
if ( menuBar )
{
@@ -254,6 +251,7 @@
void CBCTESTSingleClickCase::TestListBoxL()
{
_LIT( KDisableSingleClick, "CEikListBox::DisableSingleClick() invoked" );
+ _LIT( KIsHighlightEnabled, "CEikListBox::IsHighlightEnabled() invoked" );
CEikFormattedCellListBox* listbox = new CEikFormattedCellListBox();
CleanupStack::PushL( listbox );
@@ -271,8 +269,19 @@
listbox->DisableSingleClick( ETrue );
AssertTrueL( ETrue, KDisableSingleClick );
-
+
+ TBool enabled = listbox->IsHighlightEnabled();
+ AssertTrueL( enabled, KIsHighlightEnabled );
+
CleanupStack::PopAndDestroy( text );
CleanupStack::PopAndDestroy( listbox );
}
+// ---------------------------------------------------------------------------
+// CBCTESTSingleClickCase::MopSupplyObject
+// ---------------------------------------------------------------------------
+//
+TTypeUid::Ptr CBCTESTSingleClickCase::MopSupplyObject(TTypeUid /*aId*/)
+ {
+ return TTypeUid::Null();
+ }
Binary file uifw/AvKon/tsrc/bc/bctestdom3.2/bctestdomaiwakn/sis/bctestdomaiwakn.pkg has changed
Binary file uifw/AvKon/tsrc/bc/bctestdom5.0/bctestdomaiwakn/sis/bctestdomaiwakn.pkg has changed
--- a/uifw/EikStd/EABI/EIKCOCTLU.DEF Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/EABI/EIKCOCTLU.DEF Wed Apr 14 16:14:00 2010 +0300
@@ -2009,4 +2009,7 @@
_ZN18CEikStatusPaneBase17EnableTransparentEi @ 2008 NONAME
_ZNK18CEikStatusPaneBase13IsTransparentEv @ 2009 NONAME
_ZN9CEikEdwin23EnableKineticScrollingLEP11CAknPhysics @ 2010 NONAME
+ _ZN18CAknItemActionMenu19RegisterCollectionLER14MAknCollectionP15MObjectProvider @ 2011 NONAME
+ _ZN25AknItemActionMenuRegister30RemoveConstructingMenuBarOwnerEP15MObjectProvider @ 2012 NONAME
+ _ZN11CEikListBox18IsHighlightEnabledEv @ 2013 NONAME
--- a/uifw/EikStd/bwins/EIKCOCTLU.DEF Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/bwins/EIKCOCTLU.DEF Wed Apr 14 16:14:00 2010 +0300
@@ -1620,3 +1620,6 @@
?EnableTransparent@CEikStatusPaneBase@@QAEXH@Z @ 1619 NONAME ; void CEikStatusPaneBase::EnableTransparent(int)
?IsTransparent@CEikStatusPaneBase@@QBEHXZ @ 1620 NONAME ; int CEikStatusPaneBase::IsTransparent(void) const
?EnableKineticScrollingL@CEikEdwin@@QAEXPAVCAknPhysics@@@Z @ 1621 NONAME ; void CEikEdwin::EnableKineticScrollingL(class CAknPhysics *)
+ ?RemoveConstructingMenuBarOwner@AknItemActionMenuRegister@@SAXPAVMObjectProvider@@@Z @ 1622 NONAME ; void AknItemActionMenuRegister::RemoveConstructingMenuBarOwner(class MObjectProvider *)
+ ?RegisterCollectionL@CAknItemActionMenu@@SAPAV1@AAVMAknCollection@@PAVMObjectProvider@@@Z @ 1623 NONAME ; class CAknItemActionMenu * CAknItemActionMenu::RegisterCollectionL(class MAknCollection &, class MObjectProvider *)
+ ?IsHighlightEnabled@CEikListBox@@QAEHXZ @ 1624 NONAME ; int CEikListBox::IsHighlightEnabled(void)
--- a/uifw/EikStd/coctlinc/aknitemactionmenuregister.h Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlinc/aknitemactionmenuregister.h Wed Apr 14 16:14:00 2010 +0300
@@ -68,14 +68,26 @@
MObjectProvider* aMenuBarOwner, TUint aFlags = 0 );
/**
+ * Sets the current constructing menubar owner to NULL if it matches to
+ * aMenuBarOwner. Otherwise constructing menubar owner is not modified.
+ *
+ * @internal
+ * @param aMenuBarOwner Pointer to constructing menubar owner.
+ */
+ IMPORT_C static void RemoveConstructingMenuBarOwner(
+ MObjectProvider* aMenuBarOwner );
+
+ /**
* Registers a collection.
*
* @internal
* @param aCollection Collection to be registered.
+ * @param aMenuBarOwner Owner of the menubar that collection will be
+ * registered with.
* @return Item action menu the collection was registered to.
*/
static CAknItemActionMenu* RegisterCollectionL(
- MAknCollection& aCollection );
+ MAknCollection& aCollection, MObjectProvider* aMenuBarOwner );
/**
* Registers item action menu to aMenuBar.
@@ -163,10 +175,12 @@
* Registers collection.
*
* @param aCollection State to be registered.
+ * @param aMenuBarOwner Owner of the menubar that collection will be
+ * registered with.
* @return Item action menu the collection was registered to.
*/
CAknItemActionMenu* DoRegisterCollectionL(
- MAknCollection& aCollection );
+ MAknCollection& aCollection, MObjectProvider* aMenuBarOwner );
/**
* Registers item action menu to aMenuBar.
@@ -286,7 +300,7 @@
* @internal
* @return Pointer to menu bar.
*/
- CEikMenuBar* FindCurrentMenuBarL();
+ CEikMenuBar* FindCurrentMenuBar();
/**
* Adds register entry.
@@ -319,6 +333,16 @@
*/
void DoSetConstructingMenuBarOwnerL( MObjectProvider* aMenuBarOwner );
+ /**
+ * Sets the current constructing menubar owner to NULL if it matches to
+ * aMenuBarOwner. Otherwise constructing menubar owner is not modified.
+ *
+ * @internal
+ * @param aMenuBarOwner Pointer to constructing menubar owner.
+ */
+ void DoRemoveConstructingMenuBarOwner(
+ MObjectProvider* aMenuBarOwner );
+
private: // data
/**
--- a/uifw/EikStd/coctlsrc/AknButton.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/AknButton.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -264,7 +264,7 @@
// Sets bitmaps to resource provider (if one exists)
void SetProviderPressedBmpsL();
-
+
private: // Data
CAknButton& iButton;
@@ -284,6 +284,9 @@
CFbsBitmap* iPressedDownBmp;
CFbsBitmap* iPressedDownBmpMask;
CAknResourceProvider* iResourceProvider;
+
+ //Previous touch down or drag position, valid only with pressed state.
+ TPoint iPrePointerPos;
};
// ============================ MEMBER FUNCTIONS ===============================
@@ -1976,6 +1979,10 @@
{
// show press changes
iButtonPressed = ETrue;
+ if ( iExtension )
+ {
+ iExtension->iPrePointerPos.SetXY( -1, -1 );
+ }
if ( NeedsRedrawWhenPressed() )
{
DrawNow();
@@ -2085,7 +2092,11 @@
}
CAknButtonState* state = State();
- if ( !aVisible && state && state->HasHelp() )
+ if ( !aVisible && iButtonPressed )
+ {
+ ResetState();
+ }
+ else if ( !aVisible && state && state->HasHelp() )
{
HideHelp();
}
@@ -2134,6 +2145,11 @@
//
EXPORT_C void CAknButton::SizeChanged()
{
+ //Reset state if observer modified the rectangel.
+ if ( iButtonPressed && iExtension && !Rect().Contains( iExtension->iPrePointerPos ) )
+ {
+ ResetState();
+ }
// If default icon size from LAF is used re-request that, otherwise trust
// that size will be updated by the utilising application.
if ( iExtension->iFlags.IsSet( CAknButtonExtension::EUseDefaultIconSize ) )
@@ -2185,6 +2201,10 @@
}
return;
}
+ if ( iExtension )
+ {
+ iExtension->iPrePointerPos = aPointerEvent.iPosition;
+ }
TBool buttonEvent( TouchArea().Contains( aPointerEvent.iPosition ) );
CAknButtonState* state = State();
if ( !state )
@@ -2330,6 +2350,10 @@
case TPointerEvent::EButton1Up:
{
+ if ( iExtension )
+ {
+ iExtension->iPrePointerPos.SetXY( -1, -1 );
+ }
iNumberOfDragEvents = 0;
HideHelp();
@@ -2459,6 +2483,12 @@
{
if ( iExtension ) iExtension->HandleFeedbackAreaChange();
CAknControl::PositionChanged();
+
+ //Reset state if observer moved button position.
+ if ( iButtonPressed && iExtension && !Rect().Contains( iExtension->iPrePointerPos ) )
+ {
+ ResetState();
+ }
}
// -----------------------------------------------------------------------------
--- a/uifw/EikStd/coctlsrc/AknToolbar.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/AknToolbar.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1136,7 +1136,10 @@
MTouchFeedback* feedback = MTouchFeedback::Instance();
if ( feedback )
{
- feedback->InstantFeedback( ETouchFeedbackBasicButton );
+ feedback->InstantFeedback( button,
+ ETouchFeedbackBasicButton,
+ ETouchFeedbackVibra,
+ aPointerEvent );
}
}
@@ -2044,8 +2047,11 @@
CWindowGc& gc = SystemGc();
MAknsSkinInstance* skin = AknsUtils::SkinInstance();
- // Draw background
- if ( iFlags & KAknToolbarFixed &&
+
+ //
+ // Draw background
+ //
+ if ( iFlags & KAknToolbarFixed && !( iFlags & KAknToolbarNoBackground ) &&
iBgRect.Height() > 0 &&
iBgRect.Width() > 0 )
{
@@ -3114,14 +3120,6 @@
aCellPaneRect = RectFromLayout( aGridPaneRect,
AknLayoutScalable_Avkon::cell_sctrl_middle_pane( 0, 0, 0 ) );
-
- //
- // fixing bug: ELJG-7XX8RE
- // (Two extra black lines are displayed around toolbar area at first)
- // extend the toolbar size by hard code
- //
- aToolbarRect.iTl.iY -= 1;
- aToolbarRect.iBr.iY += 1;
}
}
else
--- a/uifw/EikStd/coctlsrc/EIKEDWIN.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKEDWIN.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -520,6 +520,9 @@
TBool paragraphContainingStartPositionOfInlineTextHasChangedFormat=EFalse;
TInt numberOfCharactersSuccessfullyDeleted=0;
TInt numberOfCharactersSuccessfullyInserted=0;
+
+ iEdwin.ConvertSmileyForDeleteL( selection );
+
// handle extended highlights
/*
@@ -633,23 +636,9 @@
void CEikEdwinFepSupport::SetCursorSelectionForFepL(const TCursorSelection& aCursorSelection)
{
- TInt cursorPos( aCursorSelection.iCursorPos );
- TInt anchorPos( aCursorSelection.iAnchorPos );
- if ( iEdwin.IsSmileyEnabled() )
- {
- CSmileyManager* smiley( iEdwin.iEdwinExtension->iSmiley );
- TInt oldPos = ( cursorPos == anchorPos ) ? iEdwin.CursorPos() : anchorPos;
- smiley->HandleSetCursor( oldPos, cursorPos );
- if ( aCursorSelection.iCursorPos == aCursorSelection.iAnchorPos )
- {
- anchorPos = cursorPos;
- }
- else
- {
- smiley->HandleSetCursor( cursorPos, anchorPos );
- }
- }
- iEdwin.SetSelectionL( cursorPos, anchorPos );
+ TCursorSelection select( aCursorSelection.iCursorPos, aCursorSelection.iAnchorPos );
+ iEdwin.HandleSelectionForSmiley( select );
+ iEdwin.iTextView->SetSelectionL( select );
iEdwin.ReportEdwinEventL(MEikEdwinObserver::EEventNavigation);
}
@@ -2501,6 +2490,17 @@
return;
}
+ // If text selection is not visible, don't allow user to select any text
+ // or scroll during selection ( if kinetic scrolling enabled ).
+ if ( kineticScrollingEnabled && iEdwinFepSupport )
+ {
+ CAknEdwinState* edwinState( EditorState() );
+ if ( edwinState && !( edwinState->Flags() & EAknEditorFlagSelectionVisible ) )
+ {
+ return;
+ }
+ }
+
const TCursorSelection selection( iTextView->Selection() );
const TPoint pointerPos( aPointerEvent.iPosition );
@@ -2676,7 +2676,7 @@
iEdwinInternalFlags&=(~ELeftDownInViewRect);
// We can't open cut-copy-paste menu if dragging started
- if ( IsReadOnly() && IsSelectionVisible() && !( kineticScrollingEnabled
+ if ( IsReadOnly() && IsSelectionVisible() && !( iEdwinUserFlags&ENoAutoSelection ) && !( kineticScrollingEnabled
&& iEdwinExtension->iPhysicsHandler->DraggingStarted() ) )
{
iEdwinFepSupport->iFeedback->InstantFeedback(
--- a/uifw/EikStd/coctlsrc/EIKLBV.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKLBV.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -815,6 +815,11 @@
}
else // items will get redrawn anyway
{
+ // As the iVerticalOffset is changed in CalcNewTopItemIndexSoItemIsVisible(),
+ // and ScrollToMakeItemVisible() will call the CalcNewTopItemIndexSoItemIsVisible() again,
+ // which will use iVerticalOffset to do some judgementes,
+ // we must set iVerticalOffset back to original value.
+ iVerticalOffset = oldVerticalOffset;
ScrollToMakeItemVisible(iCurrentItemIndex);
}
UpdateSelectionL(aSelectionMode);
@@ -1187,6 +1192,12 @@
newTopItemIndex = aItemIndex;
else if (aItemIndex > iBottomItemIndex)
newTopItemIndex = aItemIndex - numItemsThatFitInRect + 1;
+ else if ( ( iVerticalOffset < 0 )
+ && ( aItemIndex == iBottomItemIndex )
+ && ( 0 == iViewRect.Height() % iItemHeight ) )
+ {
+ newTopItemIndex += 1;
+ }
if (!ITEM_EXISTS_ONCE(newTopItemIndex) && newTopItemIndex != 0 )
{ // if application fails to call HandleItemAdditionL(), we might go here.
--- a/uifw/EikStd/coctlsrc/EIKLBX.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKLBX.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -852,7 +852,7 @@
iItemsInSingleLine = 1;
iFeedback = MTouchFeedback::Instance();
- iItemActionMenu = CAknItemActionMenu::RegisterCollectionL( *this );
+ iItemActionMenu = CAknItemActionMenu::RegisterCollectionL( *this, &iListBox );
if ( !( iListBox.iListBoxFlags & CEikListBox::EDisableItemSpecificMenu )
&& iItemActionMenu )
@@ -1079,9 +1079,12 @@
{
if ( iSingleClickEnabled && iLongTapDetector && iItemActionMenu )
{
- // Send event on down only if item specific items were found
- if ( aPointerEvent.iType != TPointerEvent::EButton1Down
- || iItemActionMenu->InitMenuL() )
+ // Send event on down only if item specific items were found and current
+ // item is marked if there are marked items
+ if ( !( MarkedItems() &&
+ !iListBox.View()->ItemIsSelected( iListBox.CurrentItemIndex() ) )
+ && ( aPointerEvent.iType != TPointerEvent::EButton1Down
+ || iItemActionMenu->InitMenuL() ) )
{
iLongTapDetector->PointerEventL ( aPointerEvent );
}
@@ -1721,8 +1724,9 @@
{
_AKNTRACE_FUNC_ENTER;
TBool enabled( EFalse );
- if ( ( iListBox.iItemDrawer->Flags() & CListItemDrawer::EPressedDownState ) &&
- !iFlickStopped )
+
+ if ( ( iListBox.iItemDrawer->Flags() & CListItemDrawer::EPressedDownState
+ || iSingleClickEnabled ) && !iFlickStopped )
{
enabled = ETrue;
}
@@ -4686,9 +4690,10 @@
}
iListBoxExt->iFeedbackType = ETouchFeedbackList;
-
- if ( itemIndex != iView->CurrentItemIndex() ||
- iListBoxFlags & ES60StyleMultiselection )
+
+ if ( iListBoxFlags & ES60StyleMultiselection ||
+ ( !iListBoxExt->iSingleClickEnabled &&
+ itemIndex != iView->CurrentItemIndex() ) )
{
iListBoxExt->iFeedbackType = ETouchFeedbackSensitiveList;
}
@@ -4832,14 +4837,13 @@
UpdateHighlightL( itemIndex );
CCoeEnv::Static()->WsSession().Finish();
}
- if ( itemIndex != oldCurrentItemIndex )
- {
- iListBoxExt->ImmediateFeedback(
- iListBoxExt->iFeedbackType,
- TTouchFeedbackType( ETouchFeedbackVibra |
- ETouchFeedbackAudio ),
- aPointerEvent );
- }
+
+ iListBoxExt->ImmediateFeedback(
+ iListBoxExt->iFeedbackType,
+ TTouchFeedbackType( ETouchFeedbackVibra |
+ ETouchFeedbackAudio ),
+ aPointerEvent );
+
if ( !wasFlicking )
{
ReportListBoxEventL(
@@ -6217,12 +6221,37 @@
//
EXPORT_C void CEikListBox::DisableItemSpecificMenu()
{
+ _AKNTRACE_FUNC_ENTER;
if ( iListBoxExt )
{
iListBoxExt->DisableItemSpecificMenu();
}
- }
-
+ _AKNTRACE_FUNC_EXIT;
+ }
+
+// ---------------------------------------------------------------------------
+// CEikListBox::IsHighlightEnabled
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CEikListBox::IsHighlightEnabled()
+ {
+ _AKNTRACE_FUNC_ENTER;
+ TBool enabled( EFalse );
+ if ( !( iItemDrawer->Flags() & CListItemDrawer::EDisableHighlight ) )
+ {
+ if ( iListBoxExt->iSingleClickEnabled )
+ {
+ enabled = !( iItemDrawer->Flags()
+ & CListItemDrawer::ESingleClickDisabledHighlight );
+ }
+ else
+ {
+ enabled = ETrue;
+ }
+ }
+ _AKNTRACE_FUNC_EXIT;
+ return enabled;
+ }
void CEikListBox::ScrollView( const TInt aOffset, TBool aDrawNow )
{
--- a/uifw/EikStd/coctlsrc/EIKMENUB.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKMENUB.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -153,10 +153,11 @@
AknItemActionMenuRegister::RegisterMenuBarL( *iBar );
}
// hide item-specific commands if highlight not visible
- if ( iBar->GetMenuType() != CEikMenuBar::EMenuContext
- && iItemActionMenu
- && !iItemActionMenu->CollectionHighlightVisible() )
- {
+ if ( iBar->GetMenuType() != CEikMenuBar::EMenuContext
+ && ( ( iItemActionMenu
+ && !iItemActionMenu->CollectionHighlightVisible() )
+ || !iItemActionMenu ) )
+ {
iBar->iMenuPane->SetItemCommandsDimmed();
}
}
@@ -1004,7 +1005,7 @@
TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- fbLogicalType = ETouchFeedbackIncreasingPopUp;
+ fbLogicalType = ETouchFeedbackOptionsMenuOpened;
}
feedback->InstantFeedback(
this,
@@ -1194,7 +1195,7 @@
TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- fbLogicalType = ETouchFeedbackDecreasingPopUp;
+ fbLogicalType = ETouchFeedbackOptionsMenuClosed;
}
feedback->InstantFeedback(
this,
--- a/uifw/EikStd/coctlsrc/EIKMENUP.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKMENUP.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -2263,7 +2263,7 @@
TTouchLogicalFeedback fbLogicalType = ETouchFeedbackPopUp;
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- fbLogicalType = ETouchFeedbackIncreasingPopUp;
+ fbLogicalType = ETouchFeedbackSubMenuOpened;
}
iExtension->ImmediateFeedback( fbLogicalType,
ETouchFeedbackVibra );
@@ -3839,7 +3839,7 @@
{
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- iExtension->ImmediateFeedback( ETouchFeedbackDecreasingPopUp );
+ iExtension->ImmediateFeedback( ETouchFeedbackSubMenuClosed );
}
else
{
@@ -4192,7 +4192,7 @@
{
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- iExtension->ImmediateFeedback( ETouchFeedbackDecreasingPopUp );
+ iExtension->ImmediateFeedback( ETouchFeedbackSubMenuClosed );
}
else
{
@@ -4314,7 +4314,7 @@
{
if ( CAknTransitionUtils::TransitionsEnabled( AknTransEffect::EComponentTransitionsOff ) )
{
- iExtension->ImmediateFeedback( ETouchFeedbackDecreasingPopUp );
+ iExtension->ImmediateFeedback( ETouchFeedbackSubMenuClosed );
}
else
{
@@ -4424,7 +4424,7 @@
AknTransEffect::EComponentTransitionsOff ) )
{
iExtension->ImmediateFeedback(
- ETouchFeedbackDecreasingPopUp );
+ ETouchFeedbackSubMenuClosed );
}
else
{
@@ -5354,7 +5354,7 @@
UpdateBackgroundContext( Rect() );
PrepareHighlightFrame();
SetCascadedIconSize();
-
+ DrawDeferred();
if ( iCascadeMenuPane )
{
iCascadeMenuPane->HandleResourceChange( aType );
--- a/uifw/EikStd/coctlsrc/EIKSCRLB.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKSCRLB.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -41,7 +41,7 @@
#include "eikscrlb.h"
#include "EIKSBEXT.H"
-const TInt KIntensity = 50; // 50%
+const TInt KIntensity = 100; // 100%
const TInt KScrollBarWidth=9;
// const TInt KScrollButtonHeight=10;
@@ -830,7 +830,7 @@
if ( modifier )
{
CAknDoubleSpanScrollBarExtension* extension = static_cast<CAknDoubleSpanScrollBarExtension*> (iExtension);
- if ( aVisible && (extension->iScrollIndicator->ScrollSpan() > 0) )
+ if ( aVisible && (extension->iScrollIndicator->ScrollSpan() > 0) && !( extension->iExtensionType & ENoExpandedTouchArea ) )
{
modifier->Push( *this, ExtensionArea() );
}
@@ -897,10 +897,21 @@
{
CAknPointerEventModifier* modifier = iAvkonAppUiBase ? iAvkonAppUiBase->PointerEventModifier() : NULL;
- if ( modifier && IsVisible() )
- {
- modifier->Update( *this, ExtensionArea() );
- }
+ if (iExtension)
+ {
+ CAknDoubleSpanScrollBarExtension* extension = static_cast<CAknDoubleSpanScrollBarExtension*> (iExtension);
+ if ( modifier && IsVisible() && !( extension->iExtensionType & ENoExpandedTouchArea ) )
+ {
+ modifier->Update( *this, ExtensionArea() );
+ }
+ }
+ else
+ {
+ if ( modifier && IsVisible() )
+ {
+ modifier->Update( *this, ExtensionArea() );
+ }
+ }
AknsUtils::RegisterControlPosition( this );
if (iExtension)
@@ -1304,7 +1315,7 @@
feedback->StartFeedback( this,
ETouchContinuousSlider,
&aPointerEvent,
- KIntensity, // intensity 50%
+ KIntensity, // intensity 100%
timeout );
}
extension->SetModelThumbPosition(thumbPosition);
--- a/uifw/EikStd/coctlsrc/aknitemactionmenu.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/aknitemactionmenu.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -99,7 +99,22 @@
{
_AKNTRACE_FUNC_ENTER;
_AKNTRACE_FUNC_EXIT;
- return AknItemActionMenuRegister::RegisterCollectionL( aCollection );
+ return AknItemActionMenuRegister::RegisterCollectionL(
+ aCollection, NULL );
+ }
+
+
+// ---------------------------------------------------------------------------
+// CAknItemActionMenu::RegisterCollectionL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CAknItemActionMenu* CAknItemActionMenu::RegisterCollectionL(
+ MAknCollection& aCollection, MObjectProvider* aMenuBarOwner )
+ {
+ _AKNTRACE_FUNC_ENTER;
+ _AKNTRACE_FUNC_EXIT;
+ return AknItemActionMenuRegister::RegisterCollectionL(
+ aCollection, aMenuBarOwner );
}
--- a/uifw/EikStd/coctlsrc/aknitemactionmenuregister.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/aknitemactionmenuregister.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -71,11 +71,34 @@
// ---------------------------------------------------------------------------
+// AknItemActionMenuRegister::RemoveConstructingMenuBarOwner
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void AknItemActionMenuRegister::RemoveConstructingMenuBarOwner(
+ MObjectProvider* aMenuBarOwner )
+ {
+ _AKNTRACE_FUNC_ENTER;
+
+ if ( AppUiSingleClickCompatible() )
+ {
+ AknItemActionMenuRegister* instance( Instance() );
+
+ if ( instance )
+ {
+ instance->DoRemoveConstructingMenuBarOwner( aMenuBarOwner );
+ }
+ }
+
+ _AKNTRACE_FUNC_EXIT;
+ }
+
+
+// ---------------------------------------------------------------------------
// AknItemActionMenuRegister::RegisterCollectionL
// ---------------------------------------------------------------------------
//
CAknItemActionMenu* AknItemActionMenuRegister::RegisterCollectionL(
- MAknCollection& aCollectionState )
+ MAknCollection& aCollectionState, MObjectProvider* aMenuBarOwner )
{
_AKNTRACE_FUNC_ENTER;
@@ -85,7 +108,8 @@
AknItemActionMenuRegister* instance( Instance() );
if ( instance )
{
- menu = instance->DoRegisterCollectionL( aCollectionState );
+ menu = instance->DoRegisterCollectionL(
+ aCollectionState, aMenuBarOwner );
}
}
@@ -320,12 +344,22 @@
// ---------------------------------------------------------------------------
//
CAknItemActionMenu* AknItemActionMenuRegister::DoRegisterCollectionL(
- MAknCollection& aCollectionState )
+ MAknCollection& aCollectionState, MObjectProvider* aMenuBarOwner )
{
_AKNTRACE_FUNC_ENTER;
CAknItemActionMenu* menu( NULL );
- CEikMenuBar* menuBar = FindCurrentMenuBarL();
+ CEikMenuBar* menuBar = NULL;
+
+ if ( aMenuBarOwner )
+ {
+ aMenuBarOwner->MopGetObject( menuBar );
+ }
+
+ if ( !menuBar )
+ {
+ menuBar = FindCurrentMenuBar();
+ }
menu = RegisterStateToItemActionMenuL( menuBar, aCollectionState );
_AKNTRACE_FUNC_EXIT;
@@ -448,7 +482,7 @@
{
_AKNTRACE_FUNC_ENTER;
- CEikMenuBar* menuBar = FindCurrentMenuBarL();
+ CEikMenuBar* menuBar = FindCurrentMenuBar();
if ( !menuBar || !iRegisterArray->RegisterCollectionObserverL(
*menuBar, aObserver ) )
{
@@ -751,16 +785,15 @@
// ---------------------------------------------------------------------------
-// AknItemActionMenuRegister::FindCurrentMenuBarL
+// AknItemActionMenuRegister::FindCurrentMenuBar
// ---------------------------------------------------------------------------
//
-CEikMenuBar* AknItemActionMenuRegister::FindCurrentMenuBarL()
+CEikMenuBar* AknItemActionMenuRegister::FindCurrentMenuBar()
{
_AKNTRACE_FUNC_ENTER;
CAknAppUi* appUi = AppUI();
CEikonEnv* eikonEnv( CEikonEnv::Static() );
- TBool isConstructingDialog( EFalse );
CEikMenuBar* menuBar( NULL );
// If overriding menubar owner is set then it's the one to obey. If the
@@ -771,34 +804,23 @@
_AKNTRACE_FUNC_EXIT;
return OverridingObjectMenuBar();
}
-
- // Check if there is existing constructing dialog
+
+ // by default choose the current constructing menubar owner
if ( iMenuBarOwner )
{
- CEikDialog* dialog( NULL );
- iMenuBarOwner->MopGetObjectNoChaining( dialog );
- if ( dialog )
- {
- isConstructingDialog = ETrue;
- }
+ menuBar = ConstructingObjectMenuBar();
}
- // No constructing dialog
- if ( !isConstructingDialog )
+ else
{
// Fetch pointer to dialog that is currently displayed
menuBar = DialogMenuBar( appUi );
+
// No dialog - pointer to active view menu bar
if ( !menuBar )
{
menuBar = ViewMenuBar( appUi );
}
}
-
- // Fetch pointer to constructing object menu bar
- if ( !menuBar )
- {
- menuBar = ConstructingObjectMenuBar();
- }
// Finally, if no luck with others, fetch pointer to appUi menu bar.
if ( !menuBar && eikonEnv )
@@ -901,31 +923,67 @@
iIsConstructingDialog = ETrue;
}
}
- else if ( !aMenuBarOwner && iIsConstructingDialog )
+
+ iMenuBarOwner = aMenuBarOwner;
+ }
+
+
+// ---------------------------------------------------------------------------
+// AknItemActionMenuRegister::DoRemoveConstructingMenuBarOwner
+// ---------------------------------------------------------------------------
+//
+void AknItemActionMenuRegister::DoRemoveConstructingMenuBarOwner(
+ MObjectProvider* aMenuBarOwner )
+ {
+ TInt i = 0;
+
+ // set all references to removed menubar owner to NULL
+ while ( i < iUnregisteredMenus.Count() )
{
- // When setting constructing menubar owner to NULL from a dialog check
- // if there is item with the same menubar owner in iUnregisteredMenus
- // and try to find correct menubar for it.
- for ( TInt i = 0; i < iUnregisteredMenus.Count(); i++ )
+ TAknUnregisteredMenuData& data( iUnregisteredMenus[i] );
+
+ if ( data.iOwner == iMenuBarOwner )
{
- TAknUnregisteredMenuData& data( iUnregisteredMenus[ i ] );
- if ( data.iOwner == iMenuBarOwner )
+ data.iOwner = iMenuBarOwner = NULL;
+
+ // When setting constructing menubar owner to NULL from a dialog
+ // check if there is item with the same menubar owner in
+ // iUnregisteredMenus and try to find correct menubar for it.
+ if ( iIsConstructingDialog )
{
- data.iOwner = iMenuBarOwner = NULL;
- CEikMenuBar* menuBar = FindCurrentMenuBarL();
+ CEikMenuBar* menuBar = FindCurrentMenuBar();
+
if ( menuBar )
{
- AddRegisterEntryL( *menuBar, *data.iMenu );
+ TRAP_IGNORE( AddRegisterEntryL( *menuBar, *data.iMenu ) );
iUnregisteredMenus.Remove( i );
+ continue;
}
- iIsConstructingDialog = EFalse;
- return;
}
}
+
+ ++i;
}
- iMenuBarOwner = aMenuBarOwner;
+
+ // NULL also possible references in unregistered observers
+ for ( i = 0; i < iUnregisteredObservers.Count(); ++i )
+ {
+ TAknUnregisteredObserverData& data( iUnregisteredObservers[i] );
+
+ if ( data.iOwner == aMenuBarOwner )
+ {
+ data.iOwner = NULL;
+ }
+ }
+
+ if ( iMenuBarOwner == aMenuBarOwner )
+ {
+ iIsConstructingDialog = EFalse;
+ iMenuBarOwner = NULL;
+ }
}
+
// ---------------------------------------------------------------------------
// AknItemActionMenuRegister::TAknUnregisteredObserverData
// ::TAknUnregisteredObserverData
--- a/uifw/EikStd/coctlsrc/akntoolbarextensionview.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/akntoolbarextensionview.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -170,6 +170,10 @@
iItems[i]->Control()->ActivateL();
}
SetComponentsToInheritVisibility( ETrue );
+
+#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
+ GfxTransEffect::Register( this, KGfxTransEffectToolbarExtensionControlUid);
+#endif
}
// ---------------------------------------------------------------------------
@@ -183,13 +187,7 @@
if ( aVisible && !isVisible )
{
- // the toolbar extension is shown, this happens only with pointer event?
- MTouchFeedback* feedback = MTouchFeedback::Instance();
- if ( feedback )
- {
- feedback->InstantFeedback( ETouchFeedbackPopUp );
- }
-
+ // the toolbar extension is shown, this happens only with pointer event?
TRect rect;
TRAP_IGNORE( rect = CalculateSizeL() );
CEikonEnv::Static()->EikAppUi()->UpdateStackedControlFlags( this,
@@ -529,12 +527,6 @@
if ( !Rect().Contains( aPointerEvent.iPosition) && iIsDownOutside )
{
// tapped outside view,
- MTouchFeedback* feedback = MTouchFeedback::Instance();
- if ( feedback )
- {
- feedback->InstantFeedback( ETouchFeedbackPopUp );
- }
-
MakeVisible( EFalse );
// Close extension view and let also extension know about it
// so it can change state
@@ -887,9 +879,6 @@
iSelectedItem( KNoItemSelected ), iNumberOfColumns( 1 ),
iIsDownOutside( EFalse )
{
-#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
- GfxTransEffect::Register( this, KGfxTransEffectToolbarExtensionControlUid);
-#endif
}
--- a/uifw/EikStd/coctlsrc/eikcba.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/eikcba.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -1772,7 +1772,7 @@
TRect rect;
qgn_graf_sk_msk.LayoutRect(
rect,
- AknLayoutScalable_Avkon::control_pane_g4( 0 ).LayoutLine() );
+ AknLayoutScalable_Avkon::control_pane_g4( 1 ).LayoutLine() );
TSize iconSize( qgn_graf_sk_msk.Rect().Width(),
qgn_graf_sk_msk.Rect().Height() );
--- a/uifw/EikStd/coctlsrc/smileymanager.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/coctlsrc/smileymanager.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -179,11 +179,14 @@
if ( image && aRect.Size() != image->BitmapSize() )
{
image->SetBitmapSize( aRect.Size() );
- if ( icon->IsPlayFinished() )
+ for ( TInt i( 0 ); i < image->RefArrayCount(); i++ )
{
- icon->PlayOneTime();
- iDrawer->CreateImageL( image );
+ if ( image->RefIcon( i )->IsPlayFinished() )
+ {
+ image->RefIcon( i )->PlayOneTime();
+ }
}
+ iDrawer->CreateImageL( image );
}
else if ( !image )
{
--- a/uifw/EikStd/dlgsrc/EIKDIALG.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/dlgsrc/EIKDIALG.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -237,7 +237,7 @@
_AKNTRACE_FUNC_ENTER;
AKNTASHOOK_REMOVE();
- AknItemActionMenuRegister::SetConstructingMenuBarOwnerL( NULL );
+ AknItemActionMenuRegister::RemoveConstructingMenuBarOwner( this );
EnableContentObserver( EFalse );
@@ -1933,47 +1933,8 @@
return;
}
- TBool needToCheckExit = ETrue;
-
- if (aButtonId != EEikBidCancel)
- {
- PrepareForFocusTransitionL();
- }
- else if (!(iDialogFlags & EEikDialogFlagNotifyEsc))
- {
- needToCheckExit = EFalse;
- }
+ TBool effectTriggered = EFalse;
- if (needToCheckExit)
- {
- if (!OkToExitL(aButtonId))
- {
- _AKNTRACE("CEikDialog::TryExitL return with OkToExitL false");
- return;
- }
-
- if (aButtonId != EEikBidCancel)
- {
- GetAutoValues();
- }
- }
-
- if (iExitConfirmed)
- {
- *iExitConfirmed = (MappedCommandId(aButtonId) == EEikBidCancel) ? 0 : aButtonId;
- }
- // Remove content observer in order to prevent unnecessary layout
- // calculations in dialog shutdown.
- EnableContentObserver(EFalse);
-
- if (iDialogFlags & EEikDialogFlagSleeping)
- {
- ExitSleepingDialog();
- }
- else
- {
- // Trigger the transition effects for the exiting dialog.
- CAknAppUi* aknAppUi = static_cast<CAknAppUi*>(iEikonEnv->EikAppUi());
TBool effectButton = aButtonId == EEikBidCancel
|| aButtonId == EAknSoftkeyExit
|| aButtonId == EAknSoftkeyBack
@@ -1981,27 +1942,79 @@
#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
effectButton = effectButton
|| aButtonId == EAknSoftkeyClose
- || aButtonId == EAknSoftkeyDone;
+ || aButtonId == EAknSoftkeyDone
+ || aButtonId == EAknSoftkeyOk;
+#endif
+ CAknAppUi* aknAppUi = static_cast<CAknAppUi*>( iEikonEnv->EikAppUi() );
+ if (GfxTransEffect::IsRegistered(this) && IsVisible() && effectButton
+#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
+ && !(iDialogFlags&EEikDialogFlagSleeping)
#endif
-
- if (GfxTransEffect::IsRegistered(this) && IsVisible() && effectButton
&& (!aknAppUi->IsFullScreenApp() || aknAppUi->IsForeground())
- && !IsBlankScreenDisplayed())
+ && !IsBlankScreenDisplayed()
+ )
+ {
+ CAknTransitionUtils::SetAllParents(this);
+ GfxTransEffect::Begin(this, KGfxControlDisappearAction);
+ GfxTransEffect::NotifyExternalState(ECaptureComponentsBegin, (const TDesC8*)this);
+ TRect demarcation;
+ CAknTransitionUtils::GetDemarcation(CAknTransitionUtils::EPopup,
+ demarcation);
+ GfxTransEffect::SetDemarcation(this, demarcation);
+ effectTriggered = ETrue;
+ }
+
+ if (aButtonId!=EEikBidCancel)
+ PrepareForFocusTransitionL();
+ else if (!(iDialogFlags&EEikDialogFlagNotifyEsc))
+ goto finished;
+ if (!OkToExitL(aButtonId))
+ {
+ if ( effectTriggered )
{
- // Begin transition.
- TRect demarcation;
- CAknTransitionUtils::SetAllParents(this);
- GfxTransEffect::Begin(this, KGfxControlDisappearAction);
- GfxTransEffect::NotifyExternalState(ECaptureComponentsBegin, (const TDesC8*)this);
- CAknTransitionUtils::GetDemarcation(CAknTransitionUtils::EPopup, demarcation);
- GfxTransEffect::SetDemarcation(this, demarcation);
-
- // End transiton.
- MakeVisible(EFalse);
- CAknTransitionUtils::MakeVisibleSubComponents(this,
- CAknTransitionUtils::EForceInvisible);
- GfxTransEffect::NotifyExternalState(ECaptureComponentsEnd, (const TDesC8*)this);
- GfxTransEffect::End(this);
+ GfxTransEffect::NotifyExternalState( ECaptureComponentsAbort,
+ ( const TDesC8* ) this );
+ GfxTransEffect::Abort( this );
+ }
+ _AKNTRACE_FUNC_EXIT;
+ return;
+ }
+
+ if (aButtonId != EEikBidCancel)
+ GetAutoValues();
+finished:
+ if (iExitConfirmed)
+ *iExitConfirmed=((MappedCommandId( aButtonId ) ==EEikBidCancel)? 0: aButtonId);
+
+ // Remove content observer in order to prevent unnecessary layout
+ // calculations in dialog shutdown.
+ EnableContentObserver( EFalse );
+
+ if (iDialogFlags&EEikDialogFlagSleeping)
+ ExitSleepingDialog();
+ else
+ {
+ // Remove content observer in order to prevent unnecessary layout
+ // calculations in dialog shutdown.
+ EnableContentObserver( EFalse );
+
+ if ( effectTriggered )
+ {
+ MakeVisible(EFalse);
+ CAknTransitionUtils::MakeVisibleSubComponents( this,
+ CAknTransitionUtils::EForceInvisible );
+
+ GfxTransEffect::NotifyExternalState(ECaptureComponentsEnd, (const TDesC8*)this);
+ GfxTransEffect::End(this);
+ }
+ else
+ {
+ MakeVisible(EFalse);
+ CAknTransitionUtils::MakeVisibleSubComponents( this,
+ CAknTransitionUtils::EForceInvisible );
+ GfxTransEffect::NotifyExternalState( ECaptureComponentsAbort,
+ ( const TDesC8* ) this );
+ GfxTransEffect::Abort(this);
}
delete(this);
}
--- a/uifw/EikStd/dlgsrc/EIKDPAGE.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/dlgsrc/EIKDPAGE.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -3181,18 +3181,29 @@
upperItem = iLines->Count();
}
}
- if ( iPhysics->OngoingPhysicsAction() != CAknPhysics::EAknPhysicsActionNone )
+ if ( upperItem == -1 || bottomItem == iLines->Count() )
{
- if ( upperItem == -1 || bottomItem == iLines->Count() )
+ if ( upperItem != iExtension->iTopItem || bottomItem != iExtension->iBottomItem )
{
- if ( upperItem != iExtension->iTopItem || bottomItem != iExtension->iBottomItem )
+ if( iPhysics->OngoingPhysicsAction() == CAknPhysics::EAknPhysicsActionDragging )
+ {
+ iExtension->Feedback( this, ETouchFeedbackSensitiveList );
+ }
+ else if( iPhysics->OngoingPhysicsAction() == CAknPhysics::EAknPhysicsActionFlicking)
{
iExtension->SilentFeedback( this, ETouchFeedbackSensitiveList, TPointerEvent() );
}
}
- else if ( upperItem >= 0 || bottomItem < iLines->Count() )
+ }
+ else if ( upperItem >= 0 || bottomItem < iLines->Count() )
+ {
+ if ( upperItem < iExtension->iTopItem || bottomItem > iExtension->iBottomItem )
{
- if ( upperItem < iExtension->iTopItem || bottomItem > iExtension->iBottomItem )
+ if( iPhysics->OngoingPhysicsAction() == CAknPhysics::EAknPhysicsActionDragging )
+ {
+ iExtension->Feedback( this, ETouchFeedbackSensitiveList );
+ }
+ else if( iPhysics->OngoingPhysicsAction() == CAknPhysics::EAknPhysicsActionFlicking)
{
iExtension->SilentFeedback( this, ETouchFeedbackSensitiveList, TPointerEvent() );
}
--- a/uifw/EikStd/srvuisrc/eikkeysoundserver.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/EikStd/srvuisrc/eikkeysoundserver.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -282,7 +282,7 @@
void CEikKeySoundServer::Complete(TInt aError, TAudioThemeEvent aEvent)
{
if( aError != KErrNone && aError != ESilencedError
- && aError != EEventCurrentlyPlaying )
+ && aError != EEventCurrentlyPlaying && aError != KErrUnderflow)
{
PlaySid(aEvent, ETrue);
}
--- a/uifw/eikctl/src/EIKCLB.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/eikctl/src/EIKCLB.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -481,7 +481,8 @@
#ifdef RD_LIST_STRETCH
EXPORT_C void CEikColumnListBox::EnableStretching( const TBool aEnabled )
{
- if ( ItemDrawer()->ColumnData()->StretchingEnabled() != aEnabled )
+ if ( ItemDrawer() &&
+ ( ItemDrawer()->ColumnData()->StretchingEnabled() != aEnabled ) )
{
ItemDrawer()->ColumnData()->EnableStretching( aEnabled );
SizeChanged();
--- a/uifw/eikctl/src/EIKCLBD.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/eikctl/src/EIKCLBD.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -1944,8 +1944,11 @@
const TColors& aColors ) const
{
_AKNTRACE( "[%s][%s][%d].", "CColumnListBoxData", __FUNCTION__, __LINE__ );
- CListBoxView* view = static_cast<CEikListBox*>( iExtension->iControl )->View();
- if ( !view->ViewRect().Intersects( aRect ) )
+
+ __ASSERT_DEBUG( iExtension->iControl, Panic( EEikPanicNullPointer ));
+
+ CEikListBox* listbox = static_cast<CEikListBox*>( iExtension->iControl );
+ if ( listbox && !listbox->View()->ViewRect().Intersects( aRect ) )
{
// outside of the clipping rect -> don't process this item
return;
@@ -1960,7 +1963,7 @@
MAknsSkinInstance *skin = AknsUtils::SkinInstance();
MAknsControlContext *cc = AknsDrawUtils::ControlContext( Control() );
- if (!cc)
+ if ( !cc )
{
cc = SkinBackgroundContext();
}
@@ -1975,7 +1978,6 @@
CheckIfSubCellsIntersect( &textLines[0], &rectClipped[0], *aText, aRect );
}
- CEikListBox* listbox = static_cast<CEikListBox*>( iExtension->iControl );
#ifdef RD_UI_TRANSITION_EFFECTS_LIST
MAknListBoxTfxInternal *transApi = CAknListLoader::TfxApiInternal( &aGc );
#endif // RD_UI_TRANSITION_EFFECTS_LIST
@@ -2008,10 +2010,8 @@
}
#endif // RD_UI_TRANSITION_EFFECTS_LIST
}
-
- CEikListBox* list = static_cast<CEikListBox*>( iExtension->iControl );
-
- if ( iExtension->iCurrentRow < list->BottomItemIndex() )
+
+ if ( iExtension->iCurrentRow < listbox->BottomItemIndex() )
{
AknListUtils::DrawSeparator( aGc, aRect, aColors.iText, skin );
}
@@ -2027,7 +2027,7 @@
if ( transApi )
{
transApi->StartDrawing( MAknListBoxTfxInternal::EListItem );
- CListBoxView* view = static_cast<CEikListBox*>( iExtension->iControl )->View();
+ CListBoxView* view = listbox->View();
aGc.SetClippingRect( view->ViewRect() );
}
#endif // RD_UI_TRANSITION_EFFECTS_LIST
@@ -2048,19 +2048,19 @@
TRgb textColor( aTextColor );
- if (aHighlight)
+ if ( aHighlight )
{
textColor = aColors.iHighlightedText;
aGc.SetBrushColor(aColors.iHighlightedBack);
}
- if (AknsUtils::AvkonSkinEnabled())
+ if ( AknsUtils::AvkonSkinEnabled() )
{
- if (iExtension->iTextColor != NULL)
+ if ( iExtension->iTextColor != NULL )
{
textColor = iExtension->iTextColor;
}
- if (aHighlight && iExtension->iHighlightedTextColor != NULL)
+ if ( aHighlight && iExtension->iHighlightedTextColor != NULL )
{
textColor = iExtension->iHighlightedTextColor;
}
@@ -2082,7 +2082,7 @@
// check if there are icons affecting this text layout
TInt gSC = iExtension->AtSL(subCellIndex).iConditionValue; // graphical subcell which might affect this text subcell
- if (gSC > -1)
+ if ( gSC > -1 )
{
TInt tempIndex;
while (gSC > -1) // when gSC == -1, we have found our graphical subcell
@@ -2098,7 +2098,7 @@
}
}
- if (gSC == -1) // no affecting icons -> use default layout
+ if ( gSC == -1 ) // no affecting icons -> use default layout
{
textLineLayout = iExtension->AtSL(subCellIndex).iTextLayout;
}
@@ -2107,7 +2107,7 @@
if( !isLayoutAlignment )
{
- switch(align)
+ switch( align )
{
case CGraphicsContext::ELeft :
{
@@ -2165,9 +2165,9 @@
}
TBool marqueeDisabled(EFalse);
- if (listbox != NULL &&
- listbox->View() != NULL &&
- listbox->View()->ItemDrawer() != NULL)
+ if ( listbox != NULL &&
+ listbox->View() != NULL &&
+ listbox->View()->ItemDrawer() != NULL)
{
marqueeDisabled = listbox->View()->ItemDrawer()->Flags() & CListItemDrawer::EDisableMarquee;
}
@@ -2255,7 +2255,7 @@
continue;
}
- if (aHighlight && (index > 0xffff))
+ if ( aHighlight && (index > 0xffff) )
{
index = index >> 16; // we have different icon for highlight
}
@@ -2269,7 +2269,7 @@
graphicRect.LayoutRect(aRect,graphicLayout);
TSize graphicSize( graphicRect.Rect().Size() );
- if (index>=0 && IconArray())
+ if ( index>=0 && IconArray() )
{
CGulIcon* icon=(*IconArray())[index];
CFbsBitmap* bitmap=icon->Bitmap();
@@ -2278,8 +2278,8 @@
{
TSize size( bitmap->SizeInPixels() );
- if (size.iWidth != graphicSize.iWidth &&
- size.iHeight != graphicSize.iHeight )
+ if ( size.iWidth != graphicSize.iWidth &&
+ size.iHeight != graphicSize.iHeight )
{
AknIconUtils::SetSize( bitmap,
graphicSize,
--- a/uifw/eikctl/src/EIKMFNE.CPP Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/eikctl/src/EIKMFNE.CPP Wed Apr 14 16:14:00 2010 +0300
@@ -3982,18 +3982,24 @@
return(Date());
}
-EXPORT_C TKeyResponse CEikDateEditor::OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType)
- {
- if (iDateEditor->OfferKeyEventL(aKeyEvent, aType)==EKeyWasConsumed)
- return EKeyWasConsumed;
- if ( ( aType==EEventKey)&&
- ( aKeyEvent.iCode == EKeyLeftArrow || aKeyEvent.iCode == EKeyRightArrow ||
- aKeyEvent.iCode == EKeyDownArrow || aKeyEvent.iCode == EKeyUpArrow ) )
+EXPORT_C TKeyResponse CEikDateEditor::OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType )
+ {
+ TKeyResponse ret = EKeyWasNotConsumed;
+ if ( iDateEditor->OfferKeyEventL( aKeyEvent, aType ) == EKeyWasConsumed )
+ {
+ ret = EKeyWasConsumed;
+ }
+ else
{
- iDateEditor->UpdateMaxDay( *Font() );
+ ret = CEikMfne::OfferKeyEventL( aKeyEvent, aType );
+ if ( ( aType == EEventKey ) &&
+ ( aKeyEvent.iCode == EKeyDownArrow || aKeyEvent.iCode == EKeyUpArrow ) )
+ {
+ iDateEditor->UpdateMaxDay( *Font() );
+ this->DrawDeferred();
+ }
}
-
- return CEikMfne::OfferKeyEventL(aKeyEvent, aType);
+ return ret;
}
EXPORT_C void CEikDateEditor::ConstructFromResourceL(TResourceReader& aResourceReader)
--- a/uifw/ganes/BWINS/ganesu.def Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/BWINS/ganesu.def Wed Apr 14 16:14:00 2010 +0300
@@ -113,4 +113,5 @@
?SetFlags@CHgVgMediaWall@@QAEXH@Z @ 112 NONAME ; void CHgVgMediaWall::SetFlags(int)
?SetItemToOpenedState@CHgVgMediaWall@@QAEXH@Z @ 113 NONAME ; void CHgVgMediaWall::SetItemToOpenedState(int)
?SetOpenedItemRect@CHgVgMediaWall@@QAEXABVTRect@@@Z @ 114 NONAME ; void CHgVgMediaWall::SetOpenedItemRect(class TRect const &)
+ ?SetMenuProviderL@CHgScroller@@QAEXPAVMObjectProvider@@@Z @ 115 NONAME ; void CHgScroller::SetMenuProviderL(class MObjectProvider *)
--- a/uifw/ganes/EABI/ganesu.def Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/EABI/ganesu.def Wed Apr 14 16:14:00 2010 +0300
@@ -168,4 +168,5 @@
_ZN14CHgVgMediaWall8SetFlagsEi @ 167 NONAME
_ZN14CHgVgMediaWall17SetOpenedItemRectERK5TRect @ 168 NONAME
_ZN14CHgVgMediaWall20SetItemToOpenedStateEi @ 169 NONAME
+ _ZN11CHgScroller16SetMenuProviderLEP15MObjectProvider @ 170 NONAME
--- a/uifw/ganes/inc/HgVgConstants.h Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/inc/HgVgConstants.h Wed Apr 14 16:14:00 2010 +0300
@@ -132,7 +132,7 @@
// Specific constants for full screen coverflow mediawall
const TInt KMediaWallFullScreenItemsOnScreen(5);
const TReal KMediaWallFullScreenCameraZoomFactor(1.5);
- const TReal KMediaWallFullScreenCameraRotationFactor(PI/5.0);
+ const TReal KMediaWallFullScreenCameraRotationFactor(KCameraRotationFactor*1.5);
const TReal KMediaWallFullScreenSpringVelocityToAnimationFactor(10);
const TReal KMediaWallFullScreenZOffset(1);
const TInt KMediaWallFullScreenRowCount(1);
--- a/uifw/ganes/inc/HgVgLetterPopup.h Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/inc/HgVgLetterPopup.h Wed Apr 14 16:14:00 2010 +0300
@@ -83,7 +83,7 @@
/**
*
*/
- void EnableLanscapeRendering(TBool enabled);
+ void EnableLandscapeRendering(TBool enabled);
protected: // Constructors
CHgVgPopup();
--- a/uifw/ganes/src/HgGrid.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/src/HgGrid.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -613,14 +613,14 @@
}
else
{
+ TInt mul = AknLayoutUtils::LayoutMirrored() ? -1 : 1;
if( iLandscapeScrolling )
{
- TInt change = AknLayoutUtils::LayoutMirrored() ? -iRows : iRows;
- ChangeSelectedIndex( change );
+ ChangeSelectedIndex( mul * iRows );
}
else
{
- ChangeSelectedIndex( 1 );
+ ChangeSelectedIndex( mul );
}
FitSelectionToView();
SelectionChanged();
@@ -640,14 +640,14 @@
}
else
{
+ TInt mul = AknLayoutUtils::LayoutMirrored() ? 1 : -1;
if( iLandscapeScrolling )
{
- TInt change = AknLayoutUtils::LayoutMirrored() ? iRows : -iRows;
- ChangeSelectedIndex( change );
+ ChangeSelectedIndex( mul * iRows );
}
else
{
- ChangeSelectedIndex( -1 );
+ ChangeSelectedIndex( mul );
}
FitSelectionToView();
SelectionChanged();
--- a/uifw/ganes/src/HgScroller.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/src/HgScroller.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -50,7 +50,7 @@
#include <featdiscovery.h>
-const TInt KIntensity = 50; // 50%
+const TInt KIntensity = 100; // 100%
// ============================ MEMBER FUNCTIONS ===============================
@@ -106,7 +106,7 @@
if( appUi && appUi->IsSingleClickCompatible() )
{
iDetector = CAknLongTapDetector::NewL(this);
- iActionMenu = CAknItemActionMenu::RegisterCollectionL(*this);
+ iActionMenu = CAknItemActionMenu::RegisterCollectionL( *this );
}
iDrawUtils->EnableMarquee(HasHighlight());
@@ -555,7 +555,7 @@
iScrollbar->SetViewPosition( iViewPosition - TPoint(iWidth/2, iHeight/2));
if(prevStatic != iScrollbar->IsStatic())
- HandleScrollbarVisibilityChange(iScrollbar->IsStatic());
+ HandleScrollbarVisibilityChange( !iScrollbar->IsStatic() );
}
}
// -----------------------------------------------------------------------------
@@ -1029,7 +1029,8 @@
iItems[selectedItem]->Time().FormatL( iPopupText1, KGanesMonthString );
iItems[selectedItem]->Time().FormatL( iPopupText2, KGanesYearString );
)
- // To display year correctly in arabic.
+ // To display month and year correctly in arabic.
+ AknTextUtils::LanguageSpecificNumberConversion( iPopupText1 );
AknTextUtils::LanguageSpecificNumberConversion( iPopupText2 );
}
}
@@ -1770,4 +1771,26 @@
}
}
+// ---------------------------------------------------------------------------
+// CHgScroller::SetMenuProviderL()
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CHgScroller::SetMenuProviderL( MObjectProvider* aMenuProvider )
+ {
+ SetMopParent(aMenuProvider);
+
+ if( iActionMenu )
+ {
+ iActionMenu->RemoveCollection( *this );
+ iActionMenu = NULL;
+ }
+
+ CAknAppUi* appUi = static_cast<CAknAppUi*>(iEikonEnv->AppUi());
+ if( appUi && appUi->IsSingleClickCompatible() )
+ {
+ iActionMenu = CAknItemActionMenu::RegisterCollectionL( *this, this );
+ }
+ }
+
+
// End of File
--- a/uifw/ganes/src/HgVgLetterPopup.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/src/HgVgLetterPopup.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -221,7 +221,7 @@
iParentRect = aParentRect;
}
-void CHgVgPopup::EnableLanscapeRendering(TBool enabled)
+void CHgVgPopup::EnableLandscapeRendering(TBool enabled)
{
iLandscape = enabled;
}
--- a/uifw/ganes/src/HgVgMediaWall.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/src/HgVgMediaWall.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -66,7 +66,9 @@
using namespace AknTouchGestureFw;
using namespace HgVgConstants;
-
+#ifdef SYMBIAN_GRAPHICS_FIXNATIVEORIENTATION
+ #define MEDIAWALL_ORIENTATION_FIX
+#endif
// ============================ MEMBER FUNCTIONS ===============================
// -----------------------------------------------------------------------------
@@ -139,6 +141,7 @@
iCoeEnv->WsSession().Flush();
#endif
+
SetMopParent( aParent );
SetFlags( EHgVgMediaWallDrawToWindowGC | EHgVgMediaWallUninitialized );
@@ -327,7 +330,6 @@
delete iKeyScrollingTimer;
delete iAnimationTimer;
delete iDelayedInit;
- //delete iCompositionSource;
delete iEGL;
delete iSpring;
delete iSurfaceBitmap;
@@ -489,7 +491,8 @@
void CHgVgMediaWall::HandlePointerEventL( const TPointerEvent& aEvent )
{
// Not faded and initialized and the drawing is set to be done to WinGc
- if( !( iFlags & EHgVgMediaWallFaded )
+ if( aEvent.iType == TPointerEvent::EButton1Down
+ && !( iFlags & EHgVgMediaWallFaded )
&& !( iFlags & EHgVgMediaWallUninitialized )
&& iFlags & EHgVgMediaWallDrawToWindowGC )
{
@@ -1288,10 +1291,11 @@
CHgVgMediaWall* self = const_cast<CHgVgMediaWall*>(this);
- if (!self->DrawAll())
+ if (self && !self->DrawAll())
return;
-
- iEGL->SwapBuffers();
+
+ if( iEGL )
+ iEGL->SwapBuffers();
}
@@ -1300,31 +1304,33 @@
// ---------------------------------------------------------------------------
//
void CHgVgMediaWall::DoAnimation()
- {
+ {
+ TBool draw = ETrue;
switch (iAnimationState)
{
case EHgVgMediaWallAnimationStateTransition:
case EHgVgMediaWallAnimationStateFastTransition:
{
- DoTransitionAnimation();
+ draw = DoTransitionAnimation();
} break;
case EHgVgMediaWallAnimationStateOpening:
case EHgVgMediaWallAnimationStateClosing:
case EHgVgMediaWallAnimationStateIdle:
case EHgVgMediaWallAnimationStateItemOpened:
{
- DoSelectionAnimation();
+ draw = DoSelectionAnimation();
} break;
}
-
- DrawOpenVG();
+
+ if(draw)
+ DrawOpenVG();
}
// ---------------------------------------------------------------------------
// CHgVgMediaWall::DoSelectionAnimation()
// ---------------------------------------------------------------------------
//
-void CHgVgMediaWall::DoSelectionAnimation()
+TBool CHgVgMediaWall::DoSelectionAnimation()
{
TTime now;
now.HomeTime();
@@ -1336,6 +1342,7 @@
// calculate animation alpha
TReal alpha = (TReal)diff / (TReal)KSelectionAnimationDuration;
+ TBool draw = ETrue;
switch (iAnimationState)
{
@@ -1354,6 +1361,7 @@
case EHgVgMediaWallAnimationStateItemOpened:
{
iAnimationTimer->Cancel();
+ draw = EFalse;
if (iSelectionObserver)
{
if (iMediaWallStyle == EHgVgMediaWallStyleGrid)
@@ -1370,7 +1378,9 @@
{
iAnimationTimer->Cancel();
} break;
- }
+ }
+
+ return draw;
}
@@ -1378,7 +1388,7 @@
// CHgVgMediaWall::DoTransitionAnimation()
// ---------------------------------------------------------------------------
//
-void CHgVgMediaWall::DoTransitionAnimation()
+TBool CHgVgMediaWall::DoTransitionAnimation()
{
TTime now;
now.HomeTime();
@@ -1406,7 +1416,8 @@
}
}
}
-
+
+ return ETrue;
}
void CHgVgMediaWall::HandleTransitionAnimationStop()
@@ -1599,6 +1610,11 @@
iEGL->InitWindowSurfaceL(Window());
}
+ if(!iCompositionSource)
+ {
+ iCompositionSource = CAlfCompositionSource::NewL(Window());
+ iCompositionSource->EnableAlpha();
+ }
delete iRenderer; iRenderer = NULL;
delete iArtistLabel; iArtistLabel = NULL;
@@ -2322,6 +2338,7 @@
delete iSkinRenderer; iSkinRenderer = NULL;
delete iEmptyLabel; iEmptyLabel = NULL;
delete iEGL; iEGL = NULL;
+ delete iCompositionSource; iCompositionSource = NULL;
}
// -----------------------------------------------------------------------------
@@ -2501,8 +2518,8 @@
void CHgVgMediaWall::InitLabelsL(TInt aLayoutVariant)
{
- TAknTextComponentLayout l0 = AknLayoutScalable_Apps::main_cf0_pane_t1(aLayoutVariant);
- TAknTextComponentLayout l1 = AknLayoutScalable_Apps::main_cf0_pane_t2(aLayoutVariant);
+ TAknTextComponentLayout l0 = AknLayoutScalable_Apps::main_cf0_pane_t2(aLayoutVariant);
+ TAknTextComponentLayout l1 = AknLayoutScalable_Apps::main_cf0_pane_t1(aLayoutVariant);
TAknLayoutText t0;
TAknLayoutText t1;
--- a/uifw/ganes/src/HgVgMediaWallRenderer.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/src/HgVgMediaWallRenderer.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -519,17 +519,6 @@
aAnimationAlpha,
aState, aSelectionAnimationType, aStartIndex, aSpringVelocity);
- vgSeti(VG_MATRIX_MODE, VG_MATRIX_PATH_USER_TO_SURFACE);
- vgLoadIdentity();
- vgRotate(-90.0f);
- vgTranslate(0.0f, -640.0f);
-
- vgSeti(VG_MATRIX_MODE, VG_MATRIX_IMAGE_USER_TO_SURFACE);
- vgLoadIdentity();
- vgRotate(-90.0f);
- vgTranslate(0.0f, -640.0f);
-
-
TransformAndDraw(itemsOnScreen, aSelectionAnimationType);
}
--- a/uifw/ganes/src/HgVgSkinRenderer.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uifw/ganes/src/HgVgSkinRenderer.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -59,7 +59,7 @@
void CHgVgSkinRenderer::ConstructL ()
{
- iDrawBuffer = CHgVgDrawBuffer::NewL( TSize(iRect.Width(), iRect.Height()), EColor64K );
+ iDrawBuffer = CHgVgDrawBuffer::NewL( TSize(iRect.Width(), iRect.Height()), EColor16MA );
}
@@ -96,12 +96,6 @@
void CHgVgSkinRenderer::UpdateSkinL(const MObjectProvider* aProvider,
const CCoeControl* aControl)
{
- // render skin to draw buffer
- MAknsSkinInstance* skin = AknsUtils::SkinInstance();
- MAknsControlContext* cc = AknsDrawUtils::ControlContext( aProvider );
- AknsDrawUtils::DrawBackground( skin, cc, aControl, iDrawBuffer->Gc(), TPoint(0,0),
- aControl->Rect(), KAknsDrawParamDefault );
-
// destroy old vg image
if (iSkinImage != VG_INVALID_HANDLE)
{
@@ -109,20 +103,27 @@
iSkinImage = VG_INVALID_HANDLE;
}
- // create new image for the skin
- iSkinImage = vgCreateImage(VG_sRGB_565,
- iRect.Width(), iRect.Height(),
- VG_IMAGE_QUALITY_NONANTIALIASED);
-
- // handle out of memory
- if( iSkinImage == VG_INVALID_HANDLE )
+ // render skin to draw buffer
+ MAknsSkinInstance* skin = AknsUtils::SkinInstance();
+ MAknsControlContext* cc = AknsDrawUtils::ControlContext( aProvider );
+ if( AknsDrawUtils::DrawBackground( skin, cc, aControl, iDrawBuffer->Gc(), TPoint(0,0),
+ aControl->Rect(), KAknsDrawParamDefault ) )
{
- User::Leave(KErrNoMemory);
+ // create new image for the skin
+ iSkinImage = vgCreateImage(VG_sRGBA_8888,
+ iRect.Width(), iRect.Height(),
+ VG_IMAGE_QUALITY_NONANTIALIASED);
+
+ // handle out of memory
+ if( iSkinImage == VG_INVALID_HANDLE )
+ {
+ User::Leave(KErrNoMemory);
+ }
+
+ // Copy to draw buffer to vg image
+ iDrawBuffer->GetDrawBufferToVgImage(TRect(TPoint(0,0), TPoint(iRect.Width(), iRect.Height())),
+ TPoint(0,0), iSkinImage, VG_sARGB_8888);
}
-
- // Copy to draw buffer to vg image
- iDrawBuffer->GetDrawBufferToVgImage(TRect(TPoint(0,0), TPoint(iRect.Width(), iRect.Height())),
- TPoint(0,0), iSkinImage, VG_sRGB_565);
}
void CHgVgSkinRenderer::SetRect( const TRect& aRect )
@@ -137,7 +138,16 @@
//
void CHgVgSkinRenderer::Draw() const
{
- HgVgHelper::DrawImage(iSkinImage, TPoint(0, 0), iRect, EFalse, iLandscape);
+
+ VGfloat color[] = {255,255,255,0};
+ vgSetfv(VG_CLEAR_COLOR, 4, color);
+ if(iLandscape)
+ vgClear(0, 0, iRect.Height(), iRect.Width());
+ else
+ vgClear(0, 0, iRect.Width(), iRect.Height());
+
+ if( iSkinImage != VG_INVALID_HANDLE )
+ HgVgHelper::DrawImage(iSkinImage, TPoint(0, 0), iRect, EFalse, iLandscape);
}
void CHgVgSkinRenderer::EnableLanscapeRendering(TBool aLandscape)
--- a/uiutils/Findutil/inc/FindUtilChinese.h Wed Mar 31 21:59:52 2010 +0300
+++ b/uiutils/Findutil/inc/FindUtilChinese.h Wed Apr 14 16:14:00 2010 +0300
@@ -603,6 +603,18 @@
*/
MFindStringConverter* iConverter;
+ /**
+ * Avoid the performace problem cause by frequently TLS accessing
+ */
+ CEikonEnv* iEikEnv;
+
+
+ /**
+ * Whether current process is phonebook(and its server) or not
+ */
+ TBool iIsPhoneBook;
+
+
};
--- a/uiutils/Findutil/src/FindUtilChinese.cpp Wed Mar 31 21:59:52 2010 +0300
+++ b/uiutils/Findutil/src/FindUtilChinese.cpp Wed Apr 14 16:14:00 2010 +0300
@@ -108,7 +108,13 @@
iWatcherAdaptive = CFindRepositoryWatcher::NewL(KCRUidAvkon,
TCallBack(HandleFindRepositoryCallBack, this),
- iRepositoryFindAdaptive);
+ iRepositoryFindAdaptive);
+ iEikEnv = CEikonEnv::Static();
+ if (iEikEnv)
+ {
+ TUid appUid(iEikEnv->EikAppUi()->Application()->AppDllUid());
+ iIsPhoneBook = (appUid== KUidPhoneBook || appUid == KUidPhoneBookServer);
+ }
}
// ---------------------------------------------------------
@@ -122,7 +128,9 @@
iSearchMethodPRC(EAdptSearchPinyin),
iSearchMethodTaiWan(EAdptSearchZhuyin),
iSearchMethodHongKong(EAdptSearchStroke),
- iSearchMethodAdaptive(EFalse)
+ iSearchMethodAdaptive(EFalse),
+ iEikEnv(NULL),
+ iIsPhoneBook(EFalse)
{
}
@@ -179,10 +187,9 @@
TBool CFindUtilChinese::DoTranslationL(TInt16 aHZUnicode,
RPointerArray<HBufC>& aSpellList)
{
- if(CEikonEnv::Static())
+ if(iEikEnv)
{
- if (iSearchMethodAdaptive &&(CEikonEnv::Static()->EikAppUi()->Application()->AppDllUid() == KUidPhoneBook ||
- CEikonEnv::Static()->EikAppUi()->Application()->AppDllUid() == KUidPhoneBookServer ))
+ if (iSearchMethodAdaptive && iIsPhoneBook)
{
if (!T9ChineseTranslationAdaptiveL(aHZUnicode, aSpellList))
{