aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2013-05-15 12:35:25 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-05-15 12:35:25 -0700
commit62dd1ee3aab4844be50eb280e06626edcb5fff4b (patch)
treebbd58883912526754220f27eb713cf752c3e7671 /java/src
parent0a0b9fe27e1850c57651c64260f83eb1601cc37b (diff)
parent3c1a18c6a6540300aea96b3195920f5a1e159e09 (diff)
downloadlatinime-62dd1ee3aab4844be50eb280e06626edcb5fff4b.tar.gz
latinime-62dd1ee3aab4844be50eb280e06626edcb5fff4b.tar.xz
latinime-62dd1ee3aab4844be50eb280e06626edcb5fff4b.zip
am 3c1a18c6: am 7f8dd50b: Save automatic shift state while orientation changing
* commit '3c1a18c6a6540300aea96b3195920f5a1e159e09': Save automatic shift state while orientation changing
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
index b1d499702..71853f7ad 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
@@ -95,6 +95,8 @@ public final class KeyboardState {
static final class SavedKeyboardState {
public boolean mIsValid;
public boolean mIsAlphabetMode;
+ // TODO: Use <code>int</code> to represent saved shift state.
+ public boolean mIsAlphabetAutomaticShifted;
public boolean mIsAlphabetShiftLocked;
public boolean mIsShifted;
@@ -103,7 +105,8 @@ public final class KeyboardState {
if (!mIsValid) return "INVALID";
if (mIsAlphabetMode) {
if (mIsAlphabetShiftLocked) return "ALPHABET_SHIFT_LOCKED";
- return mIsShifted ? "ALPHABET_SHIFTED" : "ALPHABET";
+ return mIsAlphabetAutomaticShifted ? "ALPHABET_AUTOMATIC_SHIFTED"
+ : (mIsShifted ? "ALPHABET_SHIFTED" : "ALPHABET");
} else {
return mIsShifted ? "SYMBOLS_SHIFTED" : "SYMBOLS";
}
@@ -133,6 +136,7 @@ public final class KeyboardState {
state.mIsAlphabetMode = mIsAlphabetMode;
if (mIsAlphabetMode) {
state.mIsAlphabetShiftLocked = mAlphabetShiftState.isShiftLocked();
+ state.mIsAlphabetAutomaticShifted = mAlphabetShiftState.isAutomaticShifted();
state.mIsShifted = !state.mIsAlphabetShiftLocked
&& mAlphabetShiftState.isShiftedOrShiftLocked();
} else {
@@ -166,7 +170,8 @@ public final class KeyboardState {
if (state.mIsAlphabetMode) {
setShiftLocked(state.mIsAlphabetShiftLocked);
if (!state.mIsAlphabetShiftLocked) {
- setShifted(state.mIsShifted ? MANUAL_SHIFT : UNSHIFT);
+ setShifted(state.mIsAlphabetAutomaticShifted ? AUTOMATIC_SHIFT
+ : (state.mIsShifted ? MANUAL_SHIFT : UNSHIFT));
}
} else {
mPrevMainKeyboardWasShiftLocked = state.mIsAlphabetShiftLocked;