Loading java/res/values/config.xml +0 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,6 @@ <bool name="config_default_bigram_prediction">false</bool> <bool name="config_default_sound_enabled">false</bool> <bool name="config_default_vibration_enabled">true</bool> <bool name="config_auto_correction_spacebar_led_enabled">false</bool> <!-- Showing mini keyboard, just above the touched point if true, aligned to the key if false --> <bool name="config_show_mini_keyboard_at_touched_point">false</bool> <!-- The language is never displayed if == 0, always displayed if < 0 --> Loading java/res/values/styles.xml +2 −2 Original line number Diff line number Diff line Loading @@ -32,8 +32,7 @@ <item name="maxMoreKeysColumn">@integer/config_max_more_keys_column</item> </style> <style name="LatinKeyboard"> <item name="autoCorrectionSpacebarLedEnabled">@bool/config_auto_correction_spacebar_led_enabled </item> <item name="autoCorrectionSpacebarLedEnabled">true</item> <item name="spacebarTextColor">#FFC0C0C0</item> <item name="spacebarTextShadowColor">#80000000</item> </style> Loading Loading @@ -242,6 +241,7 @@ name="LatinKeyboard.IceCreamSandwich" parent="LatinKeyboard" > <item name="autoCorrectionSpacebarLedEnabled">false</item> <item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item> </style> <style Loading java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +28 −13 Original line number Diff line number Diff line Loading @@ -166,18 +166,29 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, SettingsValues.getKeyPreviewPopupDismissDelay(mPrefs, mResources)); final boolean localeChanged = (oldKeyboard == null) || !keyboard.mId.mLocale.equals(oldKeyboard.mId.mLocale); mInputMethodService.mHandler.startDisplayLanguageOnSpacebar(localeChanged); if (keyboard instanceof LatinKeyboard) { final LatinKeyboard latinKeyboard = (LatinKeyboard)keyboard; latinKeyboard.updateAutoCorrectionState(mIsAutoCorrectionActive); // If the cached keyboard had been switched to another keyboard while the language was // displayed on its spacebar, it might have had arbitrary text fade factor. In such // case, we should reset the text fade factor. It is also applicable to shortcut key. latinKeyboard.updateSpacebarLanguage(0.0f, Utils.hasMultipleEnabledIMEsOrSubtypes(true /* include aux subtypes */), mSubtypeSwitcher.needsToDisplayLanguage(latinKeyboard.mId.mLocale)); latinKeyboard.updateShortcutKey(mSubtypeSwitcher.isShortcutImeReady()); } updateShiftState(); mInputMethodService.mHandler.startDisplayLanguageOnSpacebar(localeChanged); } // TODO: Move this method to KeyboardSet. private LatinKeyboard getKeyboard(KeyboardId id) { private LatinKeyboard getKeyboard(Context context, KeyboardId id) { final SoftReference<LatinKeyboard> ref = mKeyboardCache.get(id); LatinKeyboard keyboard = (ref == null) ? null : ref.get(); if (keyboard == null) { final Locale savedLocale = LocaleUtils.setSystemLocale(mResources, id.mLocale); try { final LatinKeyboard.Builder builder = new LatinKeyboard.Builder(mThemeContext); final LatinKeyboard.Builder builder = new LatinKeyboard.Builder(context); builder.load(id); builder.setTouchPositionCorrectionEnabled( mSubtypeSwitcher.currentSubtypeContainsExtraValueKey( Loading @@ -198,14 +209,8 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, + " theme=" + themeName(keyboard.mThemeId)); } keyboard.onAutoCorrectionStateChanged(mIsAutoCorrectionActive); keyboard.setShiftLocked(false); keyboard.setShifted(false); // If the cached keyboard had been switched to another keyboard while the language was // displayed on its spacebar, it might have had arbitrary text fade factor. In such case, // we should reset the text fade factor. It is also applicable to shortcut key. keyboard.setSpacebarTextFadeFactor(0.0f, null); keyboard.updateShortcutKey(mSubtypeSwitcher.isShortcutImeReady(), null); return keyboard; } Loading Loading @@ -338,19 +343,19 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, // Implements {@link KeyboardState.SwitchActions}. @Override public void setSymbolsKeyboard() { setKeyboard(getKeyboard(mKeyboardSet.mSymbolsId)); setKeyboard(getKeyboard(mThemeContext, mKeyboardSet.mSymbolsId)); } // Implements {@link KeyboardState.SwitchActions}. @Override public void setAlphabetKeyboard() { setKeyboard(getKeyboard(mKeyboardSet.mAlphabetId)); setKeyboard(getKeyboard(mThemeContext, mKeyboardSet.mAlphabetId)); } // Implements {@link KeyboardState.SwitchActions}. @Override public void setSymbolsShiftedKeyboard() { final Keyboard keyboard = getKeyboard(mKeyboardSet.mSymbolsShiftedId); final Keyboard keyboard = getKeyboard(mThemeContext, mKeyboardSet.mSymbolsShiftedId); setKeyboard(keyboard); // TODO: Remove this logic once we introduce initial keyboard shift state attribute. // Symbol shift keyboard may have a shift key that has a caps lock style indicator (a.k.a. Loading Loading @@ -451,12 +456,22 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, } } public void onNetworkStateChanged() { final LatinKeyboard keyboard = getLatinKeyboard(); if (keyboard == null) return; final Key updatedKey = keyboard.updateShortcutKey( SubtypeSwitcher.getInstance().isShortcutImeReady()); if (updatedKey != null && mKeyboardView != null) { mKeyboardView.invalidateKey(updatedKey); } } public void onAutoCorrectionStateChanged(boolean isAutoCorrection) { if (mIsAutoCorrectionActive != isAutoCorrection) { mIsAutoCorrectionActive = isAutoCorrection; final LatinKeyboard keyboard = getLatinKeyboard(); if (keyboard != null && keyboard.needsAutoCorrectionSpacebarLed()) { final Key invalidatedKey = keyboard.onAutoCorrectionStateChanged(isAutoCorrection); final Key invalidatedKey = keyboard.updateAutoCorrectionState(isAutoCorrection); final LatinKeyboardView keyboardView = getKeyboardView(); if (keyboardView != null) keyboardView.invalidateKey(invalidatedKey); Loading java/src/com/android/inputmethod/keyboard/LatinKeyboard.java +26 −27 Original line number Diff line number Diff line Loading @@ -31,11 +31,9 @@ import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.text.TextUtils; import com.android.inputmethod.compat.InputMethodManagerCompatWrapper; import com.android.inputmethod.keyboard.internal.KeyboardBuilder; import com.android.inputmethod.keyboard.internal.KeyboardParams; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.SubtypeSwitcher; import com.android.inputmethod.latin.Utils; import java.util.Arrays; Loading @@ -48,7 +46,6 @@ public class LatinKeyboard extends Keyboard { private final Resources mRes; private final Theme mTheme; private final SubtypeSwitcher mSubtypeSwitcher = SubtypeSwitcher.getInstance(); /* Space key and its icons, drawables and colors. */ private final Key mSpaceKey; Loading @@ -57,11 +54,15 @@ public class LatinKeyboard extends Keyboard { private final Drawable mAutoCorrectionSpacebarLedIcon; private final int mSpacebarTextColor; private final int mSpacebarTextShadowColor; private float mSpacebarTextFadeFactor = 0.0f; private final HashMap<Integer, BitmapDrawable> mSpaceDrawableCache = new HashMap<Integer, BitmapDrawable>(); private final boolean mIsSpacebarTriggeringPopupByLongPress; private boolean mAutoCorrectionSpacebarLedOn; private boolean mMultipleEnabledIMEsOrSubtypes; private boolean mNeedsToDisplayLanguage; private float mSpacebarTextFadeFactor = 0.0f; /* Shortcut key and its icons if available */ private final Key mShortcutKey; private final Drawable mEnabledShortcutIcon; Loading Loading @@ -140,11 +141,13 @@ public class LatinKeyboard extends Keyboard { } } public void setSpacebarTextFadeFactor(float fadeFactor, KeyboardView view) { public Key updateSpacebarLanguage(float fadeFactor, boolean multipleEnabledIMEsOrSubtypes, boolean needsToDisplayLanguage) { mSpacebarTextFadeFactor = fadeFactor; updateSpacebarForLocale(false); if (view != null) view.invalidateKey(mSpaceKey); mMultipleEnabledIMEsOrSubtypes = multipleEnabledIMEsOrSubtypes; mNeedsToDisplayLanguage = needsToDisplayLanguage; updateSpacebarIcon(); return mSpaceKey; } private static int getSpacebarTextColor(int color, float fadeFactor) { Loading @@ -153,13 +156,12 @@ public class LatinKeyboard extends Keyboard { return newColor; } public void updateShortcutKey(boolean available, KeyboardView view) { public Key updateShortcutKey(boolean available) { if (mShortcutKey == null) return; return null; mShortcutKey.setEnabled(available); mShortcutKey.setIcon(available ? mEnabledShortcutIcon : mDisabledShortcutIcon); if (view != null) view.invalidateKey(mShortcutKey); return mShortcutKey; } public boolean needsAutoCorrectionSpacebarLed() { Loading @@ -169,8 +171,9 @@ public class LatinKeyboard extends Keyboard { /** * @return a key which should be invalidated. */ public Key onAutoCorrectionStateChanged(boolean isAutoCorrection) { updateSpacebarForLocale(isAutoCorrection); public Key updateAutoCorrectionState(boolean isAutoCorrection) { mAutoCorrectionSpacebarLedOn = isAutoCorrection; updateSpacebarIcon(); return mSpaceKey; } Loading @@ -183,19 +186,15 @@ public class LatinKeyboard extends Keyboard { return label; } private void updateSpacebarForLocale(boolean isAutoCorrection) { private void updateSpacebarIcon() { if (mSpaceKey == null) return; final InputMethodManagerCompatWrapper imm = InputMethodManagerCompatWrapper.getInstance(); if (imm == null) return; // The "..." popup hint for triggering something by a long-pressing the spacebar final boolean shouldShowInputMethodPicker = mIsSpacebarTriggeringPopupByLongPress && Utils.hasMultipleEnabledIMEsOrSubtypes(imm, true /* include aux subtypes */); && mMultipleEnabledIMEsOrSubtypes; mSpaceKey.setNeedsSpecialPopupHint(shouldShowInputMethodPicker); // If application locales are explicitly selected. if (mSubtypeSwitcher.needsToDisplayLanguage(mId.mLocale)) { mSpaceKey.setIcon(getSpaceDrawable(mId.mLocale, isAutoCorrection)); } else if (isAutoCorrection) { mSpaceKey.setIcon(getSpaceDrawable(null, true)); if (mNeedsToDisplayLanguage) { mSpaceKey.setIcon(getSpaceDrawable(mId.mLocale)); } else if (mAutoCorrectionSpacebarLedOn) { mSpaceKey.setIcon(getSpaceDrawable(null)); } else { mSpaceKey.setIcon(mSpaceIcon); } Loading Loading @@ -245,15 +244,15 @@ public class LatinKeyboard extends Keyboard { return language; } private BitmapDrawable getSpaceDrawable(Locale locale, boolean isAutoCorrection) { private BitmapDrawable getSpaceDrawable(Locale locale) { final Integer hashCode = Arrays.hashCode( new Object[] { locale, isAutoCorrection, mSpacebarTextFadeFactor }); new Object[] { locale, mAutoCorrectionSpacebarLedOn, mSpacebarTextFadeFactor }); final BitmapDrawable cached = mSpaceDrawableCache.get(hashCode); if (cached != null) { return cached; } final BitmapDrawable drawable = new BitmapDrawable(mRes, drawSpacebar( locale, isAutoCorrection, mSpacebarTextFadeFactor)); locale, mAutoCorrectionSpacebarLedOn, mSpacebarTextFadeFactor)); mSpaceDrawableCache.put(hashCode, drawable); return drawable; } Loading java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java +0 −9 Original line number Diff line number Diff line Loading @@ -374,15 +374,6 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke return miniKeyboardView; } public void setSpacebarTextFadeFactor(float fadeFactor, LatinKeyboard oldKeyboard) { final Keyboard keyboard = getKeyboard(); // We should not set text fade factor to the keyboard which does not display the language on // its spacebar. if (keyboard instanceof LatinKeyboard && keyboard == oldKeyboard) { ((LatinKeyboard)keyboard).setSpacebarTextFadeFactor(fadeFactor, this); } } /** * Called when a key is long pressed. By default this will open mini keyboard associated * with this key. Loading Loading
java/res/values/config.xml +0 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,6 @@ <bool name="config_default_bigram_prediction">false</bool> <bool name="config_default_sound_enabled">false</bool> <bool name="config_default_vibration_enabled">true</bool> <bool name="config_auto_correction_spacebar_led_enabled">false</bool> <!-- Showing mini keyboard, just above the touched point if true, aligned to the key if false --> <bool name="config_show_mini_keyboard_at_touched_point">false</bool> <!-- The language is never displayed if == 0, always displayed if < 0 --> Loading
java/res/values/styles.xml +2 −2 Original line number Diff line number Diff line Loading @@ -32,8 +32,7 @@ <item name="maxMoreKeysColumn">@integer/config_max_more_keys_column</item> </style> <style name="LatinKeyboard"> <item name="autoCorrectionSpacebarLedEnabled">@bool/config_auto_correction_spacebar_led_enabled </item> <item name="autoCorrectionSpacebarLedEnabled">true</item> <item name="spacebarTextColor">#FFC0C0C0</item> <item name="spacebarTextShadowColor">#80000000</item> </style> Loading Loading @@ -242,6 +241,7 @@ name="LatinKeyboard.IceCreamSandwich" parent="LatinKeyboard" > <item name="autoCorrectionSpacebarLedEnabled">false</item> <item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item> </style> <style Loading
java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +28 −13 Original line number Diff line number Diff line Loading @@ -166,18 +166,29 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, SettingsValues.getKeyPreviewPopupDismissDelay(mPrefs, mResources)); final boolean localeChanged = (oldKeyboard == null) || !keyboard.mId.mLocale.equals(oldKeyboard.mId.mLocale); mInputMethodService.mHandler.startDisplayLanguageOnSpacebar(localeChanged); if (keyboard instanceof LatinKeyboard) { final LatinKeyboard latinKeyboard = (LatinKeyboard)keyboard; latinKeyboard.updateAutoCorrectionState(mIsAutoCorrectionActive); // If the cached keyboard had been switched to another keyboard while the language was // displayed on its spacebar, it might have had arbitrary text fade factor. In such // case, we should reset the text fade factor. It is also applicable to shortcut key. latinKeyboard.updateSpacebarLanguage(0.0f, Utils.hasMultipleEnabledIMEsOrSubtypes(true /* include aux subtypes */), mSubtypeSwitcher.needsToDisplayLanguage(latinKeyboard.mId.mLocale)); latinKeyboard.updateShortcutKey(mSubtypeSwitcher.isShortcutImeReady()); } updateShiftState(); mInputMethodService.mHandler.startDisplayLanguageOnSpacebar(localeChanged); } // TODO: Move this method to KeyboardSet. private LatinKeyboard getKeyboard(KeyboardId id) { private LatinKeyboard getKeyboard(Context context, KeyboardId id) { final SoftReference<LatinKeyboard> ref = mKeyboardCache.get(id); LatinKeyboard keyboard = (ref == null) ? null : ref.get(); if (keyboard == null) { final Locale savedLocale = LocaleUtils.setSystemLocale(mResources, id.mLocale); try { final LatinKeyboard.Builder builder = new LatinKeyboard.Builder(mThemeContext); final LatinKeyboard.Builder builder = new LatinKeyboard.Builder(context); builder.load(id); builder.setTouchPositionCorrectionEnabled( mSubtypeSwitcher.currentSubtypeContainsExtraValueKey( Loading @@ -198,14 +209,8 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, + " theme=" + themeName(keyboard.mThemeId)); } keyboard.onAutoCorrectionStateChanged(mIsAutoCorrectionActive); keyboard.setShiftLocked(false); keyboard.setShifted(false); // If the cached keyboard had been switched to another keyboard while the language was // displayed on its spacebar, it might have had arbitrary text fade factor. In such case, // we should reset the text fade factor. It is also applicable to shortcut key. keyboard.setSpacebarTextFadeFactor(0.0f, null); keyboard.updateShortcutKey(mSubtypeSwitcher.isShortcutImeReady(), null); return keyboard; } Loading Loading @@ -338,19 +343,19 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, // Implements {@link KeyboardState.SwitchActions}. @Override public void setSymbolsKeyboard() { setKeyboard(getKeyboard(mKeyboardSet.mSymbolsId)); setKeyboard(getKeyboard(mThemeContext, mKeyboardSet.mSymbolsId)); } // Implements {@link KeyboardState.SwitchActions}. @Override public void setAlphabetKeyboard() { setKeyboard(getKeyboard(mKeyboardSet.mAlphabetId)); setKeyboard(getKeyboard(mThemeContext, mKeyboardSet.mAlphabetId)); } // Implements {@link KeyboardState.SwitchActions}. @Override public void setSymbolsShiftedKeyboard() { final Keyboard keyboard = getKeyboard(mKeyboardSet.mSymbolsShiftedId); final Keyboard keyboard = getKeyboard(mThemeContext, mKeyboardSet.mSymbolsShiftedId); setKeyboard(keyboard); // TODO: Remove this logic once we introduce initial keyboard shift state attribute. // Symbol shift keyboard may have a shift key that has a caps lock style indicator (a.k.a. Loading Loading @@ -451,12 +456,22 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions, } } public void onNetworkStateChanged() { final LatinKeyboard keyboard = getLatinKeyboard(); if (keyboard == null) return; final Key updatedKey = keyboard.updateShortcutKey( SubtypeSwitcher.getInstance().isShortcutImeReady()); if (updatedKey != null && mKeyboardView != null) { mKeyboardView.invalidateKey(updatedKey); } } public void onAutoCorrectionStateChanged(boolean isAutoCorrection) { if (mIsAutoCorrectionActive != isAutoCorrection) { mIsAutoCorrectionActive = isAutoCorrection; final LatinKeyboard keyboard = getLatinKeyboard(); if (keyboard != null && keyboard.needsAutoCorrectionSpacebarLed()) { final Key invalidatedKey = keyboard.onAutoCorrectionStateChanged(isAutoCorrection); final Key invalidatedKey = keyboard.updateAutoCorrectionState(isAutoCorrection); final LatinKeyboardView keyboardView = getKeyboardView(); if (keyboardView != null) keyboardView.invalidateKey(invalidatedKey); Loading
java/src/com/android/inputmethod/keyboard/LatinKeyboard.java +26 −27 Original line number Diff line number Diff line Loading @@ -31,11 +31,9 @@ import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.text.TextUtils; import com.android.inputmethod.compat.InputMethodManagerCompatWrapper; import com.android.inputmethod.keyboard.internal.KeyboardBuilder; import com.android.inputmethod.keyboard.internal.KeyboardParams; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.SubtypeSwitcher; import com.android.inputmethod.latin.Utils; import java.util.Arrays; Loading @@ -48,7 +46,6 @@ public class LatinKeyboard extends Keyboard { private final Resources mRes; private final Theme mTheme; private final SubtypeSwitcher mSubtypeSwitcher = SubtypeSwitcher.getInstance(); /* Space key and its icons, drawables and colors. */ private final Key mSpaceKey; Loading @@ -57,11 +54,15 @@ public class LatinKeyboard extends Keyboard { private final Drawable mAutoCorrectionSpacebarLedIcon; private final int mSpacebarTextColor; private final int mSpacebarTextShadowColor; private float mSpacebarTextFadeFactor = 0.0f; private final HashMap<Integer, BitmapDrawable> mSpaceDrawableCache = new HashMap<Integer, BitmapDrawable>(); private final boolean mIsSpacebarTriggeringPopupByLongPress; private boolean mAutoCorrectionSpacebarLedOn; private boolean mMultipleEnabledIMEsOrSubtypes; private boolean mNeedsToDisplayLanguage; private float mSpacebarTextFadeFactor = 0.0f; /* Shortcut key and its icons if available */ private final Key mShortcutKey; private final Drawable mEnabledShortcutIcon; Loading Loading @@ -140,11 +141,13 @@ public class LatinKeyboard extends Keyboard { } } public void setSpacebarTextFadeFactor(float fadeFactor, KeyboardView view) { public Key updateSpacebarLanguage(float fadeFactor, boolean multipleEnabledIMEsOrSubtypes, boolean needsToDisplayLanguage) { mSpacebarTextFadeFactor = fadeFactor; updateSpacebarForLocale(false); if (view != null) view.invalidateKey(mSpaceKey); mMultipleEnabledIMEsOrSubtypes = multipleEnabledIMEsOrSubtypes; mNeedsToDisplayLanguage = needsToDisplayLanguage; updateSpacebarIcon(); return mSpaceKey; } private static int getSpacebarTextColor(int color, float fadeFactor) { Loading @@ -153,13 +156,12 @@ public class LatinKeyboard extends Keyboard { return newColor; } public void updateShortcutKey(boolean available, KeyboardView view) { public Key updateShortcutKey(boolean available) { if (mShortcutKey == null) return; return null; mShortcutKey.setEnabled(available); mShortcutKey.setIcon(available ? mEnabledShortcutIcon : mDisabledShortcutIcon); if (view != null) view.invalidateKey(mShortcutKey); return mShortcutKey; } public boolean needsAutoCorrectionSpacebarLed() { Loading @@ -169,8 +171,9 @@ public class LatinKeyboard extends Keyboard { /** * @return a key which should be invalidated. */ public Key onAutoCorrectionStateChanged(boolean isAutoCorrection) { updateSpacebarForLocale(isAutoCorrection); public Key updateAutoCorrectionState(boolean isAutoCorrection) { mAutoCorrectionSpacebarLedOn = isAutoCorrection; updateSpacebarIcon(); return mSpaceKey; } Loading @@ -183,19 +186,15 @@ public class LatinKeyboard extends Keyboard { return label; } private void updateSpacebarForLocale(boolean isAutoCorrection) { private void updateSpacebarIcon() { if (mSpaceKey == null) return; final InputMethodManagerCompatWrapper imm = InputMethodManagerCompatWrapper.getInstance(); if (imm == null) return; // The "..." popup hint for triggering something by a long-pressing the spacebar final boolean shouldShowInputMethodPicker = mIsSpacebarTriggeringPopupByLongPress && Utils.hasMultipleEnabledIMEsOrSubtypes(imm, true /* include aux subtypes */); && mMultipleEnabledIMEsOrSubtypes; mSpaceKey.setNeedsSpecialPopupHint(shouldShowInputMethodPicker); // If application locales are explicitly selected. if (mSubtypeSwitcher.needsToDisplayLanguage(mId.mLocale)) { mSpaceKey.setIcon(getSpaceDrawable(mId.mLocale, isAutoCorrection)); } else if (isAutoCorrection) { mSpaceKey.setIcon(getSpaceDrawable(null, true)); if (mNeedsToDisplayLanguage) { mSpaceKey.setIcon(getSpaceDrawable(mId.mLocale)); } else if (mAutoCorrectionSpacebarLedOn) { mSpaceKey.setIcon(getSpaceDrawable(null)); } else { mSpaceKey.setIcon(mSpaceIcon); } Loading Loading @@ -245,15 +244,15 @@ public class LatinKeyboard extends Keyboard { return language; } private BitmapDrawable getSpaceDrawable(Locale locale, boolean isAutoCorrection) { private BitmapDrawable getSpaceDrawable(Locale locale) { final Integer hashCode = Arrays.hashCode( new Object[] { locale, isAutoCorrection, mSpacebarTextFadeFactor }); new Object[] { locale, mAutoCorrectionSpacebarLedOn, mSpacebarTextFadeFactor }); final BitmapDrawable cached = mSpaceDrawableCache.get(hashCode); if (cached != null) { return cached; } final BitmapDrawable drawable = new BitmapDrawable(mRes, drawSpacebar( locale, isAutoCorrection, mSpacebarTextFadeFactor)); locale, mAutoCorrectionSpacebarLedOn, mSpacebarTextFadeFactor)); mSpaceDrawableCache.put(hashCode, drawable); return drawable; } Loading
java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java +0 −9 Original line number Diff line number Diff line Loading @@ -374,15 +374,6 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke return miniKeyboardView; } public void setSpacebarTextFadeFactor(float fadeFactor, LatinKeyboard oldKeyboard) { final Keyboard keyboard = getKeyboard(); // We should not set text fade factor to the keyboard which does not display the language on // its spacebar. if (keyboard instanceof LatinKeyboard && keyboard == oldKeyboard) { ((LatinKeyboard)keyboard).setSpacebarTextFadeFactor(fadeFactor, this); } } /** * Called when a key is long pressed. By default this will open mini keyboard associated * with this key. Loading