aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2012-09-13 18:54:30 +0900
committerTadashi G. Takaoka <takaoka@google.com>2012-09-13 19:07:09 +0900
commit350fab6dc4d4d4aec272056004cbb5c039f5bf37 (patch)
tree0f8b437ad2d13e68abb8a02a05d78c904c33420e /java/src
parent737e9150935e1058b2d7d6adcd1b7857fa7c37ca (diff)
downloadlatinime-350fab6dc4d4d4aec272056004cbb5c039f5bf37.tar.gz
latinime-350fab6dc4d4d4aec272056004cbb5c039f5bf37.tar.xz
latinime-350fab6dc4d4d4aec272056004cbb5c039f5bf37.zip
Fix gesture floating preview on up event
This is a follow up of Iddb26ba1. Bug: 7119032 Change-Id: Ibbc94a1a4880ca31bd8aeece89893691b14acc4d
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/keyboard/PointerTracker.java24
1 files changed, 12 insertions, 12 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
index e762b23c6..2417d6e96 100644
--- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java
+++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
@@ -545,12 +545,15 @@ public class PointerTracker implements PointerTrackerQueue.Element {
}
private void startBatchInput() {
- if (DEBUG_LISTENER) {
- Log.d(TAG, "onStartBatchInput");
+ if (!sInGesture && mGestureStrokeWithPreviewTrail.isStartOfAGesture()) {
+ if (DEBUG_LISTENER) {
+ Log.d(TAG, "onStartBatchInput");
+ }
+ sInGesture = true;
+ mListener.onStartBatchInput();
}
- sInGesture = true;
- mListener.onStartBatchInput();
- mDrawingProxy.showGesturePreviewTrail(this, true /* isOldestTracker */);
+ final boolean isOldestTracker = sPointerTrackerQueue.getOldestElement() == this;
+ mDrawingProxy.showGesturePreviewTrail(this, isOldestTracker);
}
private void updateBatchInput(final long eventTime) {
@@ -585,7 +588,8 @@ public class PointerTracker implements PointerTrackerQueue.Element {
clearBatchInputPointsOfAllPointerTrackers();
}
}
- mDrawingProxy.showGesturePreviewTrail(this, true /* isOldestTracker */);
+ final boolean isOldestTracker = sPointerTrackerQueue.getOldestElement() == this;
+ mDrawingProxy.showGesturePreviewTrail(this, isOldestTracker);
}
private static void abortBatchInput() {
@@ -721,12 +725,8 @@ public class PointerTracker implements PointerTrackerQueue.Element {
final boolean isHistorical, final Key key) {
final int gestureTime = (int)(eventTime - sGestureFirstDownTime);
if (mIsDetectingGesture) {
- final GestureStroke stroke = mGestureStrokeWithPreviewTrail;
- stroke.addPoint(x, y, gestureTime, isHistorical);
- if (!sInGesture && stroke.isStartOfAGesture()) {
- startBatchInput();
- }
-
+ mGestureStrokeWithPreviewTrail.addPoint(x, y, gestureTime, isHistorical);
+ startBatchInput();
if (sInGesture && key != null) {
updateBatchInput(eventTime);
}