summaryrefslogtreecommitdiff
path: root/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2011-12-08 05:55:16 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-12-08 05:55:16 -0800
commitd52e76053031f282279112fbc6136bb9ccd643a6 (patch)
treebc4d530ad41cf56737711fb49aa3088a5176fbd3 /java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
parent92e5756dfb4c2d5f0ebd2da53ba1a8fd9f633721 (diff)
parent6ad9b012d947458155609e418aaeb3904cf27f6f (diff)
Merge "Cleanup KeyboardSwitcher a bit"
Diffstat (limited to 'java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java')
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java15
1 files changed, 14 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
index ee5ef9164..95c9162ef 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
@@ -57,6 +57,7 @@ public class KeyboardState {
private final SwitchActions mSwitchActions;
private final SavedKeyboardState mSavedKeyboardState = new SavedKeyboardState();
+ private boolean mPrevMainKeyboardWasShiftLocked;
private static class SavedKeyboardState {
public boolean mIsValid;
@@ -75,6 +76,8 @@ public class KeyboardState {
mKeyboardShiftState.setShiftLocked(false);
mShiftKeyState.onRelease();
mSymbolKeyState.onRelease();
+ mPrevMainKeyboardWasShiftLocked = false;
+ onRestoreKeyboardState();
}
// TODO: Get rid of isAlphabetMode and isSymbolShifted arguments.
@@ -95,7 +98,7 @@ public class KeyboardState {
}
}
- public void onRestoreKeyboardState() {
+ private void onRestoreKeyboardState() {
final SavedKeyboardState state = mSavedKeyboardState;
if (DEBUG_STATE) {
Log.d(TAG, "restore: valid=" + state.mIsValid + " alphabet=" + state.mIsAlphabetMode
@@ -183,6 +186,16 @@ public class KeyboardState {
}
}
+ public void onRestoreShiftLockState() {
+ mSwitchActions.setShiftLocked(mPrevMainKeyboardWasShiftLocked);
+ mPrevMainKeyboardWasShiftLocked = false;
+ }
+
+ public void onSaveShiftLockState() {
+ mPrevMainKeyboardWasShiftLocked = isShiftLocked();
+ }
+
+ // TODO: Remove this method.
public void onReleaseCapsLock() {
mShiftKeyState.onRelease();
}