aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-02-06 11:34:12 +0900
committerTadashi G. Takaoka <takaoka@google.com>2014-02-07 18:47:22 +0900
commita83a1feb62c4b4ff1a7cf5b6f58ad115491de76f (patch)
tree916bc97d73c42e47b357c2a92e67ae2324c0b5d8
parentd6f147e14293d717e94ae30f1f33750adec6b9c5 (diff)
downloadlatinime-a83a1feb62c4b4ff1a7cf5b6f58ad115491de76f.tar.gz
latinime-a83a1feb62c4b4ff1a7cf5b6f58ad115491de76f.tar.xz
latinime-a83a1feb62c4b4ff1a7cf5b6f58ad115491de76f.zip
Consolidate keyIcon and code with keyLabel attribute
Change-Id: I75fbd348fab5022606ca14552eb03b15af6684c8
-rw-r--r--java/res/values/attrs.xml8
-rw-r--r--java/res/xml-sw600dp/key_styles_common.xml57
-rw-r--r--java/res/xml-sw600dp/key_styles_enter.xml50
-rw-r--r--java/res/xml/key_devanagari_sign_anusvara.xml3
-rw-r--r--java/res/xml/key_devanagari_sign_candrabindu.xml3
-rw-r--r--java/res/xml/key_devanagari_sign_nukta.xml3
-rw-r--r--java/res/xml/key_devanagari_vowel_sign_candra_o.xml3
-rw-r--r--java/res/xml/key_devanagari_vowel_sign_vocalic_r.xml3
-rw-r--r--java/res/xml/key_styles_common.xml72
-rw-r--r--java/res/xml/key_styles_enter.xml54
-rw-r--r--java/res/xml/key_styles_number.xml26
-rw-r--r--java/res/xml/keys_curly_brackets.xml6
-rw-r--r--java/res/xml/keys_less_greater.xml13
-rw-r--r--java/res/xml/keys_parentheses.xml6
-rw-r--r--java/res/xml/keys_square_brackets.xml6
-rw-r--r--java/res/xml/keystyle_devanagari_sign_virama.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_sign_visarga.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_aa.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_ai.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_au.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_e.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_i.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_ii.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_o.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_u.xml3
-rw-r--r--java/res/xml/keystyle_devanagari_vowel_sign_uu.xml3
-rw-r--r--java/res/xml/rowkeys_symbols3.xml7
-rw-r--r--java/res/xml/rowkeys_thai1.xml9
-rw-r--r--java/res/xml/rowkeys_thai2.xml12
-rw-r--r--java/res/xml/rowkeys_thai3.xml12
-rw-r--r--java/res/xml/rowkeys_thai4.xml12
-rw-r--r--java/res/xml/rows_number_normal.xml4
-rw-r--r--java/res/xml/rows_phone.xml3
-rw-r--r--java/src/com/android/inputmethod/keyboard/Key.java19
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyStylesSet.java2
-rw-r--r--tools/make-keyboard-text/res/values/donottranslate-more-keys.xml4
36 files changed, 156 insertions, 274 deletions
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index 5bedd4ac2..0eacdb1bf 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -240,11 +240,6 @@
</declare-styleable>
<declare-styleable name="Keyboard_Key">
- <!-- TODO: Remove code attribute and consolidate with keySpec. -->
- <!-- The unicode value that this key outputs.
- Code value represented in hexadecimal prefixed with "0x" or code value reference using
- "!code/<code_name>" notation. -->
- <attr name="code" format="string" />
<!-- The alternate unicode value that this key outputs while typing.
Code value represented in hexadecimal prefixed with "0x" or code value reference using
"!code/<code_name>" notation. -->
@@ -318,9 +313,6 @@
<!-- If true, disable additionalMoreKeys. -->
<flag name="disableAdditionalMoreKeys" value="0x80000000" />
</attr>
- <!-- TODO: Remove keyIcon attribute and consolidate with keySpec. -->
- <!-- The icon to display on the key instead of the label. -->
- <attr name="keyIcon" format="string" />
<!-- The icon for disabled key -->
<attr name="keyIconDisabled" format="string" />
<!-- The icon to show in the popup preview. -->
diff --git a/java/res/xml-sw600dp/key_styles_common.xml b/java/res/xml-sw600dp/key_styles_common.xml
index 4e4579b4f..4dbc23ed0 100644
--- a/java/res/xml-sw600dp/key_styles_common.xml
+++ b/java/res/xml-sw600dp/key_styles_common.xml
@@ -39,7 +39,6 @@
<!-- Base style for shift key. A single space is used for dummy label in moreKeys. -->
<key-style
latin:styleName="baseForShiftKeyStyle"
- latin:code="!code/key_shift"
latin:keyActionFlags="noKeyPreview"
latin:keyLabelFlags="preserveCase"
latin:moreKeys="!noPanelAutoMoreKey!, |!code/key_capslock" />
@@ -49,7 +48,7 @@
>
<key-style
latin:styleName="shiftKeyStyle"
- latin:keyIcon="!icon/shift_key_shifted"
+ latin:keyLabel="!icon/shift_key_shifted|!code/key_shift"
latin:backgroundType="stickyOff"
latin:parentStyle="baseForShiftKeyStyle" />
</case>
@@ -58,71 +57,56 @@
>
<key-style
latin:styleName="shiftKeyStyle"
- latin:keyIcon="!icon/shift_key_shifted"
+ latin:keyLabel="!icon/shift_key_shifted|!code/key_shift"
latin:backgroundType="stickyOn"
latin:parentStyle="baseForShiftKeyStyle" />
</case>
<default>
<key-style
latin:styleName="shiftKeyStyle"
- latin:keyIcon="!icon/shift_key"
+ latin:keyLabel="!icon/shift_key|!code/key_shift"
latin:backgroundType="stickyOff"
latin:parentStyle="baseForShiftKeyStyle" />
</default>
</switch>
<key-style
latin:styleName="deleteKeyStyle"
- latin:code="!code/key_delete"
- latin:keyIcon="!icon/delete_key"
+ latin:keyLabel="!icon/delete_key|!code/key_delete"
latin:keyActionFlags="isRepeatable|noKeyPreview"
latin:backgroundType="functional" />
<include
latin:keyboardLayout="@xml/key_styles_enter" />
- <!-- Override defaultEnterKeyStyle in key_styles_enter.xml -->
- <key-style
- latin:styleName="defaultEnterKeyStyle"
- latin:code="!code/key_enter"
- latin:keyIcon="!icon/enter_key"
- latin:keyLabelFlags="preserveCase|autoXScale|followKeyLargeLabelRatio"
- latin:keyActionFlags="noKeyPreview"
- latin:backgroundType="functional"
- latin:parentStyle="navigateMoreKeysStyle" />
<key-style
latin:styleName="spaceKeyStyle"
- latin:code="!code/key_space"
+ latin:keyLabel=" |!code/key_space"
latin:keyActionFlags="noKeyPreview|enableLongPress" />
<!-- U+200C: ZERO WIDTH NON-JOINER
U+200D: ZERO WIDTH JOINER -->
<key-style
latin:styleName="zwnjKeyStyle"
- latin:code="0x200C"
- latin:keyIcon="!icon/zwnj_key"
+ latin:keyLabel="!icon/zwnj_key|&#x200C;"
latin:moreKeys="!icon/zwj_key|&#x200D;"
latin:keyLabelFlags="hasPopupHint"
latin:keyActionFlags="noKeyPreview" />
<key-style
latin:styleName="shortcutKeyStyle"
- latin:code="!code/key_shortcut"
- latin:keyIcon="!icon/shortcut_key"
+ latin:keyLabel="!icon/shortcut_key|!code/key_shortcut"
latin:keyIconDisabled="!icon/shortcut_key_disabled"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
<key-style
latin:styleName="languageSwitchKeyStyle"
- latin:code="!code/key_language_switch"
- latin:keyIcon="!icon/language_switch_key"
+ latin:keyLabel="!icon/language_switch_key|!code/key_language_switch"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping|enableLongPress"
latin:altCode="!code/key_space" />
<key-style
latin:styleName="emojiKeyStyle"
- latin:code="!code/key_emoji"
- latin:keyIcon="!icon/emoji_key"
+ latin:keyLabel="!icon/emoji_key|!code/key_emoji"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
<key-style
latin:styleName="settingsKeyStyle"
- latin:code="!code/key_settings"
- latin:keyIcon="!icon/settings_key"
+ latin:keyLabel="!icon/settings_key|!code/key_settings"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
<switch>
@@ -132,8 +116,7 @@
>
<key-style
latin:styleName="tabKeyStyle"
- latin:code="!code/key_action_previous"
- latin:keyIcon="!icon/tab_key"
+ latin:keyLabel="!icon/tab_key|!code/key_action_previous"
latin:keyIconPreview="!icon/tab_key_preview"
latin:backgroundType="functional" />
</case>
@@ -143,16 +126,14 @@
>
<key-style
latin:styleName="tabKeyStyle"
- latin:code="!code/key_action_next"
- latin:keyIcon="!icon/tab_key"
+ latin:keyLabel="!icon/tab_key|!code/key_action_next"
latin:keyIconPreview="!icon/tab_key_preview"
latin:backgroundType="functional" />
</case>
<default>
<key-style
latin:styleName="tabKeyStyle"
- latin:code="!code/key_tab"
- latin:keyIcon="!icon/tab_key"
+ latin:keyLabel="!icon/tab_key|!code/key_tab"
latin:keyIconPreview="!icon/tab_key_preview"
latin:backgroundType="functional" />
</default>
@@ -164,23 +145,19 @@
latin:backgroundType="functional" />
<key-style
latin:styleName="toSymbolKeyStyle"
- latin:code="!code/key_switch_alpha_symbol"
- latin:keyLabel="!text/label_to_symbol_key"
+ latin:keyLabel="!text/label_to_symbol_key|!code/key_switch_alpha_symbol"
latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="toAlphaKeyStyle"
- latin:code="!code/key_switch_alpha_symbol"
- latin:keyLabel="!text/label_to_alpha_key"
+ latin:keyLabel="!text/label_to_alpha_key|!code/key_switch_alpha_symbol"
latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="toMoreSymbolKeyStyle"
- latin:code="!code/key_shift"
- latin:keyLabel="!text/label_to_more_symbol_for_tablet_key"
+ latin:keyLabel="!text/label_to_more_symbol_for_tablet_key|!code/key_shift"
latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="backFromMoreSymbolKeyStyle"
- latin:code="!code/key_shift"
- latin:keyLabel="!text/label_to_symbol_key"
+ latin:keyLabel="!text/label_to_symbol_key|!code/key_shift"
latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="comKeyStyle"
diff --git a/java/res/xml-sw600dp/key_styles_enter.xml b/java/res/xml-sw600dp/key_styles_enter.xml
index 1d8ccfae3..39c5380b4 100644
--- a/java/res/xml-sw600dp/key_styles_enter.xml
+++ b/java/res/xml-sw600dp/key_styles_enter.xml
@@ -99,22 +99,11 @@
<!-- Enter key style -->
<key-style
latin:styleName="defaultEnterKeyStyle"
- latin:code="!code/key_enter"
- latin:keyIcon="!icon/enter_key"
+ latin:keyLabel="!icon/enter_key|!code/key_enter"
latin:keyLabelFlags="preserveCase|autoXScale|followKeyLabelRatio"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional"
latin:parentStyle="navigateMoreKeysStyle" />
- <key-style
- latin:styleName="shiftEnterKeyStyle"
- latin:code="!code/key_shift_enter"
- latin:parentStyle="defaultEnterKeyStyle" />
- <key-style
- latin:styleName="defaultActionEnterKeyStyle"
- latin:code="!code/key_enter"
- latin:keyIcon="!icon/undefined"
- latin:backgroundType="action"
- latin:parentStyle="defaultEnterKeyStyle" />
<switch>
<!-- Shift + Enter in textMultiLine field. -->
<case
@@ -123,63 +112,72 @@
>
<key-style
latin:styleName="enterKeyStyle"
- latin:parentStyle="shiftEnterKeyStyle" />
+ latin:keyLabel="!text/label_go_key|!code/key_shift_enter"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionGo"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_go_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_go_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionNext"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_next_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_next_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionPrevious"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_previous_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_previous_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionDone"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_done_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_done_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionSend"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_send_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_send_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionSearch"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyIcon="!icon/search_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!icon/search_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionCustomLabel"
>
<key-style
latin:styleName="enterKeyStyle"
+ latin:keyLabel="dummy_label|!code/key_enter"
latin:keyLabelFlags="fromCustomActionLabel"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<!-- imeAction is either actionNone or actionUnspecified. -->
<default>
diff --git a/java/res/xml/key_devanagari_sign_anusvara.xml b/java/res/xml/key_devanagari_sign_anusvara.xml
index 0acd3bcd4..ed9cfbba1 100644
--- a/java/res/xml/key_devanagari_sign_anusvara.xml
+++ b/java/res/xml/key_devanagari_sign_anusvara.xml
@@ -28,7 +28,6 @@
<!-- U+25CC: "◌" DOTTED CIRCLE
U+0902: "ं" DEVANAGARI SIGN ANUSVARA -->
<Key
- latin:keyLabel="&#x25CC;&#x0902;"
- latin:code="0x0902"
+ latin:keyLabel="&#x25CC;&#x0902;|&#x0902;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/key_devanagari_sign_candrabindu.xml b/java/res/xml/key_devanagari_sign_candrabindu.xml
index df0c4e054..225d2a6e6 100644
--- a/java/res/xml/key_devanagari_sign_candrabindu.xml
+++ b/java/res/xml/key_devanagari_sign_candrabindu.xml
@@ -44,7 +44,6 @@
U+0901: "ँ" DEVANAGARI SIGN CANDRABINDU -->
<Key
latin:keyStyle="moreKeysDevanagariSignCandrabindu"
- latin:keyLabel="&#x25CC;&#x0901;"
- latin:code="0x0901"
+ latin:keyLabel="&#x25CC;&#x0901;|&#x0901;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/key_devanagari_sign_nukta.xml b/java/res/xml/key_devanagari_sign_nukta.xml
index f7a03ee90..8f8da2709 100644
--- a/java/res/xml/key_devanagari_sign_nukta.xml
+++ b/java/res/xml/key_devanagari_sign_nukta.xml
@@ -46,7 +46,6 @@
U+093C: "़" DEVANAGARI SIGN NUKTA -->
<Key
latin:keyStyle="moreKeysDevanagariSignNukta"
- latin:keyLabel="&#x25CC;&#x093C;"
- latin:code="0x093C"
+ latin:keyLabel="&#x25CC;&#x093C;|&#x093C;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/key_devanagari_vowel_sign_candra_o.xml b/java/res/xml/key_devanagari_vowel_sign_candra_o.xml
index 370fc5405..8d5368c46 100644
--- a/java/res/xml/key_devanagari_vowel_sign_candra_o.xml
+++ b/java/res/xml/key_devanagari_vowel_sign_candra_o.xml
@@ -28,7 +28,6 @@
<!-- U+25CC: "◌" DOTTED CIRCLE
U+0949: "ॉ" DEVANAGARI VOWEL SIGN CANDRA O -->
<Key
- latin:keyLabel="&#x25CC;&#x0949;"
- latin:code="0x0949"
+ latin:keyLabel="&#x25CC;&#x0949;|&#x0949;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/key_devanagari_vowel_sign_vocalic_r.xml b/java/res/xml/key_devanagari_vowel_sign_vocalic_r.xml
index f150d7ed9..fb912253d 100644
--- a/java/res/xml/key_devanagari_vowel_sign_vocalic_r.xml
+++ b/java/res/xml/key_devanagari_vowel_sign_vocalic_r.xml
@@ -52,7 +52,6 @@
U+0943: "ृ" DEVANAGARI VOWEL SIGN VOCALIC R -->
<Key
latin:keyStyle="moreKeysDevanagariVowelSignVocalicR"
- latin:keyLabel="&#x25CC;&#x0943;"
- latin:code="0x0943"
+ latin:keyLabel="&#x25CC;&#x0943;|&#x0943;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/key_styles_common.xml b/java/res/xml/key_styles_common.xml
index 9c40d627a..2e59cedbd 100644
--- a/java/res/xml/key_styles_common.xml
+++ b/java/res/xml/key_styles_common.xml
@@ -42,7 +42,6 @@
<!-- Base style for shift key. A single space is used for dummy label in moreKeys. -->
<key-style
latin:styleName="baseForShiftKeyStyle"
- latin:code="!code/key_shift"
latin:keyActionFlags="noKeyPreview"
latin:keyLabelFlags="preserveCase"
latin:moreKeys="!noPanelAutoMoreKey!, |!code/key_capslock" />
@@ -52,7 +51,7 @@
>
<key-style
latin:styleName="shiftKeyStyle"
- latin:keyIcon="!icon/shift_key_shifted"
+ latin:keyLabel="!icon/shift_key_shifted|!code/key_shift"
latin:backgroundType="stickyOff"
latin:parentStyle="baseForShiftKeyStyle" />
</case>
@@ -61,99 +60,70 @@
>
<key-style
latin:styleName="shiftKeyStyle"
- latin:keyIcon="!icon/shift_key_shifted"
+ latin:keyLabel="!icon/shift_key_shifted|!code/key_shift"
latin:backgroundType="stickyOn"
latin:parentStyle="baseForShiftKeyStyle" />
</case>
<default>
<key-style
latin:styleName="shiftKeyStyle"
- latin:keyIcon="!icon/shift_key"
+ latin:keyLabel="!icon/shift_key|!code/key_shift"
latin:backgroundType="stickyOff"
latin:parentStyle="baseForShiftKeyStyle" />
</default>
</switch>
<key-style
latin:styleName="deleteKeyStyle"
- latin:code="!code/key_delete"
- latin:keyIcon="!icon/delete_key"
+ latin:keyLabel="!icon/delete_key|!code/key_delete"
latin:keyActionFlags="isRepeatable|noKeyPreview"
latin:backgroundType="functional" />
<include
latin:keyboardLayout="@xml/key_styles_enter" />
<key-style
latin:styleName="spaceKeyStyle"
- latin:code="!code/key_space"
+ latin:keyLabel=" |!code/key_space"
latin:keyActionFlags="noKeyPreview|enableLongPress" />
<!-- U+200C: ZERO WIDTH NON-JOINER
U+200D: ZERO WIDTH JOINER -->
<key-style
latin:styleName="zwnjKeyStyle"
- latin:code="0x200C"
- latin:keyIcon="!icon/zwnj_key"
+ latin:keyLabel="!icon/zwnj_key|&#x200C;"
latin:moreKeys="!icon/zwj_key|&#x200D;"
latin:keyLabelFlags="hasPopupHint"
latin:keyActionFlags="noKeyPreview" />
<key-style
latin:styleName="shortcutKeyStyle"
- latin:code="!code/key_shortcut"
- latin:keyIcon="!icon/shortcut_key"
+ latin:keyLabel="!icon/shortcut_key|!code/key_shortcut"
latin:keyIconDisabled="!icon/shortcut_key_disabled"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping"
latin:altCode="!code/key_space"
latin:parentStyle="f1MoreKeysStyle" />
<key-style
latin:styleName="settingsKeyStyle"
- latin:code="!code/key_settings"
- latin:keyIcon="!icon/settings_key"
+ latin:keyLabel="!icon/settings_key|!code/key_settings"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping"
latin:altCode="!code/key_space"
latin:backgroundType="functional" />
<key-style
latin:styleName="languageSwitchKeyStyle"
- latin:code="!code/key_language_switch"
- latin:keyIcon="!icon/language_switch_key"
+ latin:keyLabel="!icon/language_switch_key|!code/key_language_switch"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping|enableLongPress"
latin:altCode="!code/key_space" />
<key-style
latin:styleName="emojiKeyStyle"
- latin:code="!code/key_emoji"
- latin:keyIcon="!icon/emoji_key"
+ latin:keyLabel="!icon/emoji_key|!code/key_emoji"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
- <!-- Overriding EnterKeyStyle here -->
- <switch>
- <!-- Shift + Enter in textMultiLine field. -->
- <case
- latin:isMultiLine="true"
- latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:parentStyle="shiftEnterKeyStyle" />
- </case>
- <!-- Smiley in textShortMessage field.
- Overrides common enter key style. -->
- <case
- latin:mode="im"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:parentStyle="emojiKeyStyle" />
- </case>
- </switch>
<key-style
latin:styleName="tabKeyStyle"
- latin:code="!code/key_tab"
- latin:keyIcon="!icon/tab_key"
+ latin:keyLabel="!icon/tab_key|!code/key_tab"
latin:keyIconPreview="!icon/tab_key_preview"
latin:backgroundType="functional" />
<!-- Note: This key style is not for functional tab key. This is used for the tab key which is
laid out as normal letter key. -->
<key-style
latin:styleName="nonSpecialBackgroundTabKeyStyle"
- latin:code="!code/key_tab"
- latin:keyIcon="!icon/tab_key"
+ latin:keyLabel="!icon/tab_key|!code/key_tab"
latin:keyIconPreview="!icon/tab_key_preview" />
<key-style
latin:styleName="baseForLayoutSwitchKeyStyle"
@@ -161,27 +131,21 @@
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional" />
<key-style
- latin:styleName="baseForToSymbolKeyStyle"
- latin:keyLabel="!text/label_to_symbol_key"
- latin:parentStyle="baseForLayoutSwitchKeyStyle" />
- <key-style
latin:styleName="toSymbolKeyStyle"
- latin:code="!code/key_switch_alpha_symbol"
- latin:parentStyle="baseForToSymbolKeyStyle" />
+ latin:keyLabel="!text/label_to_symbol_key|!code/key_switch_alpha_symbol"
+ latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="toAlphaKeyStyle"
- latin:code="!code/key_switch_alpha_symbol"
- latin:keyLabel="!text/label_to_alpha_key"
+ latin:keyLabel="!text/label_to_alpha_key|!code/key_switch_alpha_symbol"
latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="toMoreSymbolKeyStyle"
- latin:code="!code/key_shift"
- latin:keyLabel="!text/label_to_more_symbol_key"
+ latin:keyLabel="!text/label_to_more_symbol_key|!code/key_shift"
latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="backFromMoreSymbolKeyStyle"
- latin:code="!code/key_shift"
- latin:parentStyle="baseForToSymbolKeyStyle" />
+ latin:keyLabel="!text/label_to_symbol_key|!code/key_shift"
+ latin:parentStyle="baseForLayoutSwitchKeyStyle" />
<key-style
latin:styleName="comKeyStyle"
latin:keyLabel="!text/keylabel_for_popular_domain|!text/keylabel_for_popular_domain"
diff --git a/java/res/xml/key_styles_enter.xml b/java/res/xml/key_styles_enter.xml
index 083e6a67d..b3def1fb4 100644
--- a/java/res/xml/key_styles_enter.xml
+++ b/java/res/xml/key_styles_enter.xml
@@ -255,21 +255,13 @@
<!-- Enter key style -->
<key-style
latin:styleName="defaultEnterKeyStyle"
- latin:code="!code/key_enter"
- latin:keyIcon="!icon/enter_key"
latin:keyLabelFlags="preserveCase|autoXScale|followKeyLabelRatio"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional"
latin:parentStyle="navigateMoreKeysStyle" />
<key-style
latin:styleName="shiftEnterKeyStyle"
- latin:code="!code/key_shift_enter"
- latin:parentStyle="defaultEnterKeyStyle" />
- <key-style
- latin:styleName="defaultActionEnterKeyStyle"
- latin:code="!code/key_enter"
- latin:keyIcon="!icon/undefined"
- latin:backgroundType="action"
+ latin:keyLabel="!icon/enter_key|!code/key_shift_enter"
latin:parentStyle="defaultEnterKeyStyle" />
<switch>
<!-- Shift + Enter in textMultiLine field. -->
@@ -281,66 +273,84 @@
latin:styleName="enterKeyStyle"
latin:parentStyle="shiftEnterKeyStyle" />
</case>
+ <!-- Smiley in textShortMessage field.
+ This <case> should be after Shift + Enter <case> and before any of action <case>. -->
+ <case
+ latin:mode="im"
+ >
+ <key-style
+ latin:styleName="enterKeyStyle"
+ latin:parentStyle="emojiKeyStyle" />
+ </case>
<case
latin:imeAction="actionGo"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_go_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_go_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionNext"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_next_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_next_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionPrevious"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_previous_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_previous_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionDone"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_done_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_done_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionSend"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyLabel="!text/label_send_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!text/label_send_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionSearch"
>
<key-style
latin:styleName="enterKeyStyle"
- latin:keyIcon="!icon/search_key"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:keyLabel="!icon/search_key|!code/key_enter"
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<case
latin:imeAction="actionCustomLabel"
>
<key-style
latin:styleName="enterKeyStyle"
+ latin:keyLabel="dummy_label|!code/key_enter"
latin:keyLabelFlags="fromCustomActionLabel"
- latin:parentStyle="defaultActionEnterKeyStyle" />
+ latin:backgroundType="action"
+ latin:parentStyle="defaultEnterKeyStyle" />
</case>
<!-- imeAction is either actionNone or actionUnspecified. -->
<default>
<key-style
latin:styleName="enterKeyStyle"
+ latin:keyLabel="!icon/enter_key|!code/key_enter"
latin:parentStyle="defaultEnterKeyStyle" />
</default>
</switch>
diff --git a/java/res/xml/key_styles_number.xml b/java/res/xml/key_styles_number.xml
index 2e5a601b0..3c0cf720e 100644
--- a/java/res/xml/key_styles_number.xml
+++ b/java/res/xml/key_styles_number.xml
@@ -89,36 +89,28 @@
latin:keyLabel="9"
latin:keyHintLabel="WXYZ"
latin:parentStyle="numberKeyStyle" />
- <!-- U+002A: "*" ASTERISK
- U+FF0A: "*" FULLWIDTH ASTERISK -->
+ <!-- U+FF0A: "*" FULLWIDTH ASTERISK -->
<key-style
latin:styleName="numStarKeyStyle"
- latin:code="0x002A"
- latin:keyLabel="&#xFF0A;"
+ latin:keyLabel="&#xFF0A;|*"
latin:parentStyle="numKeyStyle" />
<!-- Only for non-tablet device -->
<key-style
latin:styleName="numPhoneToSymbolKeyStyle"
- latin:code="!code/key_switch_alpha_symbol"
- latin:keyLabel="!text/label_to_phone_symbols_key"
+ latin:keyLabel="!text/label_to_phone_symbols_key|!code/key_switch_alpha_symbol"
latin:parentStyle="numModeKeyStyle" />
<key-style
latin:styleName="numPhoneToNumericKeyStyle"
- latin:code="!code/key_switch_alpha_symbol"
- latin:keyLabel="!text/label_to_phone_numeric_key"
+ latin:keyLabel="!text/label_to_phone_numeric_key|!code/key_switch_alpha_symbol"
latin:parentStyle="numModeKeyStyle" />
- <!-- U+002C: "," COMMA -->
<key-style
latin:styleName="numPauseKeyStyle"
- latin:code="0x002C"
- latin:keyLabel="!text/label_pause_key"
+ latin:keyLabel="!text/label_pause_key|,"
latin:keyLabelFlags="followKeyHintLabelRatio|autoXScale"
latin:parentStyle="numKeyBaseStyle" />
- <!-- U+003B: ";" SEMICOLON -->
<key-style
latin:styleName="numWaitKeyStyle"
- latin:code="0x003B"
- latin:keyLabel="!text/label_wait_key"
+ latin:keyLabel="!text/label_wait_key|;"
latin:keyLabelFlags="followKeyHintLabelRatio|autoXScale"
latin:parentStyle="numKeyBaseStyle" />
<key-style
@@ -127,15 +119,13 @@
latin:parentStyle="tabKeyStyle" />
<key-style
latin:styleName="numSpaceKeyStyle"
- latin:code="!code/key_space"
- latin:keyIcon="!icon/space_key_for_number_layout"
+ latin:keyLabel="!icon/space_key_for_number_layout|!code/key_space"
latin:keyActionFlags="enableLongPress"
latin:parentStyle="numKeyBaseStyle" />
<!-- Override defaultEnterKeyStyle in key_styles_enter.xml -->
<key-style
latin:styleName="defaultEnterKeyStyle"
- latin:code="!code/key_enter"
- latin:keyIcon="!icon/enter_key"
+ latin:keyLabel="!icon/enter_key|!code/key_enter"
latin:keyLabelFlags="preserveCase|autoXScale|followKeyLargeLabelRatio"
latin:keyActionFlags="noKeyPreview"
latin:backgroundType="functional"
diff --git a/java/res/xml/keys_curly_brackets.xml b/java/res/xml/keys_curly_brackets.xml
index 6a4b1a945..fd736c07d 100644
--- a/java/res/xml/keys_curly_brackets.xml
+++ b/java/res/xml/keys_curly_brackets.xml
@@ -22,9 +22,7 @@
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
<Key
- latin:keyLabel="{"
- latin:code="!code/key_left_curly_bracket" />
+ latin:keyLabel="{|!code/key_left_curly_bracket" />
<Key
- latin:keyLabel="}"
- latin:code="!code/key_right_curly_bracket" />
+ latin:keyLabel="}|!code/key_right_curly_bracket" />
</merge>
diff --git a/java/res/xml/keys_less_greater.xml b/java/res/xml/keys_less_greater.xml
index 56d0727dd..98dcef6b5 100644
--- a/java/res/xml/keys_less_greater.xml
+++ b/java/res/xml/keys_less_greater.xml
@@ -25,28 +25,25 @@
<case
latin:languageCode="fa"
>
+ <!-- TODO: Introduce !code/key_{left,right}_angle_quotation. -->
<!-- U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
<Key
- latin:keyLabel="&#x00AB;"
- latin:code="0x00BB"
+ latin:keyLabel="&#x00AB;|&#x00BB;"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_less_than" />
<Key
- latin:keyLabel="&#x00BB;"
- latin:code="0x00AB"
+ latin:keyLabel="&#x00BB;|&#x00AB;"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_greater_than" />
</case>
<default>
<Key
- latin:keyLabel="&lt;"
- latin:code="!code/key_less_than"
+ latin:keyLabel="&lt;|!code/key_less_than"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_less_than" />
<Key
- latin:keyLabel="&gt;"
- latin:code="!code/key_greater_than"
+ latin:keyLabel="&gt;|!code/key_greater_than"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_greater_than" />
</default>
diff --git a/java/res/xml/keys_parentheses.xml b/java/res/xml/keys_parentheses.xml
index 25e89c930..fe4e5de84 100644
--- a/java/res/xml/keys_parentheses.xml
+++ b/java/res/xml/keys_parentheses.xml
@@ -22,11 +22,9 @@
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
<Key
- latin:keyLabel="("
- latin:code="!code/key_left_parenthesis"
+ latin:keyLabel="(|!code/key_left_parenthesis"
latin:moreKeys="!text/more_keys_for_left_parenthesis" />
<Key
- latin:keyLabel=")"
- latin:code="!code/key_right_parenthesis"
+ latin:keyLabel=")|!code/key_right_parenthesis"
latin:moreKeys="!text/more_keys_for_right_parenthesis" />
</merge>
diff --git a/java/res/xml/keys_square_brackets.xml b/java/res/xml/keys_square_brackets.xml
index 5c128fd0c..a9cf6a6db 100644
--- a/java/res/xml/keys_square_brackets.xml
+++ b/java/res/xml/keys_square_brackets.xml
@@ -22,9 +22,7 @@
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
<Key
- latin:keyLabel="["
- latin:code="!code/key_left_square_bracket" />
+ latin:keyLabel="[|!code/key_left_square_bracket" />
<Key
- latin:keyLabel="]"
- latin:code="!code/key_right_square_bracket" />
+ latin:keyLabel="]|!code/key_right_square_bracket" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_sign_virama.xml b/java/res/xml/keystyle_devanagari_sign_virama.xml
index b22fbe842..9d007919d 100644
--- a/java/res/xml/keystyle_devanagari_sign_virama.xml
+++ b/java/res/xml/keystyle_devanagari_sign_virama.xml
@@ -29,7 +29,6 @@
U+094D: "्" DEVANAGARI SIGN VIRAMA -->
<key-style
latin:styleName="baseKeyDevanagariSignVirama"
- latin:keyLabel="&#x25CC;&#x094D;"
- latin:code="0x094D"
+ latin:keyLabel="&#x25CC;&#x094D;|&#x094D;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_sign_visarga.xml b/java/res/xml/keystyle_devanagari_sign_visarga.xml
index cb294951f..42facd7fa 100644
--- a/java/res/xml/keystyle_devanagari_sign_visarga.xml
+++ b/java/res/xml/keystyle_devanagari_sign_visarga.xml
@@ -29,7 +29,6 @@
U+0903: "ः" DEVANAGARI SIGN VISARGA -->
<key-style
latin:styleName="baseKeyDevanagariSignVisarga"
- latin:keyLabel="&#x25CC;&#x0903;"
- latin:code="0x0903"
+ latin:keyLabel="&#x25CC;&#x0903;|&#x0903;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_aa.xml b/java/res/xml/keystyle_devanagari_vowel_sign_aa.xml
index 2e78c53ec..8013b0d72 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_aa.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_aa.xml
@@ -46,7 +46,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignAa"
latin:parentStyle="moreKeysDevanagariVowelSignAa"
- latin:keyLabel="&#x25CC;&#x093E;"
- latin:code="0x093E"
+ latin:keyLabel="&#x25CC;&#x093E;|&#x093E;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_ai.xml b/java/res/xml/keystyle_devanagari_vowel_sign_ai.xml
index 0554c0e15..fd74ab52b 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_ai.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_ai.xml
@@ -53,7 +53,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignAi"
latin:parentStyle="moreKeysDevanagariVowelSignAi"
- latin:keyLabel="&#x25CC;&#x0948;"
- latin:code="0x0948"
+ latin:keyLabel="&#x25CC;&#x0948;|&#x0948;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_au.xml b/java/res/xml/keystyle_devanagari_vowel_sign_au.xml
index 29a11a82e..15d4f901b 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_au.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_au.xml
@@ -44,7 +44,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignAu"
latin:parentStyle="moreKeysDevanagariVowelSignAu"
- latin:keyLabel="&#x25CC;&#x094C;"
- latin:code="0x094C"
+ latin:keyLabel="&#x25CC;&#x094C;|&#x094C;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_e.xml b/java/res/xml/keystyle_devanagari_vowel_sign_e.xml
index edd29c791..89d8fc7c8 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_e.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_e.xml
@@ -53,7 +53,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignE"
latin:parentStyle="moreKeysDevanagariVowelSignE"
- latin:keyLabel="&#x25CC;&#x0947;"
- latin:code="0x0947"
+ latin:keyLabel="&#x25CC;&#x0947;|&#x0947;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_i.xml b/java/res/xml/keystyle_devanagari_vowel_sign_i.xml
index 200fed29f..9e3c6ed76 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_i.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_i.xml
@@ -45,7 +45,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignI"
latin:parentStyle="moreKeysDevanagariVowelSignI"
- latin:keyLabel="&#x25CC;&#x093F;"
- latin:code="0x093F"
+ latin:keyLabel="&#x25CC;&#x093F;|&#x093F;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_ii.xml b/java/res/xml/keystyle_devanagari_vowel_sign_ii.xml
index 6dc9951df..3d064b595 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_ii.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_ii.xml
@@ -45,7 +45,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignIi"
latin:parentStyle="moreKeysDevanagariVowelSignIi"
- latin:keyLabel="&#x25CC;&#x0940;"
- latin:code="0x0940"
+ latin:keyLabel="&#x25CC;&#x0940;|&#x0940;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_o.xml b/java/res/xml/keystyle_devanagari_vowel_sign_o.xml
index 233ac8609..3eddbe5e0 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_o.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_o.xml
@@ -47,7 +47,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignO"
latin:parentStyle="moreKeysDevanagariVowelSignO"
- latin:keyLabel="&#x25CC;&#x094B;"
- latin:code="0x094B"
+ latin:keyLabel="&#x25CC;&#x094B;|&#x094B;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_u.xml b/java/res/xml/keystyle_devanagari_vowel_sign_u.xml
index 7291b7099..9a00adebc 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_u.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_u.xml
@@ -46,7 +46,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignU"
latin:parentStyle="moreKeysDevanagariVowelSignU"
- latin:keyLabel="&#x25CC;&#x0941;"
- latin:code="0x0941"
+ latin:keyLabel="&#x25CC;&#x0941;|&#x0941;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/keystyle_devanagari_vowel_sign_uu.xml b/java/res/xml/keystyle_devanagari_vowel_sign_uu.xml
index a95ab822d..06b51eb72 100644
--- a/java/res/xml/keystyle_devanagari_vowel_sign_uu.xml
+++ b/java/res/xml/keystyle_devanagari_vowel_sign_uu.xml
@@ -46,7 +46,6 @@
<key-style
latin:styleName="baseKeyDevanagariVowelSignUu"
latin:parentStyle="moreKeysDevanagariVowelSignUu"
- latin:keyLabel="&#x25CC;&#x0942;"
- latin:code="0x0942"
+ latin:keyLabel="&#x25CC;&#x0942;|&#x0942;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
</merge>
diff --git a/java/res/xml/rowkeys_symbols3.xml b/java/res/xml/rowkeys_symbols3.xml
index e525dc480..43fe1082c 100644
--- a/java/res/xml/rowkeys_symbols3.xml
+++ b/java/res/xml/rowkeys_symbols3.xml
@@ -28,15 +28,14 @@
<case
latin:languageCode="fa"
>
+ <!-- TODO: Introduce !code/key_{left,right}_angle_quotation. -->
<!-- U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
<Key
- latin:keyLabel="&#x00AB;"
- latin:code="0x00BB"
+ latin:keyLabel="&#x00AB;|&#x00BB;"
latin:moreKeys="!text/more_keys_for_double_quote" />
<Key
- latin:keyLabel="&#x00BB;"
- latin:code="0x00AB"
+ latin:keyLabel="&#x00BB;|&#x00AB;"
latin:moreKeys="!text/more_keys_for_single_quote" />
</case>
<default>
diff --git a/java/res/xml/rowkeys_thai1.xml b/java/res/xml/rowkeys_thai1.xml
index cd536656f..805822f06 100644
--- a/java/res/xml/rowkeys_thai1.xml
+++ b/java/res/xml/rowkeys_thai1.xml
@@ -48,8 +48,7 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E39;"
- latin:code="0x0E39"
+ latin:keyLabel="&#x20;&#x0E39;|&#x0E39;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E3F: "฿" THAI CURRENCY SYMBOL BAHT -->
<Key
@@ -114,16 +113,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E38;"
- latin:code="0x0E38"
+ latin:keyLabel="&#x20;&#x0E38;|&#x0E38;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E36: " ึ" THAI CHARACTER SARA UE -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E36;"
- latin:code="0x0E36"
+ latin:keyLabel="&#x20;&#x0E36;|&#x0E36;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E04: "ค" THAI CHARACTER KHO KHWAI
U+0E55: "๕" THAI DIGIT FIVE -->
diff --git a/java/res/xml/rowkeys_thai2.xml b/java/res/xml/rowkeys_thai2.xml
index 4bcbbbf8d..bc9d70c9e 100644
--- a/java/res/xml/rowkeys_thai2.xml
+++ b/java/res/xml/rowkeys_thai2.xml
@@ -48,16 +48,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E4D;"
- latin:code="0x0E4D"
+ latin:keyLabel="&#x20;&#x0E4D;|&#x0E4D;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E4A: " ๊" THAI CHARACTER MAI TRI -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E4A;"
- latin:code="0x0E4A"
+ latin:keyLabel="&#x20;&#x0E4A;|&#x0E4A;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E13: "ณ" THAI CHARACTER NO NEN -->
<Key
@@ -108,16 +106,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E31;"
- latin:code="0x0E31"
+ latin:keyLabel="&#x20;&#x0E31;|&#x0E31;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E35: " ี" HAI CHARACTER SARA II -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E35;"
- latin:code="0x0E35"
+ latin:keyLabel="&#x20;&#x0E35;|&#x0E35;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E23: "ร" THAI CHARACTER RO RUA -->
<Key
diff --git a/java/res/xml/rowkeys_thai3.xml b/java/res/xml/rowkeys_thai3.xml
index 7b6e6372e..e326f9f57 100644
--- a/java/res/xml/rowkeys_thai3.xml
+++ b/java/res/xml/rowkeys_thai3.xml
@@ -50,16 +50,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E47;"
- latin:code="0x0E47"
+ latin:keyLabel="&#x20;&#x0E47;|&#x0E47;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E4B: " ๋" THAI CHARACTER MAI CHATTAWA -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E4B;"
- latin:code="0x0E4B"
+ latin:keyLabel="&#x20;&#x0E4B;|&#x0E4B;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E29: "ษ" THAI CHARACTER SO RUSI -->
<Key
@@ -102,16 +100,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E49;"
- latin:code="0x0E49"
+ latin:keyLabel="&#x20;&#x0E49;|&#x0E49;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E48: " ่" THAI CHARACTER MAI EK -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E48;"
- latin:code="0x0E48"
+ latin:keyLabel="&#x20;&#x0E48;|&#x0E48;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E32: "า" THAI CHARACTER SARA AA -->
<Key
diff --git a/java/res/xml/rowkeys_thai4.xml b/java/res/xml/rowkeys_thai4.xml
index 8a784242c..1564d9753 100644
--- a/java/res/xml/rowkeys_thai4.xml
+++ b/java/res/xml/rowkeys_thai4.xml
@@ -42,16 +42,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E3A;"
- latin:code="0x0E3A"
+ latin:keyLabel="&#x20;&#x0E3A;|&#x0E3A;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E4C: " ์" THAI CHARACTER THANTHAKHAT -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E4C;"
- latin:code="0x0E4C"
+ latin:keyLabel="&#x20;&#x0E4C;|&#x0E4C;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<Key
latin:keyLabel="\?" />
@@ -90,16 +88,14 @@
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E34;"
- latin:code="0x0E34"
+ latin:keyLabel="&#x20;&#x0E34;|&#x0E34;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0020: " " SPACE
U+0E37: " ื" THAI CHARACTER SARA UEE -->
<!-- Note: The space character is needed as a preceding letter to draw some Thai
composing characters correctly. -->
<Key
- latin:keyLabel="&#x20;&#x0E37;"
- latin:code="0x0E37"
+ latin:keyLabel="&#x20;&#x0E37;|&#x0E37;"
latin:keyLabelFlags="fontNormal|followKeyLetterRatio" />
<!-- U+0E17: "ท" THAI CHARACTER THO THAHAN -->
<Key
diff --git a/java/res/xml/rows_number_normal.xml b/java/res/xml/rows_number_normal.xml
index 291018a14..c461eb009 100644
--- a/java/res/xml/rows_number_normal.xml
+++ b/java/res/xml/rows_number_normal.xml
@@ -113,10 +113,8 @@
<case
latin:mode="datetime"
>
- <!-- U+002F: "/" SOLIDUS -->
<Key
- latin:code="0x002F"
- latin:keyLabel="/ :"
+ latin:keyLabel="/ :|/"
latin:moreKeys="!noPanelAutoMoreKey!,:"
latin:keyStyle="numKeyStyle" />
</case>
diff --git a/java/res/xml/rows_phone.xml b/java/res/xml/rows_phone.xml
index d8dcfbd62..6f05e51be 100644
--- a/java/res/xml/rows_phone.xml
+++ b/java/res/xml/rows_phone.xml
@@ -68,8 +68,7 @@
<!-- U+0030: "0" DIGIT ZERO -->
<Key
latin:keyStyle="num0KeyStyle"
- latin:code="0x0030"
- latin:keyLabel="0 +"
+ latin:keyLabel="0 +|0"
latin:moreKeys="!noPanelAutoMoreKey!,+" />
<Key
latin:keyStyle="numSpaceKeyStyle" />
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<Key> {
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<Key> {
} 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);
diff --git a/tools/make-keyboard-text/res/values/donottranslate-more-keys.xml b/tools/make-keyboard-text/res/values/donottranslate-more-keys.xml
index ceb46dcd2..6b64652f2 100644
--- a/tools/make-keyboard-text/res/values/donottranslate-more-keys.xml
+++ b/tools/make-keyboard-text/res/values/donottranslate-more-keys.xml
@@ -196,8 +196,8 @@
<string name="shortcut_as_more_key">!icon/shortcut_key|!code/key_shortcut</string>
<string name="action_next_as_more_key">!hasLabels!,\@string/label_next_key|!code/key_action_next</string>
<string name="action_previous_as_more_key">!hasLabels!,\@string/label_previous_key|!code/key_action_previous</string>
- <!-- Label for "switch to more symbol" modifier key. Must be short to fit on key! -->
- <string name="label_to_more_symbol_key">= \\ &lt;</string>
+ <!-- Label for "switch to more symbol" modifier key ("= \ <"). Must be short to fit on key! -->
+ <string name="label_to_more_symbol_key">= \\\\ &lt;</string>
<!-- Label for "switch to more symbol" modifier key on tablets. Must be short to fit on key! -->
<string name="label_to_more_symbol_for_tablet_key">~ [ &lt;</string>
<!-- Label for "Tab" key. Must be short to fit on key! -->