--- a/textinput/peninputarc/gsplugin/gspeninputplugin/src/gspeninputmodel.cpp Thu Aug 19 10:15:25 2010 +0300
+++ b/textinput/peninputarc/gsplugin/gspeninputplugin/src/gspeninputmodel.cpp Tue Aug 31 15:31:50 2010 +0300
@@ -48,8 +48,6 @@
const TUid KUidtruiApp = { 0x2000B104 };
const TUid KUidPenInputSettingApp = { 0x2001959B };
-const TInt KFepChineseInputModeLength = 10;
-
_LIT(KLeftBracket, "(" );
_LIT(KRightBracket, ")" );
@@ -1187,9 +1185,7 @@
case ELangHongKongChinese:
case ELangTaiwanChinese:
{
- TBuf<KFepChineseInputModeLength> conversion;
- conversion.Num(aInputMode, EHex);
- iAknfepRepository->Set( KAknFepChineseInputMode, conversion );
+ iAknfepRepository->Set(KAknFepChineseInputMode, aInputMode);
}
break;
default:
@@ -1204,33 +1200,14 @@
//
TInt CGSPenInputModel::GetFepInputMode()
{
- TUint inputMode = 0;
+ TInt inputMode = 0;
switch(iInputLanguage)
{
case ELangPrcChinese:
case ELangHongKongChinese:
case ELangTaiwanChinese:
{
- _LIT(Kx, "x");
- // This conversion is needed because KAknFepChineseInputMode cenrep key original type was 16bit int.
- // now type is changed to string, so that it can accommodate bigger values like EHangul 0x16000.
- TBuf<KFepChineseInputModeLength> conversion;
- iAknfepRepository->Get( KAknFepChineseInputMode, conversion );
-
- TInt len = conversion.Find(Kx);
- TLex lex;
-
- if(len)
- {
- TPtrC ptr = conversion.Mid(len +1);
- lex.Assign(ptr);
- }
- else
- {
- lex.Assign(conversion);
- }
-
- lex.Val(inputMode, EHex);
+ iAknfepRepository->Get(KAknFepChineseInputMode, inputMode);
}
break;
default:
@@ -1268,7 +1245,20 @@
{
case EGSInputpenIdHwrTraining:
{
- iIsHwrTrainingAviliable = EFalse;
+ iIsHwrTrainingAviliable = EFalse;
+ TInt supportMode = EPluginInputModeNone;
+ if(KErrNone == iConnectErr)
+ {
+ supportMode = iPenInputServer.SupportInputMode();
+ }
+ TBool supportHWR = EFalse;
+ if(supportMode & EPluginInputModeHwr ||
+ supportMode & EPluginInputModeFSc ||
+ supportMode & EPluginInputModeFingerHwr)
+ {
+ supportHWR = ETrue;
+ }
+
CEikonEnv* env = CEikonEnv::Static();
TUid appUid = env->EikAppUi()
->Application()->AppDllUid();
@@ -1285,17 +1275,15 @@
iIsHwrTrainingAviliable = EFalse;
}
else
- {
+ {
iIsHwrTrainingAviliable = IsTruiSupportedLanguage();
- }
- }
+ }
+ }
else
{
iIsHwrTrainingAviliable = IsTruiSupportedLanguage();
}
- res = ( !ChineseLanguage() && !JapaneseLanguage()
- && iIsHwrTrainingAviliable
- && IsSupportHWR() );
+ res = ( !ChineseLanguage() && !JapaneseLanguage() && iIsHwrTrainingAviliable && supportHWR);
}
break;
case EGSInputpenIdInputLanguage:
@@ -1317,43 +1305,47 @@
case EGSInputpenIdGuidLine:
{
- res = ( !ChineseLanguage() && !JapaneseLanguage() && IsSupportHWR());
- if(FeatureManager::FeatureSupported(KFeatureIdFfCapacitiveDisplay)&&
- iInputLanguage == ELangArabic)
+ TInt supportMode = EPluginInputModeNone;
+ if(KErrNone == iConnectErr)
{
- res = EFalse;
+ supportMode = iPenInputServer.SupportInputMode();
}
+
+ TBool supportHWR = EFalse;
+ if(supportMode & EPluginInputModeHwr ||
+ supportMode & EPluginInputModeFSc ||
+ supportMode & EPluginInputModeFingerHwr)
+ {
+ supportHWR = ETrue;
+ }
+
+ res = ( !ChineseLanguage() && !JapaneseLanguage() && supportHWR);
}
break;
case EGSInputpenIdRecognitionWithDictionary:
{
- res = EFalse;//item is useless after updating arabic hwr engine.
-// TInt currentLanguage = InputLanguage(); // add this line
-// if (currentLanguage == ELangArabic)
-// {
-// res = ETrue;
-// }
+ TInt currentLanguage = InputLanguage(); // add this line
+ if (currentLanguage == ELangArabic)
+ {
+ res = ETrue;
+ }
}
break;
case EGSInputpenIdWritingSpeed:
case EGSInputpenIdPenTrailWidth:
- {
- if(IsSupportHWR())
- {
- res = ETrue;
- }
- if(FeatureManager::FeatureSupported(KFeatureIdFfCapacitiveDisplay)&&
- iInputLanguage == ELangArabic)
- {//Hide item in setting list in arabic finger hwr.
- res = EFalse;
- }
- }
- break;
case EGSInputpenIdPenTrailColour:
{
- if(IsSupportHWR())
+ TInt supportMode = EPluginInputModeNone;
+ if(KErrNone == iConnectErr)
+ {
+ supportMode = iPenInputServer.SupportInputMode();
+ }
+
+ if(supportMode & EPluginInputModeHwr ||
+ supportMode & EPluginInputModeFSc ||
+ supportMode & EPluginInputModeFingerHwr)
{
res = ETrue;
}
@@ -1415,25 +1407,4 @@
return EFalse;
}
-// ---------------------------------------------------------
-// Check if support hwr.
-// ---------------------------------------------------------
-//
-TBool CGSPenInputModel::IsSupportHWR()
- {
- TInt supportMode = EPluginInputModeNone;
- if(KErrNone == iConnectErr)
- {
- supportMode = iPenInputServer.SupportInputMode( iInputLanguage );
- }
-
- if( supportMode & EPluginInputModeHwr ||
- supportMode & EPluginInputModeFSc ||
- supportMode & EPluginInputModeFingerHwr)
- {
- return ETrue;
- }
- return EFalse;
- }
-
// End Of File