aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/keyboard/PointerTracker.java23
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java9
2 files changed, 20 insertions, 12 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
index d9a520917..20a299e49 100644
--- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java
+++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
@@ -777,6 +777,15 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
mDrawingProxy.showGesturePreviewTrail(this, isOldestTrackerInQueue(this));
}
+ private void cancelBatchInput() {
+ sPointerTrackerQueue.cancelAllPointerTracker();
+ sInGesture = false;
+ if (DEBUG_LISTENER) {
+ Log.d(TAG, String.format("[%d] onCancelBatchInput", mPointerId));
+ }
+ mListener.onCancelBatchInput();
+ }
+
public void processMotionEvent(final int action, final int x, final int y, final long eventTime,
final KeyEventHandler handler) {
switch (action) {
@@ -892,12 +901,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
final boolean onValidArea = mGestureStrokeWithPreviewPoints.addPointOnKeyboard(
x, y, gestureTime, isMajorEvent);
if (!onValidArea) {
- sPointerTrackerQueue.cancelAllPointerTracker();
- if (DEBUG_LISTENER) {
- Log.d(TAG, String.format("[%d] onCancelBatchInput: batchPoints=%d",
- mPointerId, sAggregratedPointers.getPointerSize()));
- }
- mListener.onCancelBatchInput();
+ cancelBatchInput();
return;
}
mayStartBatchInput(key);
@@ -1162,8 +1166,11 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
printTouchEvent("onCancelEvt:", x, y, eventTime);
}
- sPointerTrackerQueue.releaseAllPointersExcept(this, eventTime);
- sPointerTrackerQueue.remove(this);
+ if (sInGesture) {
+ cancelBatchInput();
+ }
+ sPointerTrackerQueue.cancelAllPointerTracker();
+ sPointerTrackerQueue.releaseAllPointers(eventTime);
onCancelEventInternal();
}
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 3935f99ab..305f38d8c 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -1553,13 +1553,14 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
private void showGesturePreviewAndSuggestionStrip(final SuggestedWords suggestedWords,
final boolean dismissGestureFloatingPreviewText) {
- final String batchInputText = suggestedWords.isEmpty()
- ? null : suggestedWords.getWord(0);
- final KeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
- mainKeyboardView.showGestureFloatingPreviewText(batchInputText);
showSuggestionStrip(suggestedWords, null);
+ final KeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
if (dismissGestureFloatingPreviewText) {
mainKeyboardView.dismissGestureFloatingPreviewText();
+ } else {
+ final String batchInputText = suggestedWords.isEmpty()
+ ? null : suggestedWords.getWord(0);
+ mainKeyboardView.showGestureFloatingPreviewText(batchInputText);
}
}