aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorSvetoslav Ganov <svetoslavganov@google.com>2011-11-22 15:00:00 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2011-11-22 15:00:00 -0800
commit6808825a5fcd6aeb228d92a3ca953a84cad69108 (patch)
tree550881c32bf67354dee3f8ef134dab005755bf96 /java/src
parent4ff8d47c141317998d0a18aee224fb0b16fc80ee (diff)
parent3b82e8163c173b219320e78b96507f34e0a805c9 (diff)
downloadlatinime-6808825a5fcd6aeb228d92a3ca953a84cad69108.tar.gz
latinime-6808825a5fcd6aeb228d92a3ca953a84cad69108.tar.xz
latinime-6808825a5fcd6aeb228d92a3ca953a84cad69108.zip
am 3b82e816: Merge "Fixed typing uppercase letters when touch exploration is enabled."
* commit '3b82e8163c173b219320e78b96507f34e0a805c9': Fixed typing uppercase letters when touch exploration is enabled.
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/accessibility/KeyCodeDescriptionMapper.java21
1 files changed, 11 insertions, 10 deletions
diff --git a/java/src/com/android/inputmethod/accessibility/KeyCodeDescriptionMapper.java b/java/src/com/android/inputmethod/accessibility/KeyCodeDescriptionMapper.java
index 7302830d4..e01262c20 100644
--- a/java/src/com/android/inputmethod/accessibility/KeyCodeDescriptionMapper.java
+++ b/java/src/com/android/inputmethod/accessibility/KeyCodeDescriptionMapper.java
@@ -136,16 +136,14 @@ public class KeyCodeDescriptionMapper {
if (!TextUtils.isEmpty(key.mLabel)) {
final String label = key.mLabel.toString().trim();
+ // First, attempt to map the label to a pre-defined description.
if (mKeyLabelMap.containsKey(label)) {
return context.getString(mKeyLabelMap.get(label));
- } else if (label.length() == 1
- || (keyboard.isManualTemporaryUpperCase() && !TextUtils
- .isEmpty(key.mHintLabel))) {
- return getDescriptionForKeyCode(context, keyboard, key, shouldObscure);
- } else {
- return label;
}
- } else if (key.mCode != Keyboard.CODE_DUMMY) {
+ }
+
+ // Just attempt to speak the description.
+ if (key.mCode != Keyboard.CODE_DUMMY) {
return getDescriptionForKeyCode(context, keyboard, key, shouldObscure);
}
@@ -187,11 +185,14 @@ public class KeyCodeDescriptionMapper {
* @return the key code for the specified key
*/
private int getCorrectKeyCode(Keyboard keyboard, Key key) {
- if (keyboard.isManualTemporaryUpperCase() && !TextUtils.isEmpty(key.mHintLabel)) {
+ // If keyboard is in manual temporary upper case state and key has
+ // manual temporary uppercase letter as key hint letter, alternate
+ // character code should be sent.
+ if (keyboard.isManualTemporaryUpperCase() && key.hasUppercaseLetter()
+ && !TextUtils.isEmpty(key.mHintLabel)) {
return key.mHintLabel.charAt(0);
- } else {
- return key.mCode;
}
+ return key.mCode;
}
/**