diff options
author | 2010-06-03 14:54:35 +0900 | |
---|---|---|
committer | 2010-06-03 15:25:18 +0900 | |
commit | 4ff7bbcb97a6b71d84c927e3e4a30dd4dd2494b9 (patch) | |
tree | 50bd81f3826f769257a626229a729bb42e317090 /java/src/com/android/inputmethod/latin/KeyboardSwitcher.java | |
parent | 219d9d52e54571dbc974083d6a57e405fd94153b (diff) | |
download | latinime-4ff7bbcb97a6b71d84c927e3e4a30dd4dd2494b9.tar.gz latinime-4ff7bbcb97a6b71d84c927e3e4a30dd4dd2494b9.tar.xz latinime-4ff7bbcb97a6b71d84c927e3e4a30dd4dd2494b9.zip |
Fix a bug that force closing happens even when SUPPRESS_EXCEPTION flag is on.
Change-Id: I927b11da1e62b147813fbbf01e2afce5915aed73
Diffstat (limited to 'java/src/com/android/inputmethod/latin/KeyboardSwitcher.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/KeyboardSwitcher.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java index 3eb135ebe..948fe5aa6 100644 --- a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java @@ -197,8 +197,14 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha void setKeyboardMode(int mode, int imeOptions, boolean enableVoice) { mSymbolsModeState = SYMBOLS_MODE_STATE_NONE; mPreferSymbols = mode == MODE_SYMBOLS; - setKeyboardMode(mode == MODE_SYMBOLS ? MODE_TEXT : mode, imeOptions, enableVoice, - mPreferSymbols); + if (mode == MODE_SYMBOLS) { + mode = MODE_TEXT; + } + try { + setKeyboardMode(mode, imeOptions, enableVoice, mPreferSymbols); + } catch (RuntimeException e) { + LatinImeLogger.logOnException(mode + "," + imeOptions + "," + mPreferSymbols, e); + } } void setKeyboardMode(int mode, int imeOptions, boolean enableVoice, boolean isSymbols) { @@ -213,11 +219,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha mInputView.setPreviewEnabled(true); KeyboardId id = getKeyboardId(mode, imeOptions, isSymbols); LatinKeyboard keyboard = null; - try { - keyboard = getKeyboard(id); - } catch (RuntimeException e) { - LatinImeLogger.logOnException(mode + "," + imeOptions + "," + isSymbols, e); - } + keyboard = getKeyboard(id); if (mode == MODE_PHONE) { mInputView.setPhoneKeyboard(keyboard); |