diff options
author | 2012-01-26 18:25:48 +0900 | |
---|---|---|
committer | 2012-01-26 18:25:48 +0900 | |
commit | 757f8d96eea3dfb5951243d2ebb4b763db868471 (patch) | |
tree | ffe10bf1eb262cfdf8e372cebc1b1143f9d661e7 /java/src | |
parent | 736d740aa5966ad945d0f3ebdb48cebdfdd1ea16 (diff) | |
download | latinime-757f8d96eea3dfb5951243d2ebb4b763db868471.tar.gz latinime-757f8d96eea3dfb5951243d2ebb4b763db868471.tar.xz latinime-757f8d96eea3dfb5951243d2ebb4b763db868471.zip |
Add KeyboardState.SwitchActions.setAlphabetShiftLockShifted
Change-Id: I6c49d8eb0a8272840ff03e0940d88a31c3d20bd9
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java | 12 | ||||
-rw-r--r-- | java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java | 15 |
2 files changed, 19 insertions, 8 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java index 1398bae2a..5a59cc1c7 100644 --- a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java @@ -240,6 +240,7 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, private static final int ALPHABET_MANUAL_SHIFTED = 1; private static final int ALPHABET_AUTOMATIC_SHIFTED = 2; private static final int ALPHABET_SHIFT_LOCKED = 3; + private static final int ALPHABET_SHIFT_LOCK_SHIFTED = 4; // TODO: Remove this method. private void updateAlphabetKeyboardShiftState(int shiftMode) { @@ -260,6 +261,10 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, case ALPHABET_SHIFT_LOCKED: keyboard.setShiftLocked(true); break; + case ALPHABET_SHIFT_LOCK_SHIFTED: + keyboard.setShiftLocked(true); + keyboard.setShifted(true); + break; } mKeyboardView.invalidateAllKeys(); if (shiftMode != ALPHABET_SHIFT_LOCKED) { @@ -300,6 +305,13 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, // Implements {@link KeyboardState.SwitchActions}. @Override + public void setAlphabetShiftLockShiftedKeyboard() { + setKeyboard(mKeyboardSet.getMainKeyboard()); + updateAlphabetKeyboardShiftState(ALPHABET_SHIFT_LOCK_SHIFTED); + } + + // Implements {@link KeyboardState.SwitchActions}. + @Override public void setSymbolsKeyboard() { setKeyboard(mKeyboardSet.getSymbolsKeyboard()); } diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java index 38c31adce..a89356c50 100644 --- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java +++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java @@ -43,8 +43,7 @@ public class KeyboardState { public void setAlphabetManualShiftedKeyboard(); public void setAlphabetAutomaticShiftedKeyboard(); public void setAlphabetShiftLockedKeyboard(); - // TODO: Add this. - //public void setAlphabetShiftLockShiftedKeyboard(); + public void setAlphabetShiftLockShiftedKeyboard(); public void setSymbolsKeyboard(); public void setSymbolsShiftedKeyboard(); @@ -157,14 +156,10 @@ public class KeyboardState { } } - // TODO: Remove this method. - public boolean isShiftLocked() { - return mAlphabetShiftState.isShiftLocked(); - } - private static final int UNSHIFT = 0; private static final int MANUAL_SHIFT = 1; private static final int AUTOMATIC_SHIFT = 2; + private static final int SHIFT_LOCK_SHIFTED = 3; private void setShifted(int shiftMode) { if (DEBUG_ACTION) { @@ -198,6 +193,10 @@ public class KeyboardState { mSwitchActions.setAlphabetKeyboard(); } break; + case SHIFT_LOCK_SHIFTED: + mAlphabetShiftState.setShifted(true); + mSwitchActions.setAlphabetShiftLockShiftedKeyboard(); + break; } } @@ -349,7 +348,7 @@ public class KeyboardState { if (mAlphabetShiftState.isShiftLocked()) { // Shift key is pressed while caps lock state, we will treat this state as shifted // caps lock state and mark as if shift key pressed while normal state. - setShifted(MANUAL_SHIFT); + setShifted(SHIFT_LOCK_SHIFTED); mShiftKeyState.onPress(); } else if (mAlphabetShiftState.isAutomaticTemporaryUpperCase()) { // Shift key is pressed while automatic temporary upper case, we have to move to |