Add LatinKeyboardView style
As a result, this change moves shortcut related update code to LatinKeyboardView from LatinKeyboard. Change-Id: I1882672577f61e73c90d6c018b7dbb61f3fe21e4main
parent
22b48de11c
commit
5afc3ae2d9
|
@ -18,10 +18,13 @@
|
||||||
<declare-styleable name="KeyboardTheme">
|
<declare-styleable name="KeyboardTheme">
|
||||||
<!-- Keyboard style -->
|
<!-- Keyboard style -->
|
||||||
<attr name="keyboardStyle" format="reference" />
|
<attr name="keyboardStyle" format="reference" />
|
||||||
|
<!-- TODO: Get rid of latinKeyboardStyle -->
|
||||||
<!-- LatinKeyboard style -->
|
<!-- LatinKeyboard style -->
|
||||||
<attr name="latinKeyboardStyle" format="reference" />
|
<attr name="latinKeyboardStyle" format="reference" />
|
||||||
<!-- KeyboardView style -->
|
<!-- KeyboardView style -->
|
||||||
<attr name="keyboardViewStyle" format="reference" />
|
<attr name="keyboardViewStyle" format="reference" />
|
||||||
|
<!-- LatinKeyboardView style -->
|
||||||
|
<attr name="latinKeyboardViewStyle" format="reference" />
|
||||||
<!-- MiniKeyboard style -->
|
<!-- MiniKeyboard style -->
|
||||||
<attr name="miniKeyboardStyle" format="reference" />
|
<attr name="miniKeyboardStyle" format="reference" />
|
||||||
<!-- MiniKeyboardView style -->
|
<!-- MiniKeyboardView style -->
|
||||||
|
@ -120,6 +123,10 @@
|
||||||
</attr>
|
</attr>
|
||||||
</declare-styleable>
|
</declare-styleable>
|
||||||
|
|
||||||
|
<declare-styleable name="LatinKeyboardView">
|
||||||
|
<attr name="disabledShortcutIcon" format="reference" />
|
||||||
|
</declare-styleable>
|
||||||
|
|
||||||
<declare-styleable name="SuggestionsView">
|
<declare-styleable name="SuggestionsView">
|
||||||
<attr name="suggestionStripOption" format="integer">
|
<attr name="suggestionStripOption" format="integer">
|
||||||
<!-- This should be aligned with SuggestionsViewParams.AUTO_CORRECT_* and etc. -->
|
<!-- This should be aligned with SuggestionsViewParams.AUTO_CORRECT_* and etc. -->
|
||||||
|
@ -321,11 +328,10 @@
|
||||||
<attr name="parentStyle" format="string" />
|
<attr name="parentStyle" format="string" />
|
||||||
</declare-styleable>
|
</declare-styleable>
|
||||||
|
|
||||||
<!-- Move these attributes to LatinKeyboardView -->
|
<!-- TODO: Move these attributes to LatinKeyboardView -->
|
||||||
<declare-styleable name="LatinKeyboard">
|
<declare-styleable name="LatinKeyboard">
|
||||||
<attr name="autoCorrectionSpacebarLedEnabled" format="boolean" />
|
<attr name="autoCorrectionSpacebarLedEnabled" format="boolean" />
|
||||||
<attr name="autoCorrectionSpacebarLedIcon" format="reference" />
|
<attr name="autoCorrectionSpacebarLedIcon" format="reference" />
|
||||||
<attr name="disabledShortcutIcon" format="reference" />
|
|
||||||
<!-- Size of the text for spacebar language label, in the proportion of key height. -->
|
<!-- Size of the text for spacebar language label, in the proportion of key height. -->
|
||||||
<attr name="spacebarTextRatio" format="fraction" />
|
<attr name="spacebarTextRatio" format="fraction" />
|
||||||
<attr name="spacebarTextColor" format="color" />
|
<attr name="spacebarTextColor" format="color" />
|
||||||
|
|
|
@ -71,6 +71,12 @@
|
||||||
<item name="shadowRadius">2.75</item>
|
<item name="shadowRadius">2.75</item>
|
||||||
<item name="backgroundDimAmount">0.5</item>
|
<item name="backgroundDimAmount">0.5</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style
|
||||||
|
name="LatinKeyboardView"
|
||||||
|
parent="KeyboardView">
|
||||||
|
<!-- TODO: Needs non-holo disabled shortcut icon drawable -->
|
||||||
|
<item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
|
||||||
|
</style>
|
||||||
<style
|
<style
|
||||||
name="MiniKeyboard"
|
name="MiniKeyboard"
|
||||||
parent="Keyboard"
|
parent="Keyboard"
|
||||||
|
@ -134,6 +140,13 @@
|
||||||
<item name="android:background">@android:color/black</item>
|
<item name="android:background">@android:color/black</item>
|
||||||
<item name="keyBackground">@drawable/btn_keyboard_key3</item>
|
<item name="keyBackground">@drawable/btn_keyboard_key3</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style
|
||||||
|
name="LatinKeyboardView.HighContrast"
|
||||||
|
parent="KeyboardView.HighContrast"
|
||||||
|
>
|
||||||
|
<!-- TODO: Needs non-holo disabled shortcut icon drawable -->
|
||||||
|
<item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
|
||||||
|
</style>
|
||||||
<!-- Theme "Stone" -->
|
<!-- Theme "Stone" -->
|
||||||
<style
|
<style
|
||||||
name="Keyboard.Stone"
|
name="Keyboard.Stone"
|
||||||
|
@ -166,6 +179,12 @@
|
||||||
<item name="keyUppercaseLetterActivatedColor">#CC000000</item>
|
<item name="keyUppercaseLetterActivatedColor">#CC000000</item>
|
||||||
<item name="shadowColor">#FFFFFFFF</item>
|
<item name="shadowColor">#FFFFFFFF</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style
|
||||||
|
name="LatinKeyboardView.Stone"
|
||||||
|
parent="KeyboardView.Stone"
|
||||||
|
>
|
||||||
|
<item name="disabledShortcutIcon">@drawable/sym_bkeyboard_voice_off</item>
|
||||||
|
</style>
|
||||||
<style
|
<style
|
||||||
name="MiniKeyboard.Stone"
|
name="MiniKeyboard.Stone"
|
||||||
parent="Keyboard.Stone"
|
parent="Keyboard.Stone"
|
||||||
|
@ -195,6 +214,12 @@
|
||||||
>
|
>
|
||||||
<item name="keyTextStyle">bold</item>
|
<item name="keyTextStyle">bold</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style
|
||||||
|
name="LatinKeyboardView.Stone.Bold"
|
||||||
|
parent="KeyboardView.Stone.Bold"
|
||||||
|
>
|
||||||
|
<item name="disabledShortcutIcon">@drawable/sym_bkeyboard_voice_off</item>
|
||||||
|
</style>
|
||||||
<!-- Theme "Gingerbread" -->
|
<!-- Theme "Gingerbread" -->
|
||||||
<style
|
<style
|
||||||
name="Keyboard.Gingerbread"
|
name="Keyboard.Gingerbread"
|
||||||
|
@ -213,6 +238,13 @@
|
||||||
<item name="keyBackground">@drawable/btn_keyboard_key_gingerbread</item>
|
<item name="keyBackground">@drawable/btn_keyboard_key_gingerbread</item>
|
||||||
<item name="keyTextStyle">bold</item>
|
<item name="keyTextStyle">bold</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style
|
||||||
|
name="LatinKeyboardView.Gingerbread"
|
||||||
|
parent="KeyboardView.Gingerbread"
|
||||||
|
>
|
||||||
|
<!-- TODO: Needs non-holo disabled shortcut icon drawable -->
|
||||||
|
<item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
|
||||||
|
</style>
|
||||||
<style
|
<style
|
||||||
name="MiniKeyboard.Gingerbread"
|
name="MiniKeyboard.Gingerbread"
|
||||||
parent="Keyboard.Gingerbread"
|
parent="Keyboard.Gingerbread"
|
||||||
|
@ -244,7 +276,6 @@
|
||||||
parent="LatinKeyboard"
|
parent="LatinKeyboard"
|
||||||
>
|
>
|
||||||
<item name="autoCorrectionSpacebarLedEnabled">false</item>
|
<item name="autoCorrectionSpacebarLedEnabled">false</item>
|
||||||
<item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
|
|
||||||
</style>
|
</style>
|
||||||
<style
|
<style
|
||||||
name="KeyboardView.IceCreamSandwich"
|
name="KeyboardView.IceCreamSandwich"
|
||||||
|
@ -269,6 +300,12 @@
|
||||||
<item name="shadowColor">#00000000</item>
|
<item name="shadowColor">#00000000</item>
|
||||||
<item name="shadowRadius">0.0</item>
|
<item name="shadowRadius">0.0</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style
|
||||||
|
name="LatinKeyboardView.IceCreamSandwich"
|
||||||
|
parent="KeyboardView.IceCreamSandwich"
|
||||||
|
>
|
||||||
|
<item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
|
||||||
|
</style>
|
||||||
<style
|
<style
|
||||||
name="MiniKeyboard.IceCreamSandwich"
|
name="MiniKeyboard.IceCreamSandwich"
|
||||||
parent="Keyboard.IceCreamSandwich"
|
parent="Keyboard.IceCreamSandwich"
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<item name="keyboardStyle">@style/Keyboard.HighContrast</item>
|
<item name="keyboardStyle">@style/Keyboard.HighContrast</item>
|
||||||
<item name="latinKeyboardStyle">@style/LatinKeyboard</item>
|
<item name="latinKeyboardStyle">@style/LatinKeyboard</item>
|
||||||
<item name="keyboardViewStyle">@style/KeyboardView.HighContrast</item>
|
<item name="keyboardViewStyle">@style/KeyboardView.HighContrast</item>
|
||||||
|
<item name="latinKeyboardViewStyle">@style/LatinKeyboardView.HighContrast</item>
|
||||||
<item name="miniKeyboardStyle">@style/MiniKeyboard</item>
|
<item name="miniKeyboardStyle">@style/MiniKeyboard</item>
|
||||||
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView</item>
|
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView</item>
|
||||||
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<item name="keyboardStyle">@style/Keyboard</item>
|
<item name="keyboardStyle">@style/Keyboard</item>
|
||||||
<item name="latinKeyboardStyle">@style/LatinKeyboard</item>
|
<item name="latinKeyboardStyle">@style/LatinKeyboard</item>
|
||||||
<item name="keyboardViewStyle">@style/KeyboardView</item>
|
<item name="keyboardViewStyle">@style/KeyboardView</item>
|
||||||
|
<item name="latinKeyboardViewStyle">@style/LatinKeyboardView</item>
|
||||||
<item name="miniKeyboardStyle">@style/MiniKeyboard</item>
|
<item name="miniKeyboardStyle">@style/MiniKeyboard</item>
|
||||||
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView</item>
|
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView</item>
|
||||||
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<item name="keyboardStyle">@style/Keyboard.Gingerbread</item>
|
<item name="keyboardStyle">@style/Keyboard.Gingerbread</item>
|
||||||
<item name="latinKeyboardStyle">@style/LatinKeyboard</item>
|
<item name="latinKeyboardStyle">@style/LatinKeyboard</item>
|
||||||
<item name="keyboardViewStyle">@style/KeyboardView.Gingerbread</item>
|
<item name="keyboardViewStyle">@style/KeyboardView.Gingerbread</item>
|
||||||
|
<item name="latinKeyboardViewStyle">@style/LatinKeyboardView.Gingerbread</item>
|
||||||
<item name="miniKeyboardStyle">@style/MiniKeyboard.Gingerbread</item>
|
<item name="miniKeyboardStyle">@style/MiniKeyboard.Gingerbread</item>
|
||||||
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Gingerbread</item>
|
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Gingerbread</item>
|
||||||
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<item name="keyboardStyle">@style/Keyboard.IceCreamSandwich</item>
|
<item name="keyboardStyle">@style/Keyboard.IceCreamSandwich</item>
|
||||||
<item name="latinKeyboardStyle">@style/LatinKeyboard.IceCreamSandwich</item>
|
<item name="latinKeyboardStyle">@style/LatinKeyboard.IceCreamSandwich</item>
|
||||||
<item name="keyboardViewStyle">@style/KeyboardView.IceCreamSandwich</item>
|
<item name="keyboardViewStyle">@style/KeyboardView.IceCreamSandwich</item>
|
||||||
|
<item name="latinKeyboardViewStyle">@style/LatinKeyboardView.IceCreamSandwich</item>
|
||||||
<item name="miniKeyboardStyle">@style/MiniKeyboard.IceCreamSandwich</item>
|
<item name="miniKeyboardStyle">@style/MiniKeyboard.IceCreamSandwich</item>
|
||||||
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.IceCreamSandwich</item>
|
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.IceCreamSandwich</item>
|
||||||
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle.IceCreamSandwich</item>
|
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle.IceCreamSandwich</item>
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<item name="keyboardStyle">@style/Keyboard.Stone.Bold</item>
|
<item name="keyboardStyle">@style/Keyboard.Stone.Bold</item>
|
||||||
<item name="latinKeyboardStyle">@style/LatinKeyboard.Stone</item>
|
<item name="latinKeyboardStyle">@style/LatinKeyboard.Stone</item>
|
||||||
<item name="keyboardViewStyle">@style/KeyboardView.Stone.Bold</item>
|
<item name="keyboardViewStyle">@style/KeyboardView.Stone.Bold</item>
|
||||||
|
<item name="latinKeyboardViewStyle">@style/LatinKeyboardView.Stone.Bold</item>
|
||||||
<item name="miniKeyboardStyle">@style/MiniKeyboard.Stone</item>
|
<item name="miniKeyboardStyle">@style/MiniKeyboard.Stone</item>
|
||||||
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Stone</item>
|
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Stone</item>
|
||||||
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<item name="keyboardStyle">@style/Keyboard.Stone</item>
|
<item name="keyboardStyle">@style/Keyboard.Stone</item>
|
||||||
<item name="latinKeyboardStyle">@style/LatinKeyboard.Stone</item>
|
<item name="latinKeyboardStyle">@style/LatinKeyboard.Stone</item>
|
||||||
<item name="keyboardViewStyle">@style/KeyboardView.Stone</item>
|
<item name="keyboardViewStyle">@style/KeyboardView.Stone</item>
|
||||||
|
<item name="latinKeyboardViewStyle">@style/LatinKeyboardView.Stone</item>
|
||||||
<item name="miniKeyboardStyle">@style/MiniKeyboard.Stone</item>
|
<item name="miniKeyboardStyle">@style/MiniKeyboard.Stone</item>
|
||||||
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Stone</item>
|
<item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Stone</item>
|
||||||
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
<item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
|
||||||
|
|
|
@ -157,6 +157,7 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,
|
||||||
mKeyboardView.setKeyPreviewPopupEnabled(
|
mKeyboardView.setKeyPreviewPopupEnabled(
|
||||||
SettingsValues.isKeyPreviewPopupEnabled(mPrefs, mResources),
|
SettingsValues.isKeyPreviewPopupEnabled(mPrefs, mResources),
|
||||||
SettingsValues.getKeyPreviewPopupDismissDelay(mPrefs, mResources));
|
SettingsValues.getKeyPreviewPopupDismissDelay(mPrefs, mResources));
|
||||||
|
mKeyboardView.updateShortcutKey(mSubtypeSwitcher.isShortcutImeReady());
|
||||||
final boolean localeChanged = (oldKeyboard == null)
|
final boolean localeChanged = (oldKeyboard == null)
|
||||||
|| !keyboard.mId.mLocale.equals(oldKeyboard.mId.mLocale);
|
|| !keyboard.mId.mLocale.equals(oldKeyboard.mId.mLocale);
|
||||||
if (keyboard instanceof LatinKeyboard) {
|
if (keyboard instanceof LatinKeyboard) {
|
||||||
|
@ -168,7 +169,6 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,
|
||||||
mKeyboardView.updateSpacebar();
|
mKeyboardView.updateSpacebar();
|
||||||
latinKeyboard.updateSpacebarLanguage(0.0f,
|
latinKeyboard.updateSpacebarLanguage(0.0f,
|
||||||
mSubtypeSwitcher.needsToDisplayLanguage(latinKeyboard.mId.mLocale));
|
mSubtypeSwitcher.needsToDisplayLanguage(latinKeyboard.mId.mLocale));
|
||||||
latinKeyboard.updateShortcutKey(mSubtypeSwitcher.isShortcutImeReady());
|
|
||||||
}
|
}
|
||||||
updateShiftState();
|
updateShiftState();
|
||||||
mInputMethodService.mHandler.startDisplayLanguageOnSpacebar(localeChanged);
|
mInputMethodService.mHandler.startDisplayLanguageOnSpacebar(localeChanged);
|
||||||
|
@ -411,12 +411,8 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onNetworkStateChanged() {
|
public void onNetworkStateChanged() {
|
||||||
final LatinKeyboard keyboard = getLatinKeyboard();
|
if (mKeyboardView != null) {
|
||||||
if (keyboard == null) return;
|
mKeyboardView.updateShortcutKey(SubtypeSwitcher.getInstance().isShortcutImeReady());
|
||||||
final Key updatedKey = keyboard.updateShortcutKey(
|
|
||||||
SubtypeSwitcher.getInstance().isShortcutImeReady());
|
|
||||||
if (updatedKey != null && mKeyboardView != null) {
|
|
||||||
mKeyboardView.invalidateKey(updatedKey);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -60,11 +60,6 @@ public class LatinKeyboard extends Keyboard {
|
||||||
private boolean mNeedsToDisplayLanguage;
|
private boolean mNeedsToDisplayLanguage;
|
||||||
private float mSpacebarTextFadeFactor = 0.0f;
|
private float mSpacebarTextFadeFactor = 0.0f;
|
||||||
|
|
||||||
/* Shortcut key and its icons if available */
|
|
||||||
private final Key mShortcutKey;
|
|
||||||
private final Drawable mEnabledShortcutIcon;
|
|
||||||
private final Drawable mDisabledShortcutIcon;
|
|
||||||
|
|
||||||
// Height in space key the language name will be drawn. (proportional to space key height)
|
// Height in space key the language name will be drawn. (proportional to space key height)
|
||||||
public static final float SPACEBAR_LANGUAGE_BASELINE = 0.6f;
|
public static final float SPACEBAR_LANGUAGE_BASELINE = 0.6f;
|
||||||
// If the full language name needs to be smaller than this value to be drawn on space key,
|
// If the full language name needs to be smaller than this value to be drawn on space key,
|
||||||
|
@ -79,16 +74,13 @@ public class LatinKeyboard extends Keyboard {
|
||||||
mSpaceKey = getKey(CODE_SPACE);
|
mSpaceKey = getKey(CODE_SPACE);
|
||||||
mSpaceIcon = (mSpaceKey != null) ? mSpaceKey.getIcon() : null;
|
mSpaceIcon = (mSpaceKey != null) ? mSpaceKey.getIcon() : null;
|
||||||
|
|
||||||
mShortcutKey = getKey(CODE_SHORTCUT);
|
// TODO: Move these to LatinKeyboardView attributes.
|
||||||
mEnabledShortcutIcon = (mShortcutKey != null) ? mShortcutKey.getIcon() : null;
|
|
||||||
|
|
||||||
final TypedArray a = context.obtainStyledAttributes(
|
final TypedArray a = context.obtainStyledAttributes(
|
||||||
null, R.styleable.LatinKeyboard, R.attr.latinKeyboardStyle, R.style.LatinKeyboard);
|
null, R.styleable.LatinKeyboard, R.attr.latinKeyboardStyle, R.style.LatinKeyboard);
|
||||||
mAutoCorrectionSpacebarLedEnabled = a.getBoolean(
|
mAutoCorrectionSpacebarLedEnabled = a.getBoolean(
|
||||||
R.styleable.LatinKeyboard_autoCorrectionSpacebarLedEnabled, false);
|
R.styleable.LatinKeyboard_autoCorrectionSpacebarLedEnabled, false);
|
||||||
mAutoCorrectionSpacebarLedIcon = a.getDrawable(
|
mAutoCorrectionSpacebarLedIcon = a.getDrawable(
|
||||||
R.styleable.LatinKeyboard_autoCorrectionSpacebarLedIcon);
|
R.styleable.LatinKeyboard_autoCorrectionSpacebarLedIcon);
|
||||||
mDisabledShortcutIcon = a.getDrawable(R.styleable.LatinKeyboard_disabledShortcutIcon);
|
|
||||||
final float spacebarTextRatio = a.getFraction(R.styleable.LatinKeyboard_spacebarTextRatio,
|
final float spacebarTextRatio = a.getFraction(R.styleable.LatinKeyboard_spacebarTextRatio,
|
||||||
1000, 1000, 1) / 1000.0f;
|
1000, 1000, 1) / 1000.0f;
|
||||||
final int keyHeight = mMostCommonKeyHeight - mVerticalGap;
|
final int keyHeight = mMostCommonKeyHeight - mVerticalGap;
|
||||||
|
@ -131,15 +123,6 @@ public class LatinKeyboard extends Keyboard {
|
||||||
return newColor;
|
return newColor;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Move this drawing method to LatinKeyboardView.
|
|
||||||
public Key updateShortcutKey(boolean available) {
|
|
||||||
if (mShortcutKey == null)
|
|
||||||
return null;
|
|
||||||
mShortcutKey.setEnabled(available);
|
|
||||||
mShortcutKey.setIcon(available ? mEnabledShortcutIcon : mDisabledShortcutIcon);
|
|
||||||
return mShortcutKey;
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: Get rid of this method
|
// TODO: Get rid of this method
|
||||||
public boolean needsAutoCorrectionSpacebarLed() {
|
public boolean needsAutoCorrectionSpacebarLed() {
|
||||||
return mAutoCorrectionSpacebarLedEnabled;
|
return mAutoCorrectionSpacebarLedEnabled;
|
||||||
|
|
|
@ -19,8 +19,10 @@ package com.android.inputmethod.keyboard;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
|
import android.content.res.TypedArray;
|
||||||
import android.graphics.Canvas;
|
import android.graphics.Canvas;
|
||||||
import android.graphics.Paint;
|
import android.graphics.Paint;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Message;
|
import android.os.Message;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
|
@ -65,6 +67,14 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
|
||||||
private final boolean mIsSpacebarTriggeringPopupByLongPress;
|
private final boolean mIsSpacebarTriggeringPopupByLongPress;
|
||||||
private boolean mMultipleEnabledIMEsOrSubtypes;
|
private boolean mMultipleEnabledIMEsOrSubtypes;
|
||||||
|
|
||||||
|
/* Shortcut key and its icons if available */
|
||||||
|
private Key mShortcutKey;
|
||||||
|
// TODO: Remove this variable, use KeyboardIconsSet instead.
|
||||||
|
private Drawable mEnabledShortcutIcon;
|
||||||
|
// TODO: Remove this variable and LatinKeyboardView.disabledShortcutIcon attribute.
|
||||||
|
// This should be moved to KeyboardIconsSet.
|
||||||
|
private final Drawable mDisabledShortcutIcon;
|
||||||
|
|
||||||
private final SuddenJumpingTouchEventHandler mTouchScreenRegulator;
|
private final SuddenJumpingTouchEventHandler mTouchScreenRegulator;
|
||||||
|
|
||||||
// Timing constants
|
// Timing constants
|
||||||
|
@ -228,7 +238,7 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
|
||||||
}
|
}
|
||||||
|
|
||||||
public LatinKeyboardView(Context context, AttributeSet attrs) {
|
public LatinKeyboardView(Context context, AttributeSet attrs) {
|
||||||
this(context, attrs, R.attr.keyboardViewStyle);
|
this(context, attrs, R.attr.latinKeyboardViewStyle);
|
||||||
}
|
}
|
||||||
|
|
||||||
public LatinKeyboardView(Context context, AttributeSet attrs, int defStyle) {
|
public LatinKeyboardView(Context context, AttributeSet attrs, int defStyle) {
|
||||||
|
@ -256,6 +266,11 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
|
||||||
final int longPressSpaceKeyTimeout =
|
final int longPressSpaceKeyTimeout =
|
||||||
res.getInteger(R.integer.config_long_press_space_key_timeout);
|
res.getInteger(R.integer.config_long_press_space_key_timeout);
|
||||||
mIsSpacebarTriggeringPopupByLongPress = (longPressSpaceKeyTimeout > 0);
|
mIsSpacebarTriggeringPopupByLongPress = (longPressSpaceKeyTimeout > 0);
|
||||||
|
|
||||||
|
final TypedArray a = context.obtainStyledAttributes(
|
||||||
|
attrs, R.styleable.LatinKeyboardView, defStyle, R.style.LatinKeyboardView);
|
||||||
|
mDisabledShortcutIcon = a.getDrawable(R.styleable.LatinKeyboardView_disabledShortcutIcon);
|
||||||
|
a.recycle();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void startIgnoringDoubleTap() {
|
public void startIgnoringDoubleTap() {
|
||||||
|
@ -310,6 +325,9 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
|
||||||
PointerTracker.setKeyDetector(mKeyDetector);
|
PointerTracker.setKeyDetector(mKeyDetector);
|
||||||
mTouchScreenRegulator.setKeyboard(keyboard);
|
mTouchScreenRegulator.setKeyboard(keyboard);
|
||||||
mMoreKeysPanelCache.clear();
|
mMoreKeysPanelCache.clear();
|
||||||
|
|
||||||
|
mShortcutKey = keyboard.getKey(Keyboard.CODE_SHORTCUT);
|
||||||
|
mEnabledShortcutIcon = (mShortcutKey != null) ? mShortcutKey.getIcon() : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -695,6 +713,13 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updateShortcutKey(boolean available) {
|
||||||
|
if (mShortcutKey == null) return;
|
||||||
|
mShortcutKey.setEnabled(available);
|
||||||
|
mShortcutKey.setIcon(available ? mEnabledShortcutIcon : mDisabledShortcutIcon);
|
||||||
|
invalidateKey(mShortcutKey);
|
||||||
|
}
|
||||||
|
|
||||||
public void updateSpacebar() {
|
public void updateSpacebar() {
|
||||||
mMultipleEnabledIMEsOrSubtypes = Utils.hasMultipleEnabledIMEsOrSubtypes(
|
mMultipleEnabledIMEsOrSubtypes = Utils.hasMultipleEnabledIMEsOrSubtypes(
|
||||||
true /* include aux subtypes */);
|
true /* include aux subtypes */);
|
||||||
|
|
Loading…
Reference in New Issue