diff options
author | 2013-09-25 08:09:58 -0700 | |
---|---|---|
committer | 2013-09-25 08:09:58 -0700 | |
commit | daa9eac90d627e807e24f99e169f8ed011e4b4c3 (patch) | |
tree | 0998c733fac76d9a696ad5744d6157e6e6f4e8c5 /java | |
parent | 6460cc71cde6db3488805ffa0703343ec1d19d0a (diff) | |
parent | 9c3b2dbe3434fbe5117b66fa4911c8de0ea6bde6 (diff) | |
download | latinime-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.java | 11 |
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; } |