Skip loading keyboard when SoftInputWindow hasn't shown yet.

Bug: 5541192
Change-Id: I003101b2a3fdeb5bb554d249634ec5ab50aea09e
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index fd83315..a6a3a5c 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -2169,8 +2169,12 @@
             // so that we need to re-create the keyboard input view here.
             setInputView(mKeyboardSwitcher.onCreateInputView());
         }
-        // Reload keyboard because the current language has been changed.
-        mKeyboardSwitcher.loadKeyboard(getCurrentInputEditorInfo(), mSettingsValues);
+        // When the device locale is changed in SetupWizard etc., this method may get called via
+        // onConfigurationChanged before SoftInputWindow is shown.
+        if (mKeyboardSwitcher.getKeyboardView() != null) {
+            // Reload keyboard because the current language has been changed.
+            mKeyboardSwitcher.loadKeyboard(getCurrentInputEditorInfo(), mSettingsValues);
+        }
         initSuggest();
         loadSettings();
     }