--- a/fep/aknfep/src/AknFepPluginManager.cpp Fri Mar 12 15:44:07 2010 +0200
+++ b/fep/aknfep/src/AknFepPluginManager.cpp Mon Mar 15 12:42:02 2010 +0200
@@ -290,7 +290,8 @@
if( !iPenInputSvrConnected || !iPenInputServer.IsVisible() || iPenInputServer.IsDimmed() )
{
if( iFepMan.FepAwareTextEditor() )
- {
+ {
+ iPreferredUiMode = ETrue;
TryChangePluginInputModeByModeL((TPluginInputMode)(iSharedData.PluginInputMode()),
EPenInputOpenManually,
ERangeInvalid);
@@ -1196,6 +1197,12 @@
iFepMan.UpdateCbaL( NULL );
}
+ if ( iFepMan.EditorState() )
+ {
+ iFepMan.EditorState()->SetFlags(
+ iFepMan.EditorState()->Flags() | EAknEditorFlagTouchInputModeOpened );
+ }
+
// Notify application touch window state
NotifyAppUiImeTouchWndStateL( ETrue );
@@ -1277,6 +1284,12 @@
iFepMan.UiInterface()->TouchPaneSetInputMethodIconActivated(EFalse);
+ if ( iFepMan.EditorState() )
+ {
+ iFepMan.EditorState()->SetFlags(
+ iFepMan.EditorState()->Flags() & ~EAknEditorFlagTouchInputModeOpened );
+ }
+
if ( prePluginInputMode == EPluginInputModeVkb )
{
iFepMan.UpdateIndicators();
@@ -1503,6 +1516,15 @@
ERangeInvalid);
}
break;
+ case EPeninputCmdHwr:
+ {
+ ClosePluginInputModeL(ETrue);
+ iFepMan.TryCloseUiL();
+ TryChangePluginInputModeByModeL( EPluginInputModeFingerHwr,
+ EPenInputOpenManually,
+ ERangeInvalid );
+ }
+ break;
case EFepInputCmdHelp:
{
if (iInMenu)
@@ -1852,17 +1874,23 @@
TInt curInputMode = iLangMan.CurrentImePlugin()->CurrentMode();
TBool isChinese = iFepMan.IsChineseInputLanguage();
- if ( !isChinese && ( curInputMode == EPluginInputModeItut ) &&
- !( disabledInputMode & EPluginInputModeFSQ ))
+ if ( !isChinese && ( curInputMode != EPluginInputModeFSQ )
+ && !( disabledInputMode & EPluginInputModeFSQ ))
{
aMenuPane->SetItemDimmed( EPeninputCmdFSQ, EFalse );
}
- if ( !isChinese && ( curInputMode == EPluginInputModeFSQ ) &&
- !( disabledInputMode & EPluginInputModeItut ))
+ if ( !isChinese && ( curInputMode != EPluginInputModeItut )
+ && !( disabledInputMode & EPluginInputModeItut ))
{
aMenuPane->SetItemDimmed(EPenInputCmdVITUT, EFalse);
}
+
+ if ( iFepMan.IsArabicInputLanguage() && ( curInputMode != EPluginInputModeFingerHwr )
+ && !( disabledInputMode & EPluginInputModeFingerHwr ))
+ {
+ aMenuPane->SetItemDimmed( EPeninputCmdHwr, EFalse );
+ }
//For arabic finger hwr input orientation.
TInt index = 0;
if(iPluginInputMode == EPluginInputModeFingerHwr