Keep showing important notice when "show correction suggestions" is off

When
 1. The important notice message is shown on the suggestions strip.
 2. And the "Show correction suggestions" settings is off.
we will keep showing the important notice message on the suggestion
strip.

Bug: 13741460
Change-Id: I411007ab1e5e6959b6cdba7a6601a84635259313
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 1e1d109..aeae6aa 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -258,7 +258,8 @@
             if (latinIme == null) {
                 return;
             }
-            if (!latinIme.mSettings.getCurrent().isSuggestionStripVisible()) {
+            if (!latinIme.mSettings.getCurrent()
+                    .isCurrentOrientationAllowingSuggestionsPerUserSettings()) {
                 return;
             }
             removeMessages(MSG_RESUME_SUGGESTIONS);
@@ -1346,7 +1347,7 @@
                 currentSettings.mInputAttributes)) {
             return true;
         }
-        if (!currentSettings.isSuggestionStripVisible()) {
+        if (!currentSettings.isCurrentOrientationAllowingSuggestionsPerUserSettings()) {
             return false;
         }
         if (currentSettings.isApplicationSpecifiedCompletionsOn()) {
@@ -1391,8 +1392,14 @@
 
         final SettingsValues currentSettings = mSettings.getCurrent();
         final boolean showSuggestions;
-        if (SuggestedWords.EMPTY == suggestedWords || suggestedWords.isPunctuationSuggestions()
-                || !currentSettings.isSuggestionsRequested()) {
+        // May show the important notice when there are no suggestions to show,
+        if (SuggestedWords.EMPTY == suggestedWords
+                // or the suggestion strip is expected to show punctuation suggestions,
+                || suggestedWords.isPunctuationSuggestions()
+                // or it's not requested to show suggestions by the input field,
+                || !currentSettings.isSuggestionsRequested()
+                // or the "show correction suggestions" settings is off by users preference.
+                || !currentSettings.isCurrentOrientationAllowingSuggestionsPerUserSettings()) {
             showSuggestions = !mSuggestionStripView.maybeShowImportantNoticeTitle(
                     currentSettings.mInputAttributes);
         } else {
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index 23d65f1..4579369 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -1050,7 +1050,8 @@
                     }
                 }
             }
-            if (inputTransaction.mSettingsValues.isSuggestionStripVisible()
+            if (inputTransaction.mSettingsValues
+                    .isCurrentOrientationAllowingSuggestionsPerUserSettings()
                     && inputTransaction.mSettingsValues.mSpacingAndPunctuations
                             .mCurrentLanguageHasSpaces
                     && !mConnection.isCursorFollowedByWordCharacter(
diff --git a/java/src/com/android/inputmethod/latin/settings/SettingsValues.java b/java/src/com/android/inputmethod/latin/settings/SettingsValues.java
index 58ef75b..6c6e79e 100644
--- a/java/src/com/android/inputmethod/latin/settings/SettingsValues.java
+++ b/java/src/com/android/inputmethod/latin/settings/SettingsValues.java
@@ -190,10 +190,11 @@
 
     public boolean isSuggestionsRequested() {
         return mInputAttributes.mIsSettingsSuggestionStripOn
-                && (mCorrectionEnabled || isSuggestionStripVisible());
+                && (mCorrectionEnabled
+                        || isCurrentOrientationAllowingSuggestionsPerUserSettings());
     }
 
-    public boolean isSuggestionStripVisible() {
+    public boolean isCurrentOrientationAllowingSuggestionsPerUserSettings() {
         return (mSuggestionVisibility == SUGGESTION_VISIBILITY_SHOW_VALUE)
                 || (mSuggestionVisibility == SUGGESTION_VISIBILITY_SHOW_ONLY_PORTRAIT_VALUE
                         && mDisplayOrientation == Configuration.ORIENTATION_PORTRAIT);