Dismiss more suggestions panel when suggestions strip is closed

This change fixes possible NPE as well.

Bug: 6658028
Change-Id: I8706808d1002b7b0b95930fd9b08568f08645da6
diff --git a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
index b4fa86d..be7644f 100644
--- a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
@@ -159,7 +159,7 @@
 
     @Override
     public boolean dismissMoreKeysPanel() {
-        if (mIsDismissing) return false;
+        if (mIsDismissing || mController == null) return false;
         mIsDismissing = true;
         final boolean dismissed = mController.dismissMoreKeysPanel();
         mIsDismissing = false;
diff --git a/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java b/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java
index 8a29dcc..19287e3 100644
--- a/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java
+++ b/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java
@@ -167,7 +167,7 @@
 
     @Override
     public boolean dismissMoreKeysPanel() {
-        if (mIsDismissing) return false;
+        if (mIsDismissing || mController == null) return false;
         mIsDismissing = true;
         final boolean dismissed = mController.dismissMoreKeysPanel();
         mIsDismissing = false;
diff --git a/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java b/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java
index 3d593aa..40e54a4 100644
--- a/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java
+++ b/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java
@@ -884,5 +884,6 @@
         super.onDetachedFromWindow();
         mHandler.cancelAllMessages();
         hidePreview();
+        dismissMoreSuggestions();
     }
 }