Fix an NPE found in KeyboardSwitcher.isAlphabetMode()

Change-Id: I03d3d9b25147632d25c1502f796acad4cdaeb239
diff --git a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java
index d049303..88a2b83 100644
--- a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java
+++ b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java
@@ -335,6 +335,9 @@
     }
 
     boolean isAlphabetMode() {
+        if (mCurrentId == null) {
+            return false;
+        }
         int currentMode = mCurrentId.mKeyboardMode;
         for (Integer mode : ALPHABET_MODES) {
             if (currentMode == mode) {
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 9bd16ad..0f724f0 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -968,7 +968,7 @@
 
     public void updateShiftKeyState(EditorInfo attr) {
         InputConnection ic = getCurrentInputConnection();
-        if (attr != null && mKeyboardSwitcher.isAlphabetMode() && ic != null) {
+        if (ic != null && attr != null && mKeyboardSwitcher.isAlphabetMode()) {
             mKeyboardSwitcher.setShifted(mCapsLock || getCursorCapsMode(ic, attr) != 0);
         }
     }