aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/LatinKeyboard.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2010-10-15 01:23:20 +0900
committerTadashi G. Takaoka <takaoka@google.com>2010-10-15 10:00:06 +0900
commit0661496ee0988391f9214616ef091625bcc7f8cb (patch)
tree40a6242ae1fcbc0478f3e0928cbbaaf7b491789e /java/src/com/android/inputmethod/latin/LatinKeyboard.java
parent179fa2c03e749df736f43e0838200bec52b4808a (diff)
downloadlatinime-0661496ee0988391f9214616ef091625bcc7f8cb.tar.gz
latinime-0661496ee0988391f9214616ef091625bcc7f8cb.tar.xz
latinime-0661496ee0988391f9214616ef091625bcc7f8cb.zip
Follow up change of I8b38e280 (DO NOT MERGE)
This is follow up change of I8b38e2803eb32469653484701882af35108eb69a This change fixes the following when "Voice input on symbols keyboard" option is selected. - LatinIME.onCreateInputView fails to show "123mic" icon. - Email and URL variation keyboard fails to show "123mic" icon. Bug: 3084022 Change-Id: Ia3929bb0cc5c5c8651af816718c21d1f20e8f016
Diffstat (limited to 'java/src/com/android/inputmethod/latin/LatinKeyboard.java')
-rw-r--r--java/src/com/android/inputmethod/latin/LatinKeyboard.java45
1 files changed, 24 insertions, 21 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinKeyboard.java b/java/src/com/android/inputmethod/latin/LatinKeyboard.java
index cf702f391..e33ae145b 100644
--- a/java/src/com/android/inputmethod/latin/LatinKeyboard.java
+++ b/java/src/com/android/inputmethod/latin/LatinKeyboard.java
@@ -336,7 +336,7 @@ public class LatinKeyboard extends Keyboard {
mMicIcon = mRes.getDrawable(R.drawable.sym_keyboard_mic);
m123MicIcon = mRes.getDrawable(R.drawable.sym_keyboard_123_mic);
}
- updateF1Key();
+ updateDynamicKeys();
if (mSpaceKey != null) {
updateSpaceBarForLocale(isAutoCompletion, isBlack);
}
@@ -350,11 +350,11 @@ public class LatinKeyboard extends Keyboard {
public void setVoiceMode(boolean hasVoiceButton, boolean hasVoice) {
mHasVoiceButton = hasVoiceButton;
mVoiceEnabled = hasVoice;
- updateF1Key();
+ updateDynamicKeys();
}
- private void updateF1Key() {
- if (mF1Key == null) return;
+ private void updateDynamicKeys() {
+ // Update KEYCODE_MODE_CHANGE key only on alphabet mode, not on symbol mode.
if (m123Key != null && mIsAlphaKeyboard) {
if (mVoiceEnabled && !mHasVoiceButton) {
m123Key.icon = m123MicIcon;
@@ -367,23 +367,26 @@ public class LatinKeyboard extends Keyboard {
}
}
- if (mHasVoiceButton && mVoiceEnabled) {
- mF1Key.codes = new int[] { LatinKeyboardView.KEYCODE_VOICE };
- mF1Key.label = null;
- // HACK: draw mMicIcon and mF1HintIcon at the same time
- mF1Key.icon = new BitmapDrawable(mRes, drawSynthesizedSettingsHintImage(
- mF1Key.width, mF1Key.height + mVerticalGap, mMicIcon, mF1HintIcon));
- mF1Key.iconPreview = mMicPreviewIcon;
- mF1Key.popupResId = R.xml.popup_mic;
- } else {
- mF1Key.label = ",";
- mF1Key.codes = new int[] { ',' };
- // HACK: draw only mF1HintIcon on offscreen buffer to adjust position of '...' to the
- // above synthesized icon
- mF1Key.icon = new BitmapDrawable(mRes, drawSynthesizedSettingsHintImage(
- mF1Key.width, mF1Key.height + mVerticalGap, null, mF1HintIcon));
- mF1Key.iconPreview = null;
- mF1Key.popupResId = R.xml.popup_comma;
+ // Update KEYCODE_F1 key. Please note that some keyboard layout has no F1 key.
+ if (mF1Key != null) {
+ if (mHasVoiceButton && mVoiceEnabled) {
+ mF1Key.codes = new int[] { LatinKeyboardView.KEYCODE_VOICE };
+ mF1Key.label = null;
+ // HACK: draw mMicIcon and mF1HintIcon at the same time
+ mF1Key.icon = new BitmapDrawable(mRes, drawSynthesizedSettingsHintImage(
+ mF1Key.width, mF1Key.height + mVerticalGap, mMicIcon, mF1HintIcon));
+ mF1Key.iconPreview = mMicPreviewIcon;
+ mF1Key.popupResId = R.xml.popup_mic;
+ } else {
+ mF1Key.label = ",";
+ mF1Key.codes = new int[] { ',' };
+ // HACK: draw only mF1HintIcon on offscreen buffer to adjust position of '...' to
+ // the above synthesized icon
+ mF1Key.icon = new BitmapDrawable(mRes, drawSynthesizedSettingsHintImage(
+ mF1Key.width, mF1Key.height + mVerticalGap, null, mF1HintIcon));
+ mF1Key.iconPreview = null;
+ mF1Key.popupResId = R.xml.popup_comma;
+ }
}
}