Loading java/res/values/attrs.xml +4 −0 Original line number Diff line number Diff line Loading @@ -269,6 +269,10 @@ <!-- If true, character case of code, altCode, moreKeys, keyOutputText, keyLabel, or keyHintLabel will never be subject to change. --> <flag name="preserveCase" value="0x8000" /> <!-- If true, use keyTextInactivatedColor for the label --> <flag name="inactivatedLabel" value="0x10000" /> <!-- If true, use keyUppercaseLetterInactivatedColor for the uppercase letter --> <flag name="inactivatedUppercaseLetter" value="0x20000" /> </attr> <!-- The icon to display on the key instead of the label. --> <attr name="keyIcon" format="enum"> Loading java/src/com/android/inputmethod/keyboard/Key.java +10 −0 Original line number Diff line number Diff line Loading @@ -72,6 +72,8 @@ public class Key { private static final int LABEL_FLAGS_WITH_ICON_RIGHT = 0x2000; private static final int LABEL_FLAGS_AUTO_X_SCALE = 0x4000; private static final int LABEL_FLAGS_PRESERVE_CASE = 0x8000; private static final int LABEL_FLAGS_INACTIVATED_LABEL = 0x10000; private static final int LABEL_FLAGS_INACTIVATED_UPPERCASE_LETTER = 0x20000; /** Icon to display instead of a label. Icon takes precedence over a label */ private final int mIconAttrId; Loading Loading @@ -509,6 +511,14 @@ public class Key { return (mLabelFlags & LABEL_FLAGS_AUTO_X_SCALE) != 0; } public boolean isInactivatedLabel() { return (mLabelFlags & LABEL_FLAGS_INACTIVATED_LABEL) != 0; } public boolean isInactivatedUppercaseLetter() { return (mLabelFlags & LABEL_FLAGS_INACTIVATED_UPPERCASE_LETTER) != 0; } // TODO: Get rid of this method. public Drawable getIcon(KeyboardIconsSet iconSet) { return mEnabled ? mIcon : iconSet.getIconByAttrId(mDisabledIconAttrId); Loading java/src/com/android/inputmethod/keyboard/KeyboardView.java +11 −3 Original line number Diff line number Diff line Loading @@ -571,8 +571,11 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { Math.min(1.0f, (keyWidth * MAX_LABEL_RATIO) / getLabelWidth(label, paint))); } // TODO: Remove this first if-clause. if (key.hasUppercaseLetter() && mKeyboard.isManualTemporaryUpperCase()) { paint.setColor(params.mKeyTextInactivatedColor); } else if (key.isInactivatedLabel()) { paint.setColor(params.mKeyTextInactivatedColor); } else { paint.setColor(params.mKeyTextColor); } Loading Loading @@ -618,9 +621,14 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { hintSize = params.mKeyHintLabelSize; paint.setTypeface(Typeface.DEFAULT); } else if (key.hasUppercaseLetter()) { hintColor = mKeyboard.isManualTemporaryUpperCase() ? params.mKeyUppercaseLetterActivatedColor : params.mKeyUppercaseLetterInactivatedColor; // TODO: Remove this first if-clause. if (mKeyboard.isManualTemporaryUpperCase()) { hintColor = params.mKeyUppercaseLetterActivatedColor; } else if (!key.isInactivatedUppercaseLetter()) { hintColor = params.mKeyUppercaseLetterActivatedColor; } else { hintColor = params.mKeyUppercaseLetterInactivatedColor; } hintSize = params.mKeyUppercaseLetterSize; } else { // key.hasHintLetter() hintColor = params.mKeyHintLetterColor; Loading Loading
java/res/values/attrs.xml +4 −0 Original line number Diff line number Diff line Loading @@ -269,6 +269,10 @@ <!-- If true, character case of code, altCode, moreKeys, keyOutputText, keyLabel, or keyHintLabel will never be subject to change. --> <flag name="preserveCase" value="0x8000" /> <!-- If true, use keyTextInactivatedColor for the label --> <flag name="inactivatedLabel" value="0x10000" /> <!-- If true, use keyUppercaseLetterInactivatedColor for the uppercase letter --> <flag name="inactivatedUppercaseLetter" value="0x20000" /> </attr> <!-- The icon to display on the key instead of the label. --> <attr name="keyIcon" format="enum"> Loading
java/src/com/android/inputmethod/keyboard/Key.java +10 −0 Original line number Diff line number Diff line Loading @@ -72,6 +72,8 @@ public class Key { private static final int LABEL_FLAGS_WITH_ICON_RIGHT = 0x2000; private static final int LABEL_FLAGS_AUTO_X_SCALE = 0x4000; private static final int LABEL_FLAGS_PRESERVE_CASE = 0x8000; private static final int LABEL_FLAGS_INACTIVATED_LABEL = 0x10000; private static final int LABEL_FLAGS_INACTIVATED_UPPERCASE_LETTER = 0x20000; /** Icon to display instead of a label. Icon takes precedence over a label */ private final int mIconAttrId; Loading Loading @@ -509,6 +511,14 @@ public class Key { return (mLabelFlags & LABEL_FLAGS_AUTO_X_SCALE) != 0; } public boolean isInactivatedLabel() { return (mLabelFlags & LABEL_FLAGS_INACTIVATED_LABEL) != 0; } public boolean isInactivatedUppercaseLetter() { return (mLabelFlags & LABEL_FLAGS_INACTIVATED_UPPERCASE_LETTER) != 0; } // TODO: Get rid of this method. public Drawable getIcon(KeyboardIconsSet iconSet) { return mEnabled ? mIcon : iconSet.getIconByAttrId(mDisabledIconAttrId); Loading
java/src/com/android/inputmethod/keyboard/KeyboardView.java +11 −3 Original line number Diff line number Diff line Loading @@ -571,8 +571,11 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { Math.min(1.0f, (keyWidth * MAX_LABEL_RATIO) / getLabelWidth(label, paint))); } // TODO: Remove this first if-clause. if (key.hasUppercaseLetter() && mKeyboard.isManualTemporaryUpperCase()) { paint.setColor(params.mKeyTextInactivatedColor); } else if (key.isInactivatedLabel()) { paint.setColor(params.mKeyTextInactivatedColor); } else { paint.setColor(params.mKeyTextColor); } Loading Loading @@ -618,9 +621,14 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { hintSize = params.mKeyHintLabelSize; paint.setTypeface(Typeface.DEFAULT); } else if (key.hasUppercaseLetter()) { hintColor = mKeyboard.isManualTemporaryUpperCase() ? params.mKeyUppercaseLetterActivatedColor : params.mKeyUppercaseLetterInactivatedColor; // TODO: Remove this first if-clause. if (mKeyboard.isManualTemporaryUpperCase()) { hintColor = params.mKeyUppercaseLetterActivatedColor; } else if (!key.isInactivatedUppercaseLetter()) { hintColor = params.mKeyUppercaseLetterActivatedColor; } else { hintColor = params.mKeyUppercaseLetterInactivatedColor; } hintSize = params.mKeyUppercaseLetterSize; } else { // key.hasHintLetter() hintColor = params.mKeyHintLetterColor; Loading