summaryrefslogtreecommitdiffstats
path: root/core/java/android/view/KeyCharacterMap.java
diff options
context:
space:
mode:
authorJeff Brown <jeffbrown@google.com>2010-12-13 10:33:20 -0800
committerJeff Brown <jeffbrown@google.com>2010-12-13 18:31:13 -0800
commit28cbf4bd5c204f0493a6fa448a259ec056dcc29e (patch)
tree90b8070c13aaa66749d2660732b7a29944ca2c93 /core/java/android/view/KeyCharacterMap.java
parent97d2dadffeb4f4b2345b0b879708411fd8c1155c (diff)
downloadframeworks_base-28cbf4bd5c204f0493a6fa448a259ec056dcc29e.zip
frameworks_base-28cbf4bd5c204f0493a6fa448a259ec056dcc29e.tar.gz
frameworks_base-28cbf4bd5c204f0493a6fa448a259ec056dcc29e.tar.bz2
Make framework modifier key handling more precise.
Change-Id: I0cc2276b31f882170aea575288f607a3a4ee05d4
Diffstat (limited to 'core/java/android/view/KeyCharacterMap.java')
-rw-r--r--core/java/android/view/KeyCharacterMap.java16
1 files changed, 3 insertions, 13 deletions
diff --git a/core/java/android/view/KeyCharacterMap.java b/core/java/android/view/KeyCharacterMap.java
index 5c4abd5..7ca5a19 100644
--- a/core/java/android/view/KeyCharacterMap.java
+++ b/core/java/android/view/KeyCharacterMap.java
@@ -208,7 +208,7 @@ public class KeyCharacterMap {
* @return The associated character or combining accent, or 0 if none.
*/
public int get(int keyCode, int metaState) {
- metaState = applyLockedModifiers(metaState);
+ metaState = KeyEvent.normalizeMetaState(metaState);
char ch = nativeGetCharacter(mPtr, keyCode, metaState);
int map = COMBINING.get(ch);
@@ -243,7 +243,7 @@ public class KeyCharacterMap {
throw new IllegalArgumentException("fallbackAction must not be null");
}
- metaState = applyLockedModifiers(metaState);
+ metaState = KeyEvent.normalizeMetaState(metaState);
return nativeGetFallbackAction(mPtr, keyCode, metaState, outFallbackAction);
}
@@ -303,7 +303,7 @@ public class KeyCharacterMap {
throw new IllegalArgumentException("chars must not be null.");
}
- metaState = applyLockedModifiers(metaState);
+ metaState = KeyEvent.normalizeMetaState(metaState);
return nativeGetMatch(mPtr, keyCode, chars, metaState);
}
@@ -536,16 +536,6 @@ public class KeyCharacterMap {
return ret;
}
- private static int applyLockedModifiers(int metaState) {
- if ((metaState & MetaKeyKeyListener.META_CAP_LOCKED) != 0) {
- metaState |= KeyEvent.META_CAPS_LOCK_ON;
- }
- if ((metaState & MetaKeyKeyListener.META_ALT_LOCKED) != 0) {
- metaState |= KeyEvent.META_ALT_ON;
- }
- return metaState;
- }
-
/**
* Maps Unicode combining diacritical to display-form dead key
* (display character shifted left 16 bits).