From a83a1feb62c4b4ff1a7cf5b6f58ad115491de76f Mon Sep 17 00:00:00 2001 From: "Tadashi G. Takaoka" Date: Thu, 6 Feb 2014 11:34:12 +0900 Subject: Consolidate keyIcon and code with keyLabel attribute Change-Id: I75fbd348fab5022606ca14552eb03b15af6684c8 --- java/src/com/android/inputmethod/keyboard/Key.java | 19 ++++++++----------- .../inputmethod/keyboard/internal/KeyStylesSet.java | 2 -- 2 files changed, 8 insertions(+), 13 deletions(-) (limited to 'java/src') diff --git a/java/src/com/android/inputmethod/keyboard/Key.java b/java/src/com/android/inputmethod/keyboard/Key.java index 1b9007da2..ed691f874 100644 --- a/java/src/com/android/inputmethod/keyboard/Key.java +++ b/java/src/com/android/inputmethod/keyboard/Key.java @@ -316,20 +316,17 @@ public class Key implements Comparable { mActionFlags = actionFlags; final String keySpec = style.getString(keyAttr, R.styleable.Keyboard_Key_keyLabel); + if (TextUtils.isEmpty(keySpec)) { + throw new RuntimeException("Empty keySpec"); + } - final int iconIdInAttr = KeySpecParser.getIconId(style.getString(keyAttr, - R.styleable.Keyboard_Key_keyIcon)); - mIconId = (iconIdInAttr != ICON_UNDEFINED) ? iconIdInAttr - : KeySpecParser.getIconId(keySpec); + mIconId = KeySpecParser.getIconId(keySpec); final int disabledIconId = KeySpecParser.getIconId(style.getString(keyAttr, R.styleable.Keyboard_Key_keyIconDisabled)); final int previewIconId = KeySpecParser.getIconId(style.getString(keyAttr, R.styleable.Keyboard_Key_keyIconPreview)); - final int codeInAttr = KeySpecParser.parseCode(style.getString(keyAttr, - R.styleable.Keyboard_Key_code), params.mCodesSet, CODE_UNSPECIFIED); - final int code = (codeInAttr != CODE_UNSPECIFIED) ? codeInAttr - : KeySpecParser.getCode(keySpec, params.mCodesSet); + final int code = KeySpecParser.getCode(keySpec, params.mCodesSet); if ((mLabelFlags & LABEL_FLAGS_FROM_CUSTOM_ACTION_LABEL) != 0) { mLabel = params.mId.mCustomActionLabel; } else if (code >= Character.MIN_SUPPLEMENTARY_CODE_POINT) { @@ -376,10 +373,10 @@ public class Key implements Comparable { } else { mCode = StringUtils.toUpperCaseOfCodeForLocale(code, needsToUpperCase, locale); } + final int altCodeInAttr = KeySpecParser.parseCode(style.getString(keyAttr, + R.styleable.Keyboard_Key_altCode), params.mCodesSet, CODE_UNSPECIFIED); final int altCode = StringUtils.toUpperCaseOfCodeForLocale( - KeySpecParser.parseCode(style.getString(keyAttr, - R.styleable.Keyboard_Key_altCode), params.mCodesSet, CODE_UNSPECIFIED), - needsToUpperCase, locale); + altCodeInAttr, needsToUpperCase, locale); mOptionalAttributes = OptionalAttributes.newInstance(outputText, altCode, disabledIconId, previewIconId, visualInsetsLeft, visualInsetsRight); mKeyVisualAttributes = KeyVisualAttributes.newInstance(keyAttr); diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyStylesSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyStylesSet.java index a64f23501..f6180e32a 100644 --- a/java/src/com/android/inputmethod/keyboard/internal/KeyStylesSet.java +++ b/java/src/com/android/inputmethod/keyboard/internal/KeyStylesSet.java @@ -135,14 +135,12 @@ public final class KeyStylesSet { public void readKeyAttributes(final TypedArray keyAttr) { // TODO: Currently not all Key attributes can be declared as style. - readString(keyAttr, R.styleable.Keyboard_Key_code); readString(keyAttr, R.styleable.Keyboard_Key_altCode); readString(keyAttr, R.styleable.Keyboard_Key_keyLabel); readString(keyAttr, R.styleable.Keyboard_Key_keyHintLabel); readStringArray(keyAttr, R.styleable.Keyboard_Key_moreKeys); readStringArray(keyAttr, R.styleable.Keyboard_Key_additionalMoreKeys); readFlags(keyAttr, R.styleable.Keyboard_Key_keyLabelFlags); - readString(keyAttr, R.styleable.Keyboard_Key_keyIcon); readString(keyAttr, R.styleable.Keyboard_Key_keyIconDisabled); readString(keyAttr, R.styleable.Keyboard_Key_keyIconPreview); readInt(keyAttr, R.styleable.Keyboard_Key_maxMoreKeysColumn); -- cgit v1.2.3-83-g751a