diff options
author | 2012-09-04 00:59:18 -0700 | |
---|---|---|
committer | 2012-09-04 00:59:18 -0700 | |
commit | f03590b3d33c4f5e12c27a54dc7b147a3a4e8f5d (patch) | |
tree | bbcb597f15a56d533e911a99a8d007ca582a5052 /java/src | |
parent | 8b6c25b3c83daa5226caf425eb8276d089b19aeb (diff) | |
parent | 6fa6e1c96ddbb8a0ac3849664acc3d07eb4908b7 (diff) | |
download | latinime-f03590b3d33c4f5e12c27a54dc7b147a3a4e8f5d.tar.gz latinime-f03590b3d33c4f5e12c27a54dc7b147a3a4e8f5d.tar.xz latinime-f03590b3d33c4f5e12c27a54dc7b147a3a4e8f5d.zip |
am 6fa6e1c9: am 147a62a8: Merge "Reduce amount of empty space in which keypresses are detected" into jb-mr1-dev
* commit '6fa6e1c96ddbb8a0ac3849664acc3d07eb4908b7':
Reduce amount of empty space in which keypresses are detected
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/keyboard/KeyDetector.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/KeyDetector.java b/java/src/com/android/inputmethod/keyboard/KeyDetector.java index 868c8cab5..f5686dcda 100644 --- a/java/src/com/android/inputmethod/keyboard/KeyDetector.java +++ b/java/src/com/android/inputmethod/keyboard/KeyDetector.java @@ -83,11 +83,17 @@ public class KeyDetector { int minDistance = Integer.MAX_VALUE; Key primaryKey = null; for (final Key key: mKeyboard.getNearestKeys(touchX, touchY)) { - final boolean isOnKey = key.isOnKey(touchX, touchY); + // An edge key always has its enlarged hitbox to respond to an event that occurred in + // the empty area around the key. (@see Key#markAsLeftEdge(KeyboardParams)} etc.) + if (!key.isOnKey(touchX, touchY)) { + continue; + } final int distance = key.squaredDistanceToEdge(touchX, touchY); + if (distance > minDistance) { + continue; + } // To take care of hitbox overlaps, we compare mCode here too. - if (primaryKey == null || distance < minDistance - || (distance == minDistance && isOnKey && key.mCode > primaryKey.mCode)) { + if (primaryKey == null || distance < minDistance || key.mCode > primaryKey.mCode) { minDistance = distance; primaryKey = key; } |