diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index ea3940e..967e72b 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -1330,12 +1330,6 @@
     }
 
     // TODO[IL]: Define a clear interface for this
-    public void clearSuggestionStrip() {
-        setSuggestedWords(SuggestedWords.EMPTY);
-        setAutoCorrectionIndicator(false);
-    }
-
-    // TODO[IL]: Define a clear interface for this
     public void setSuggestedWords(final SuggestedWords words) {
         mInputLogic.mSuggestedWords = words;
         if (mSuggestionStripView != null) {
@@ -1432,10 +1426,12 @@
 
     private void showSuggestionStripWithTypedWord(final SuggestedWords suggestedWords,
             final String typedWord) {
+        // TODO: refactor this
         if (suggestedWords.isEmpty()) {
             // No auto-correction is available, clear the cached values.
             AccessibilityUtils.getInstance().setAutoCorrection(SuggestedWords.EMPTY, typedWord);
-            clearSuggestionStrip();
+            setSuggestedWords(SuggestedWords.EMPTY);
+            setAutoCorrectionIndicator(false);
             return;
         }
         final String autoCorrection;
