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 16:30:13 +0900
committerTadashi G. Takaoka <takaoka@google.com>2011-12-08 22:50:46 +0900
commit6ad9b012d947458155609e418aaeb3904cf27f6f (patch)
tree225075db19fb35b834bbc2be3bf0703780a7bcf5 /java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
parentcf58f53a1ab53b427a3d9784502b47ba1833b018 (diff)
Cleanup KeyboardSwitcher a bit
* Move caps lock state preserving code to KeyboardState. * Merge KeyboardState.onLoadKeyboard and onRestoreKeyboardState. * Merge private methods into toggleShift and toggleKeyboardMode. Bug: 5708602 Change-Id: I793a934a0ba18d5750be011c52ebe20c1976eac6
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();
}