Don't cancel gesture typing while more keys keyboard is shown
Bug: 7964225
Change-Id: I4c572527b6f399282bdd963e38c147c7e69815ac
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
index 59a3c99..1ee87be 100644
--- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java
+++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
@@ -791,6 +791,7 @@
private void cancelBatchInput() {
sPointerTrackerQueue.cancelAllPointerTracker();
+ mIsDetectingGesture = false;
if (!sInGesture) {
return;
}
@@ -918,6 +919,7 @@
if (mIsDetectingGesture) {
final boolean onValidArea = mGestureStrokeWithPreviewPoints.addPointOnKeyboard(
x, y, gestureTime, isMajorEvent);
+ // If the move event goes out from valid batch input area, cancel batch input.
if (!onValidArea) {
cancelBatchInput();
return;
@@ -1196,6 +1198,9 @@
@Override
public void cancelTracking() {
+ if (isShowingMoreKeysPanel()) {
+ return;
+ }
mIsTrackingCanceled = true;
}