Bugfix: IME gives haptic feedback when button wasn't pressed
bug: 3142416
Change-Id: If7630b89d6c2a8ec38e191c263c03f8f11d3c498
diff --git a/java/src/com/android/inputmethod/latin/PointerTracker.java b/java/src/com/android/inputmethod/latin/PointerTracker.java
index 448e279..f6fd5bd 100644
--- a/java/src/com/android/inputmethod/latin/PointerTracker.java
+++ b/java/src/com/android/inputmethod/latin/PointerTracker.java
@@ -272,11 +272,12 @@
mIsRepeatableKey = false;
checkMultiTap(eventTime, keyIndex);
if (mListener != null) {
- int primaryCode = isValidKeyIndex(keyIndex) ? mKeys[keyIndex].codes[0] : 0;
- mListener.onPress(primaryCode);
- // This onPress call may have changed keyboard layout and have updated mKeyIndex.
- // If that's the case, mKeyIndex has been updated in setKeyboard().
- keyIndex = mKeyState.getKeyIndex();
+ if (isValidKeyIndex(keyIndex)) {
+ mListener.onPress(mKeys[keyIndex].codes[0]);
+ // This onPress call may have changed keyboard layout and have updated mKeyIndex.
+ // If that's the case, mKeyIndex has been updated in setKeyboard().
+ keyIndex = mKeyState.getKeyIndex();
+ }
}
if (isValidKeyIndex(keyIndex)) {
if (mKeys[keyIndex].repeatable) {