diff options
author | 2010-09-15 07:07:04 -0700 | |
---|---|---|
committer | 2010-09-15 07:07:04 -0700 | |
commit | b0b9f3b830805d076d40632e071baba4f87ef399 (patch) | |
tree | e946c01f26b0dc3484a820d6cec7305522106874 /java/src | |
parent | 53a68e7dcfaed08a79107612d441424fb8920272 (diff) | |
parent | b36a653ca65f3c26ba070a73b9d43beb57f620ee (diff) | |
download | latinime-b0b9f3b830805d076d40632e071baba4f87ef399.tar.gz latinime-b0b9f3b830805d076d40632e071baba4f87ef399.tar.xz latinime-b0b9f3b830805d076d40632e071baba4f87ef399.zip |
am b36a653c: am 12a4e08a: Handling multi-character uppercase key input
Merge commit 'b36a653ca65f3c26ba070a73b9d43beb57f620ee'
* commit 'b36a653ca65f3c26ba070a73b9d43beb57f620ee':
Handling multi-character uppercase key input
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinIME.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 8710b38d0..2ec5918e5 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -1347,14 +1347,21 @@ public class LatinIME extends InputMethodService } } if (mKeyboardSwitcher.getInputView().isShifted()) { - // TODO: This doesn't work with [beta], need to fix it in the next release. if (keyCodes == null || keyCodes[0] < Character.MIN_CODE_POINT || keyCodes[0] > Character.MAX_CODE_POINT) { return; } primaryCode = keyCodes[0]; - if (mKeyboardSwitcher.isAlphabetMode()) { - primaryCode = Character.toUpperCase(primaryCode); + if (mKeyboardSwitcher.isAlphabetMode() && Character.isLowerCase(primaryCode)) { + int upperCaseCode = Character.toUpperCase(primaryCode); + if (upperCaseCode != primaryCode) { + primaryCode = upperCaseCode; + } else { + // Some keys, such as [eszett], have upper case as multi-characters. + String upperCase = new String(new int[] {primaryCode}, 0, 1).toUpperCase(); + onText(upperCase); + return; + } } } if (mPredicting) { |