diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 5dd42bf..fdd470c 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -2102,25 +2102,16 @@
     }
 
     private boolean isSuggestionsStripVisible() {
-        final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
-        if (null == mainKeyboardView || !mainKeyboardView.isShown()) {
+        if (mSuggestionStripView == null)
             return false;
-        }
-        if (mSuggestionStripView == null) {
-            return false;
-        }
-        if (mSuggestionStripView.isShowingAddToDictionaryHint()) {
+        if (mSuggestionStripView.isShowingAddToDictionaryHint())
             return true;
-        }
-        if (null == mSettings.getCurrent()) {
+        if (null == mSettings.getCurrent())
             return false;
-        }
-        if (!mSettings.getCurrent().isSuggestionStripVisibleInOrientation(mDisplayOrientation)) {
+        if (!mSettings.getCurrent().isSuggestionStripVisibleInOrientation(mDisplayOrientation))
             return false;
-        }
-        if (mSettings.getCurrent().isApplicationSpecifiedCompletionsOn()) {
+        if (mSettings.getCurrent().isApplicationSpecifiedCompletionsOn())
             return true;
-        }
         return mSettings.getCurrent().isSuggestionsRequested(mDisplayOrientation);
     }
 
