diff options
author | 2013-10-03 10:15:59 -0700 | |
---|---|---|
committer | 2013-10-03 10:15:59 -0700 | |
commit | 73575763f69018edd895d120be63fba551f0f5ab (patch) | |
tree | f46f051bb7733b25d5c59d9b40be6804bf07555d /java/src | |
parent | 7b94f85acc2e345c7b9892eaae20924ab808f084 (diff) | |
parent | daa9eac90d627e807e24f99e169f8ed011e4b4c3 (diff) | |
download | latinime-73575763f69018edd895d120be63fba551f0f5ab.tar.gz latinime-73575763f69018edd895d120be63fba551f0f5ab.tar.xz latinime-73575763f69018edd895d120be63fba551f0f5ab.zip |
am daa9eac9: am 9c3b2dbe: Fix emoji state
* commit 'daa9eac90d627e807e24f99e169f8ed011e4b4c3':
Fix emoji state
Diffstat (limited to 'java/src')
-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; } |