diff options
author | 2010-10-26 19:04:48 +0900 | |
---|---|---|
committer | 2010-10-26 20:00:21 +0900 | |
commit | 276845c7a9ea90fd34289d060873c8e3a7ed342c (patch) | |
tree | 7c1911435c5e9df02e718511c9b7a8af0a2a92c2 /java/src/com/android/inputmethod/latin/ModifierKeyState.java | |
parent | eec7bb9386795a740ebbfce39792694373c1c869 (diff) | |
download | latinime-276845c7a9ea90fd34289d060873c8e3a7ed342c.tar.gz latinime-276845c7a9ea90fd34289d060873c8e3a7ed342c.tar.xz latinime-276845c7a9ea90fd34289d060873c8e3a7ed342c.zip |
Follow-up change to revise Caps Lock sequence.
bug: 3122877
Change-Id: I44c539d7c041443f3ad027de4b75a67adf6b2c87
Diffstat (limited to 'java/src/com/android/inputmethod/latin/ModifierKeyState.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/ModifierKeyState.java | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/latin/ModifierKeyState.java b/java/src/com/android/inputmethod/latin/ModifierKeyState.java index 097e87abe..75820e7d3 100644 --- a/java/src/com/android/inputmethod/latin/ModifierKeyState.java +++ b/java/src/com/android/inputmethod/latin/ModifierKeyState.java @@ -19,7 +19,9 @@ package com.android.inputmethod.latin; class ModifierKeyState { private static final int RELEASING = 0; private static final int PRESSING = 1; - private static final int MOMENTARY = 2; + private static final int PRESSING_ON_SHIFTED = 2; // both temporary shifted & shift locked + private static final int MOMENTARY = 3; + private static final int IGNORING = 4; private int mState = RELEASING; @@ -27,16 +29,31 @@ class ModifierKeyState { mState = PRESSING; } + public void onPressOnShifted() { + mState = PRESSING_ON_SHIFTED; + } + public void onRelease() { mState = RELEASING; } public void onOtherKeyPressed() { - if (mState == PRESSING) + if (mState == PRESSING) { mState = MOMENTARY; + } else if (mState == PRESSING_ON_SHIFTED) { + mState = IGNORING; + } } public boolean isMomentary() { return mState == MOMENTARY; } + + public boolean isPressingOnShifted() { + return mState == PRESSING_ON_SHIFTED; + } + + public boolean isIgnoring() { + return mState == IGNORING; + } } |