diff options
author | 2011-06-21 10:06:45 +0900 | |
---|---|---|
committer | 2011-06-21 10:15:54 +0900 | |
commit | 05c0fc6136a27eb12a078514f730c277e9a8739e (patch) | |
tree | c8f3f4633e6b4eea052fe7ce77528f5c2b755f95 /java/src | |
parent | cdc12db404e80636cbd335474d91f57597d8c4c6 (diff) | |
download | latinime-05c0fc6136a27eb12a078514f730c277e9a8739e.tar.gz latinime-05c0fc6136a27eb12a078514f730c277e9a8739e.tar.xz latinime-05c0fc6136a27eb12a078514f730c277e9a8739e.zip |
Fix NPE in LatinKeyboard
Bug: 4727778
Change-Id: I9d5b7185d75408a8af6d302fb348e118c0f9721e
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/keyboard/LatinKeyboard.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/LatinKeyboard.java b/java/src/com/android/inputmethod/keyboard/LatinKeyboard.java index 473006deb..020fb56ca 100644 --- a/java/src/com/android/inputmethod/keyboard/LatinKeyboard.java +++ b/java/src/com/android/inputmethod/keyboard/LatinKeyboard.java @@ -136,12 +136,16 @@ public class LatinKeyboard extends Keyboard { // The threshold is "key width" x 1.25 mSpacebarLanguageSwitchThreshold = (getMostCommonKeyWidth() * 5) / 4; - final int spaceKeyWidth = Math.max(mSpaceKey.mWidth, - (int)(getMinWidth() * SPACEBAR_POPUP_MIN_RATIO)); - final int spaceKeyheight = mSpacePreviewIcon.getIntrinsicHeight(); - mSlidingLocaleIcon = new SlidingLocaleDrawable( - context, mSpacePreviewIcon, spaceKeyWidth, spaceKeyheight); - mSlidingLocaleIcon.setBounds(0, 0, spaceKeyWidth, spaceKeyheight); + if (mSpaceKey != null) { + final int slidingIconWidth = Math.max(mSpaceKey.mWidth, + (int)(getMinWidth() * SPACEBAR_POPUP_MIN_RATIO)); + final int spaceKeyheight = mSpacePreviewIcon.getIntrinsicHeight(); + mSlidingLocaleIcon = new SlidingLocaleDrawable( + context, mSpacePreviewIcon, slidingIconWidth, spaceKeyheight); + mSlidingLocaleIcon.setBounds(0, 0, slidingIconWidth, spaceKeyheight); + } else { + mSlidingLocaleIcon = null; + } } public void setSpacebarTextFadeFactor(float fadeFactor, LatinKeyboardView view) { @@ -350,6 +354,8 @@ public class LatinKeyboard extends Keyboard { if (mSpacebarSlidingLanguageSwitchDiff == diff) return; mSpacebarSlidingLanguageSwitchDiff = diff; + if (mSlidingLocaleIcon == null) + return; mSlidingLocaleIcon.setDiff(diff); if (Math.abs(diff) == Integer.MAX_VALUE) { mSpaceKey.setPreviewIcon(mSpacePreviewIcon); |