aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorSatoshi Kataoka <satok@google.com>2013-09-25 08:09:58 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-09-25 08:09:58 -0700
commitdaa9eac90d627e807e24f99e169f8ed011e4b4c3 (patch)
tree0998c733fac76d9a696ad5744d6157e6e6f4e8c5 /java
parent6460cc71cde6db3488805ffa0703343ec1d19d0a (diff)
parent9c3b2dbe3434fbe5117b66fa4911c8de0ea6bde6 (diff)
downloadlatinime-daa9eac90d627e807e24f99e169f8ed011e4b4c3.tar.gz
latinime-daa9eac90d627e807e24f99e169f8ed011e4b4c3.tar.xz
latinime-daa9eac90d627e807e24f99e169f8ed011e4b4c3.zip
am 9c3b2dbe: Fix emoji state
* commit '9c3b2dbe3434fbe5117b66fa4911c8de0ea6bde6': Fix emoji state
Diffstat (limited to 'java')
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java11
1 files changed, 8 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
index b3491d807..9f9fdaa6f 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardState.java
@@ -585,7 +585,7 @@ public final class KeyboardState {
}
}
- private static boolean isSpaceCharacter(final int c) {
+ private static boolean isSpaceOrEnter(final int c) {
return c == Constants.CODE_SPACE || c == Constants.CODE_ENTER;
}
@@ -614,7 +614,12 @@ public final class KeyboardState {
}
break;
case SWITCH_STATE_SYMBOL_BEGIN:
- if (!isSpaceCharacter(code) && (Constants.isLetterCode(code)
+ if (mIsEmojiMode) {
+ // When in the Emoji keyboard, we don't want to switch back to the main layout even
+ // after the user hits an emoji letter followed by an enter or a space.
+ break;
+ }
+ if (!isSpaceOrEnter(code) && (Constants.isLetterCode(code)
|| code == Constants.CODE_OUTPUT_TEXT)) {
mSwitchState = SWITCH_STATE_SYMBOL;
}
@@ -622,7 +627,7 @@ public final class KeyboardState {
case SWITCH_STATE_SYMBOL:
// Switch back to alpha keyboard mode if user types one or more non-space/enter
// characters followed by a space/enter.
- if (isSpaceCharacter(code)) {
+ if (isSpaceOrEnter(code)) {
toggleAlphabetAndSymbols();
mPrevSymbolsKeyboardWasShifted = false;
}