diff -r f5a1e66df979 -r a47de9135b21 textinput/peninputgenericitut/src/peninputgenericitutlayout.cpp --- a/textinput/peninputgenericitut/src/peninputgenericitutlayout.cpp Fri Feb 19 23:09:27 2010 +0200 +++ b/textinput/peninputgenericitut/src/peninputgenericitutlayout.cpp Fri Mar 12 15:44:07 2010 +0200 @@ -192,8 +192,26 @@ case EItutExtCmdSetIcfData: case ECmdPenInputCase: case ECmdPenInputFingerMatchSelection: + { + if (UiMgr()) + { + TInt handled = KErrNone; + TRAP_IGNORE(handled = UiMgr()->HandleCommandL(aCmd, aData)); + return handled; + } + } + break; case ECmdPenInputFingerSpelling: { + + // Fix bug EZLG-7YUAP7 + // When writing language is Chinese, and Spell On, enforce setting language to English + if( (*(reinterpret_cast(aData))) && iDataMgr->IsChinese() ) + { + iDataMgr->SetLanguageL( ELangEnglish ); + } + // + if (UiMgr()) { TInt handled = KErrNone; @@ -381,6 +399,17 @@ if (previousLang != aLanguage) { + + // Fix bug for EZLG-7YUAP7 + // When state is spelling, don¡¯t apply LAF Data + if(iCurrentUiMgr + && iCurrentUiMgr->CurrentState() + && iCurrentUiMgr->CurrentState()->StateType() == CGenericItutUiMgrBase::EStateSpelling) + { + return; + } + // + ApplyVariantLafDataL(); } }