--- a/controlpanelplugins/langandregplugin/src/cplanguageview.cpp Thu Sep 30 16:15:53 2010 +0800
+++ b/controlpanelplugins/langandregplugin/src/cplanguageview.cpp Mon Oct 18 09:56:50 2010 +0800
@@ -137,7 +137,7 @@
* Create region item.
*/
HbDataFormModelItem *regionItem = new HbDataFormModelItem(HbDataFormModelItem::ComboBoxItem,
- hbTrId("Region"));
+ hbTrId("txt_cp_setlabel_region"));
int regionIndex = mSupportedRegions.indexOf(setting.regionId);
@@ -480,8 +480,22 @@
HbLocaleUtil::changeRegion(mCurrentSetting.regionId);
HbInputSettingProxy::instance()->setGlobalInputLanguage(mCurrentSetting.primaryWritingLan);
- //update combobox
- mCurrentPrimaryInputLanguageItem->setContentWidgetData("currentIndex",mPrimaryInputLanguages.indexOf(mCurrentSetting.primaryWritingLan));
+ //update index of primary writing language combobox
+ int primaryInputIndex = mPrimaryInputLanguages.indexOf(mCurrentSetting.primaryWritingLan); //exact match
+ if (primaryInputIndex < 0) { //exach match failed. partially match the language part.
+ for (int i = 0; i < mPrimaryInputLanguages.count();i++) {
+ if (mPrimaryInputLanguages.at(i).language() == mCurrentSetting.primaryWritingLan.language()) {
+ primaryInputIndex = i;
+ mCurrentSetting.primaryWritingLan = mPrimaryInputLanguages.at(i);
+ setting->primaryWritingLan = mPrimaryInputLanguages.at(i);
+ break;
+ }
+ }
+ }
+
+ mCurrentPrimaryInputLanguageItem->setContentWidgetData("currentIndex",primaryInputIndex);
+
+ //update index of region combobox
mCurrentRegionItem->setContentWidgetData("currentIndex",mSupportedRegions.indexOf(mCurrentSetting.regionId));
CPLANG_LOG(QString("Primary writing:") + HbInputSettingProxy::instance()->globalInputLanguage().asString());