diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index c1dfde8..adebfc0 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -1325,11 +1325,6 @@
 
     // TODO[IL]: Define a clear interface for this
     public void setSuggestedWords(final SuggestedWords words, final boolean shouldShow) {
-        if (mSuggestionStripView != null) {
-            mSuggestionStripView.setSuggestions(
-                    words, SubtypeLocaleUtils.isRtlLanguage(mSubtypeSwitcher.getCurrentSubtype()));
-            mKeyboardSwitcher.onAutoCorrectionStateChanged(words.mWillAutoCorrect);
-        }
         mInputLogic.mSuggestedWords = words;
         final boolean newAutoCorrectionIndicator = words.mWillAutoCorrect;
         // Put a blue underline to a word in TextView which will be auto-corrected.
@@ -1344,7 +1339,12 @@
             // the practice.
             mInputLogic.mConnection.setComposingText(textWithUnderline, 1);
         }
-        setSuggestionStripShownInternal(shouldShow, true /* needsInputViewShown */);
+        if (mSuggestionStripView != null) {
+            mSuggestionStripView.setSuggestions(
+                    words, SubtypeLocaleUtils.isRtlLanguage(mSubtypeSwitcher.getCurrentSubtype()));
+            mKeyboardSwitcher.onAutoCorrectionStateChanged(words.mWillAutoCorrect);
+            setSuggestionStripShownInternal(shouldShow, true /* needsInputViewShown */);
+        }
     }
 
     // TODO[IL]: Move this out of LatinIME.
