diff --git a/java/src/com/android/inputmethod/latin/SuggestionsView.java b/java/src/com/android/inputmethod/latin/SuggestionsView.java
index 380e73bc034b75d5a426c9d7f76c6b08f6e569d6..f00f91107e36e2a2bffd5a077e9f5f4cde6f09a9 100644
--- a/java/src/com/android/inputmethod/latin/SuggestionsView.java
+++ b/java/src/com/android/inputmethod/latin/SuggestionsView.java
@@ -792,11 +792,10 @@ public class SuggestionsView extends RelativeLayout implements OnClickListener,
         final int translatedY = moreKeysPanel.translateY(y);
 
         if (mCheckingIfModalOrSlidingMode) {
-            final int deltaX = Math.abs(x - mOriginX);
-            final int deltaY = Math.abs(y - mOriginY);
-            if (deltaX >= mMoreSuggestionsModalTolerance
-                    || deltaY >= mMoreSuggestionsModalTolerance) {
-                // Decided to be in the sliding input mode
+            if (Math.abs(x - mOriginX) >= mMoreSuggestionsModalTolerance
+                    || mOriginY - y >= mMoreSuggestionsModalTolerance) {
+                // Decided to be in the sliding input mode only when the touch point has been moved
+                // upward.
                 mCheckingIfModalOrSlidingMode = false;
                 tracker.onShowMoreKeysPanel(
                         translatedX, translatedY, SystemClock.uptimeMillis(), moreKeysPanel);