Do not re-calculate primary code in WordComposer
Bug: 4343280
Test: Ib43c0f1d1a19d067ea0
Change-Id: I3393a6099cb7fb824994f4656ccfef884f9c6bc4
diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java
index 7c3d3c2..ac93045 100644
--- a/java/src/com/android/inputmethod/latin/WordComposer.java
+++ b/java/src/com/android/inputmethod/latin/WordComposer.java
@@ -139,9 +139,8 @@
keyX = x;
keyY = y;
} else {
- final Key key = keyDetector.detectHitKey(x, y);
// TODO: Pass an integer instead of an integer array
- codes = new int[] { key != null ? key.mCode : NOT_A_CODE };
+ codes = new int[] { primaryCode };
keyX = keyDetector.getTouchX(x);
keyY = keyDetector.getTouchY(y);
}
@@ -158,7 +157,8 @@
mTypedWord.appendCodePoint(primaryCode);
refreshSize();
if (newIndex < BinaryDictionary.MAX_WORD_LENGTH) {
- mPrimaryKeyCodes[newIndex] = codes[0];
+ mPrimaryKeyCodes[newIndex] = primaryCode >= Keyboard.CODE_SPACE
+ ? Character.toLowerCase(primaryCode) : primaryCode;
mXCoordinates[newIndex] = keyX;
mYCoordinates[newIndex] = keyY;
}