diff options
Diffstat (limited to 'java/src/com/android/inputmethod/latin')
3 files changed, 20 insertions, 18 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index db57044e9..8a26d2b9e 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -713,9 +713,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen mSuggest.setAutoCorrectionThreshold(mSettingsValues.mAutoCorrectionThreshold); } - if (mSubtypeSwitcher.isKeyboardMode()) { - switcher.loadKeyboard(editorInfo, mSettingsValues); - } + switcher.loadKeyboard(editorInfo, mSettingsValues); if (mSuggestionsView != null) mSuggestionsView.clear(); diff --git a/java/src/com/android/inputmethod/latin/SubtypeLocale.java b/java/src/com/android/inputmethod/latin/SubtypeLocale.java index ba67f3358..fac74f0b5 100644 --- a/java/src/com/android/inputmethod/latin/SubtypeLocale.java +++ b/java/src/com/android/inputmethod/latin/SubtypeLocale.java @@ -18,6 +18,7 @@ package com.android.inputmethod.latin; import android.content.Context; import android.content.res.Resources; +import android.view.inputmethod.InputMethodSubtype; import java.util.Locale; @@ -120,4 +121,14 @@ public class SubtypeLocale { // - It also does not work with unicode surrogate code points. return s.toUpperCase(locale).charAt(0) + s.substring(1); } + + public static String getSubtypeLocaleString(InputMethodSubtype subtype) { + final String keyboardLocale = subtype.getExtraValueOf( + LatinIME.SUBTYPE_EXTRA_VALUE_KEYBOARD_LOCALE); + return keyboardLocale != null ? keyboardLocale : subtype.getLocale(); + } + + public static Locale getSubtypeLocale(InputMethodSubtype subtype) { + return LocaleUtils.constructLocaleFromString(getSubtypeLocaleString(subtype)); + } } diff --git a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java index 7541bd31b..3ed7f8700 100644 --- a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java +++ b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java @@ -419,30 +419,23 @@ public class SubtypeSwitcher { } } - public boolean isKeyboardMode() { + // TODO: Remove this method + private boolean isKeyboardMode() { return KEYBOARD_MODE.equals(getCurrentSubtypeMode()); } - ///////////////////////////// - // Other utility functions // - ///////////////////////////// - - public String getCurrentSubtypeExtraValue() { - // If null, return what an empty ExtraValue would return : the empty string. - return mCurrentSubtype.getExtraValue(); + // TODO: Remove this method + private String getCurrentSubtypeMode() { + return mCurrentSubtype.getMode(); } + // TODO: Remove this method public boolean currentSubtypeContainsExtraValueKey(String key) { // If null, return what an empty ExtraValue would return : false. return mCurrentSubtype.containsExtraValueKey(key); } - public String getCurrentSubtypeExtraValueOf(String key) { - // If null, return what an empty ExtraValue would return : null. - return mCurrentSubtype.getExtraValueOf(key); - } - - public String getCurrentSubtypeMode() { - return mCurrentSubtype.getMode(); + public InputMethodSubtype getCurrentSubtype() { + return mCurrentSubtype; } } |