diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java index 32aabf92810ebe4f2e7145f7a6e9a71091c9b8d6..5ae044802d01741eab99c46ff88be1cb81d92689 100644 --- a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java @@ -205,6 +205,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha mMainKeyboardId = getKeyboardId(editorInfo, false, false, settingsValues); mSymbolsKeyboardId = getKeyboardId(editorInfo, true, false, settingsValues); mSymbolsShiftedKeyboardId = getKeyboardId(editorInfo, true, true, settingsValues); + mState.onLoadKeyboard(); mLayoutSwitchBackSymbols = mResources.getString(R.string.layout_switch_back_symbols); setKeyboard(getKeyboard(mSavedKeyboardState.getKeyboardId())); mSavedKeyboardState.restore(); diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java index fd7e77863f8cac8f48dc1ffd1310d81483e3ddba..b9450c643c5bdff15d52fa1a998c49104203def1 100644 --- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java +++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java @@ -27,6 +27,13 @@ public class KeyboardState { public KeyboardState() { } + public void onLoadKeyboard() { + mKeyboardShiftState.setShifted(false); + mKeyboardShiftState.setShiftLocked(false); + mShiftKeyState.onRelease(); + mSymbolKeyState.onRelease(); + } + public boolean isShiftLocked() { return mKeyboardShiftState.isShiftLocked(); }