Follow-up fix for I68c667b0
Should have preserved the logic of LatinKeyboard.getNearestKeys().
Change-Id: I97b05aa24006402be03088a215fa07abda9477df
diff --git a/java/src/com/android/inputmethod/keyboard/Keyboard.java b/java/src/com/android/inputmethod/keyboard/Keyboard.java
index 9f4b881..d9d28f1 100644
--- a/java/src/com/android/inputmethod/keyboard/Keyboard.java
+++ b/java/src/com/android/inputmethod/keyboard/Keyboard.java
@@ -403,7 +403,10 @@
* point is out of range, then an array of size zero is returned.
*/
public Key[] getNearestKeys(int x, int y) {
- return mProximityInfo.getNearestKeys(x, y);
+ // Avoid dead pixels at edges of the keyboard
+ final int adjustedX = Math.max(0, Math.min(x, mOccupiedWidth - 1));
+ final int adjustedY = Math.max(0, Math.min(y, mOccupiedHeight - 1));
+ return mProximityInfo.getNearestKeys(adjustedX, adjustedY);
}
public static String printableCode(int code) {