diff options
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/KeyboardSwitcher.java | 7 | ||||
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinKeyboard.java | 14 |
2 files changed, 17 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java index ccf4c19aa..864bf73fa 100644 --- a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java @@ -215,6 +215,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha keyboard.setShifted(false); keyboard.setShiftLocked(keyboard.isShiftLocked()); keyboard.setImeOptions(mContext.getResources(), mMode, imeOptions); + keyboard.setBlackFlag(isBlackSym()); } private LatinKeyboard getKeyboard(KeyboardId id) { @@ -227,8 +228,8 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha LatinKeyboard keyboard = new LatinKeyboard( mContext, id.mXml, id.mKeyboardMode); keyboard.setVoiceMode(hasVoiceButton(id.mXml == R.xml.kbd_symbols), mHasVoice); - keyboard.setBlackFlag(isBlackSym()); keyboard.setLanguageSwitcher(mLanguageSwitcher); + keyboard.setBlackFlag(isBlackSym()); if (id.mKeyboardMode == KEYBOARDMODE_NORMAL || id.mKeyboardMode == KEYBOARDMODE_URL || id.mKeyboardMode == KEYBOARDMODE_IM @@ -403,6 +404,8 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha // TODO: Generalize for any theme public boolean isBlackSym () { - return (mLayoutId == 6 && mLanguageSwitcher.getInputLanguage().indexOf("en_") >= 0); + return (mLayoutId == 6 && (mLanguageSwitcher == null + || mLanguageSwitcher.getEnabledLanguages() == null + || mLanguageSwitcher.getInputLanguage().startsWith("en_"))); } } diff --git a/java/src/com/android/inputmethod/latin/LatinKeyboard.java b/java/src/com/android/inputmethod/latin/LatinKeyboard.java index abc4992f5..eba0ec04e 100644 --- a/java/src/com/android/inputmethod/latin/LatinKeyboard.java +++ b/java/src/com/android/inputmethod/latin/LatinKeyboard.java @@ -288,13 +288,23 @@ public class LatinKeyboard extends Keyboard { mSpaceIcon = mRes.getDrawable(R.drawable.sym_bkeyboard_space); mMicIcon = mRes.getDrawable(R.drawable.sym_bkeyboard_mic); m123MicIcon = mRes.getDrawable(R.drawable.sym_bkeyboard_123_mic); - mF1Key.icon = mRes.getDrawable(R.drawable.sym_bkeyboard_mic); + if (mF1Key != null) { + mF1Key.icon = mMicIcon; + } + if (mSpaceKey != null) { + mSpaceKey.icon = mSpaceIcon; + } } else { mShiftLockIcon = mRes.getDrawable(R.drawable.sym_keyboard_shift_locked); mSpaceIcon = mRes.getDrawable(R.drawable.sym_keyboard_space); mMicIcon = mRes.getDrawable(R.drawable.sym_keyboard_mic); m123MicIcon = mRes.getDrawable(R.drawable.sym_keyboard_123_mic); - mF1Key.icon = mRes.getDrawable(R.drawable.sym_keyboard_mic); + if (mF1Key != null) { + mF1Key.icon = mMicIcon; + } + if (mSpaceKey != null) { + mSpaceKey.icon = mSpaceIcon; + } } } |