diff options
author | 2013-10-03 13:20:29 -0700 | |
---|---|---|
committer | 2013-10-03 13:20:29 -0700 | |
commit | 90394a361be5d8283cd5d2793db351985bfba2bc (patch) | |
tree | f46f051bb7733b25d5c59d9b40be6804bf07555d /java/src | |
parent | aca3b7a89917ddd8cb5399308a280160311a8d58 (diff) | |
parent | 73575763f69018edd895d120be63fba551f0f5ab (diff) | |
download | latinime-90394a361be5d8283cd5d2793db351985bfba2bc.tar.gz latinime-90394a361be5d8283cd5d2793db351985bfba2bc.tar.xz latinime-90394a361be5d8283cd5d2793db351985bfba2bc.zip |
am 73575763: am daa9eac9: am 9c3b2dbe: Fix emoji state
* commit '73575763f69018edd895d120be63fba551f0f5ab':
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; } |