Merge "Fixing follow-up to I548d899b"
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 6fcac9a..9ef2739 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -968,6 +968,13 @@
                 // text, but that is probably too expensive to do, so we decided to leave things
                 // as is.
                 resetEntireInputState(newSelStart);
+            } else {
+                // resetEntireInputState calls resetCachesUponCursorMove, but with the second
+                // argument as true. But in all cases where we don't reset the entire input state,
+                // we still want to tell the rich input connection about the new cursor position so
+                // that it can update its caches.
+                mConnection.resetCachesUponCursorMove(newSelStart,
+                        false /* shouldFinishComposition */);
             }
 
             // We moved the cursor. If we are touching a word, we need to resume suggestion,
@@ -975,7 +982,6 @@
             if (isSuggestionsStripVisible()) {
                 mHandler.postResumeSuggestions();
             }
-            mConnection.userMovedCursor(newSelEnd);
             // Reset the last recapitalization.
             mRecapitalizeStatus.deactivate();
             mKeyboardSwitcher.updateShiftState();
diff --git a/java/src/com/android/inputmethod/latin/RichInputConnection.java b/java/src/com/android/inputmethod/latin/RichInputConnection.java
index 6e3e7b2..5391b13 100644
--- a/java/src/com/android/inputmethod/latin/RichInputConnection.java
+++ b/java/src/com/android/inputmethod/latin/RichInputConnection.java
@@ -730,14 +730,6 @@
     }
 
     /**
-     * The user moved the cursor by hand. Take a note of it.
-     * @param newCursorPosition The new cursor position.
-     */
-    public void userMovedCursor(final int newCursorPosition) {
-        mCurrentCursorPosition = newCursorPosition;
-    }
-
-    /**
      * Looks at the text just before the cursor to find out if it looks like a URL.
      *
      * The weakest point here is, if we don't have enough text bufferized, we may fail to realize