diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
index 2417d6e96056d1e993527c475f7a598dfb0b8106..a6439c46ade55d0dbc22590302ce2fd09249b87e 100644
--- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java
+++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
@@ -545,13 +545,14 @@ public class PointerTracker implements PointerTrackerQueue.Element {
     }
 
     private void startBatchInput() {
-        if (!sInGesture && mGestureStrokeWithPreviewTrail.isStartOfAGesture()) {
-            if (DEBUG_LISTENER) {
-                Log.d(TAG, "onStartBatchInput");
-            }
-            sInGesture = true;
-            mListener.onStartBatchInput();
+        if (sInGesture || !mGestureStrokeWithPreviewTrail.isStartOfAGesture()) {
+            return;
+        }
+        if (DEBUG_LISTENER) {
+            Log.d(TAG, "onStartBatchInput");
         }
+        sInGesture = true;
+        mListener.onStartBatchInput();
         final boolean isOldestTracker = sPointerTrackerQueue.getOldestElement() == this;
         mDrawingProxy.showGesturePreviewTrail(this, isOldestTracker);
     }