aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/res/drawable-hdpi/keyboard_background_holo.9.pngbin255 -> 233 bytes
-rw-r--r--java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.pngbin2208 -> 0 bytes
-rw-r--r--java/res/drawable-hdpi/sym_keyboard_delete_rtl.pngbin4611 -> 0 bytes
-rw-r--r--java/res/drawable-hdpi/sym_keyboard_delete_rtl_holo.pngbin1111 -> 0 bytes
-rw-r--r--java/res/drawable-mdpi/keyboard_background_holo.9.pngbin211 -> 207 bytes
-rw-r--r--java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.pngbin718 -> 0 bytes
-rw-r--r--java/res/drawable-mdpi/sym_keyboard_delete_rtl.pngbin3470 -> 0 bytes
-rw-r--r--java/res/drawable-mdpi/sym_keyboard_delete_rtl_holo.pngbin812 -> 0 bytes
-rw-r--r--java/res/drawable-sw600dp-hdpi/sym_keyboard_delete_rtl_holo.pngbin1111 -> 0 bytes
-rw-r--r--java/res/drawable-sw600dp-mdpi/sym_keyboard_delete_rtl_holo.pngbin812 -> 0 bytes
-rw-r--r--java/res/drawable-sw600dp-xhdpi/sym_keyboard_delete_rtl_holo.pngbin1485 -> 0 bytes
-rw-r--r--java/res/drawable-xhdpi/keyboard_background_holo.9.pngbin297 -> 282 bytes
-rw-r--r--java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.pngbin2656 -> 0 bytes
-rw-r--r--java/res/drawable-xhdpi/sym_keyboard_delete_rtl.pngbin5522 -> 0 bytes
-rw-r--r--java/res/drawable-xhdpi/sym_keyboard_delete_rtl_holo.pngbin1485 -> 0 bytes
-rw-r--r--java/res/values-ar/donottranslate-altchars.xml3
-rw-r--r--java/res/values/attrs.xml39
-rw-r--r--java/res/values/donottranslate-altchars.xml3
-rw-r--r--java/res/values/keyboard-icons-black.xml2
-rw-r--r--java/res/values/keyboard-icons-ics.xml2
-rw-r--r--java/res/values/keyboard-icons-white.xml2
-rw-r--r--java/res/xml-sw600dp/kbd_key_styles.xml26
-rw-r--r--java/res/xml-sw600dp/kbd_number.xml61
-rw-r--r--java/res/xml-sw600dp/kbd_phone.xml27
-rw-r--r--java/res/xml-sw600dp/kbd_phone_symbols.xml27
-rw-r--r--java/res/xml-sw600dp/kbd_qwerty_f2.xml12
-rw-r--r--java/res/xml-sw600dp/kbd_qwerty_row1.xml7
-rw-r--r--java/res/xml-sw600dp/kbd_qwerty_row2.xml6
-rw-r--r--java/res/xml-sw600dp/kbd_qwerty_row3.xml3
-rw-r--r--java/res/xml-sw600dp/kbd_qwerty_row4.xml4
-rw-r--r--java/res/xml-sw600dp/kbd_row3_smiley.xml12
-rw-r--r--java/res/xml-sw600dp/kbd_rows_arabic.xml21
-rw-r--r--java/res/xml-sw600dp/kbd_rows_azerty.xml16
-rw-r--r--java/res/xml-sw600dp/kbd_rows_hebrew.xml19
-rw-r--r--java/res/xml-sw600dp/kbd_rows_qwertz.xml10
-rw-r--r--java/res/xml-sw600dp/kbd_rows_russian.xml13
-rw-r--r--java/res/xml-sw600dp/kbd_rows_scandinavian.xml16
-rw-r--r--java/res/xml-sw600dp/kbd_rows_serbian.xml16
-rw-r--r--java/res/xml-sw600dp/kbd_rows_spanish.xml6
-rw-r--r--java/res/xml-sw600dp/kbd_symbols.xml17
-rw-r--r--java/res/xml-sw600dp/kbd_symbols_shift.xml14
-rw-r--r--java/res/xml-sw768dp/kbd_key_styles.xml24
-rw-r--r--java/res/xml-sw768dp/kbd_number.xml73
-rw-r--r--java/res/xml-sw768dp/kbd_phone.xml35
-rw-r--r--java/res/xml-sw768dp/kbd_phone_symbols.xml35
-rw-r--r--java/res/xml-sw768dp/kbd_qwerty_row1.xml7
-rw-r--r--java/res/xml-sw768dp/kbd_qwerty_row2.xml6
-rw-r--r--java/res/xml-sw768dp/kbd_qwerty_row3.xml6
-rw-r--r--java/res/xml-sw768dp/kbd_qwerty_row4.xml1
-rw-r--r--java/res/xml-sw768dp/kbd_rows_arabic.xml12
-rw-r--r--java/res/xml-sw768dp/kbd_rows_azerty.xml21
-rw-r--r--java/res/xml-sw768dp/kbd_rows_hebrew.xml12
-rw-r--r--java/res/xml-sw768dp/kbd_rows_qwertz.xml12
-rw-r--r--java/res/xml-sw768dp/kbd_rows_russian.xml19
-rw-r--r--java/res/xml-sw768dp/kbd_rows_scandinavian.xml18
-rw-r--r--java/res/xml-sw768dp/kbd_rows_serbian.xml19
-rw-r--r--java/res/xml-sw768dp/kbd_rows_spanish.xml6
-rw-r--r--java/res/xml-sw768dp/kbd_symbols.xml20
-rw-r--r--java/res/xml-sw768dp/kbd_symbols_shift.xml20
-rw-r--r--java/res/xml/kbd_key_styles.xml39
-rw-r--r--java/res/xml/kbd_number.xml55
-rw-r--r--java/res/xml/kbd_phone.xml32
-rw-r--r--java/res/xml/kbd_phone_symbols.xml32
-rw-r--r--java/res/xml/kbd_qwerty_row1.xml7
-rw-r--r--java/res/xml/kbd_qwerty_row2.xml6
-rw-r--r--java/res/xml/kbd_qwerty_row3.xml6
-rw-r--r--java/res/xml/kbd_qwerty_row4.xml13
-rw-r--r--java/res/xml/kbd_rows_arabic.xml18
-rw-r--r--java/res/xml/kbd_rows_azerty.xml19
-rw-r--r--java/res/xml/kbd_rows_hebrew.xml19
-rw-r--r--java/res/xml/kbd_rows_qwertz.xml13
-rw-r--r--java/res/xml/kbd_rows_russian.xml19
-rw-r--r--java/res/xml/kbd_rows_scandinavian.xml13
-rw-r--r--java/res/xml/kbd_rows_serbian.xml19
-rw-r--r--java/res/xml/kbd_rows_spanish.xml6
-rw-r--r--java/res/xml/kbd_symbols.xml22
-rw-r--r--java/res/xml/kbd_symbols_f1.xml10
-rw-r--r--java/res/xml/kbd_symbols_row4.xml13
-rw-r--r--java/res/xml/kbd_symbols_shift.xml22
-rw-r--r--java/res/xml/kbd_symbols_shift_row4.xml13
-rw-r--r--java/src/com/android/inputmethod/keyboard/Key.java20
-rw-r--r--java/src/com/android/inputmethod/keyboard/KeyboardView.java2
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java25
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardParser.java15
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/Row.java9
-rw-r--r--java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java8
-rw-r--r--java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java13
-rw-r--r--java/src/com/android/inputmethod/latin/DictionaryFactory.java34
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java5
89 files changed, 502 insertions, 755 deletions
diff --git a/java/res/drawable-hdpi/keyboard_background_holo.9.png b/java/res/drawable-hdpi/keyboard_background_holo.9.png
index 39746ffd2..9f700c20c 100644
--- a/java/res/drawable-hdpi/keyboard_background_holo.9.png
+++ b/java/res/drawable-hdpi/keyboard_background_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.png b/java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.png
deleted file mode 100644
index 102eac781..000000000
--- a/java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-hdpi/sym_keyboard_delete_rtl.png b/java/res/drawable-hdpi/sym_keyboard_delete_rtl.png
deleted file mode 100644
index a508452bd..000000000
--- a/java/res/drawable-hdpi/sym_keyboard_delete_rtl.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-hdpi/sym_keyboard_delete_rtl_holo.png b/java/res/drawable-hdpi/sym_keyboard_delete_rtl_holo.png
deleted file mode 100644
index a77e4a00e..000000000
--- a/java/res/drawable-hdpi/sym_keyboard_delete_rtl_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-mdpi/keyboard_background_holo.9.png b/java/res/drawable-mdpi/keyboard_background_holo.9.png
index f1d55c6dd..4fe79b936 100644
--- a/java/res/drawable-mdpi/keyboard_background_holo.9.png
+++ b/java/res/drawable-mdpi/keyboard_background_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.png b/java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.png
deleted file mode 100644
index 32253ea9b..000000000
--- a/java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_delete_rtl.png b/java/res/drawable-mdpi/sym_keyboard_delete_rtl.png
deleted file mode 100644
index d436c23a9..000000000
--- a/java/res/drawable-mdpi/sym_keyboard_delete_rtl.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_delete_rtl_holo.png b/java/res/drawable-mdpi/sym_keyboard_delete_rtl_holo.png
deleted file mode 100644
index 2e75d8536..000000000
--- a/java/res/drawable-mdpi/sym_keyboard_delete_rtl_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-sw600dp-hdpi/sym_keyboard_delete_rtl_holo.png b/java/res/drawable-sw600dp-hdpi/sym_keyboard_delete_rtl_holo.png
deleted file mode 100644
index 5c19f3258..000000000
--- a/java/res/drawable-sw600dp-hdpi/sym_keyboard_delete_rtl_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-sw600dp-mdpi/sym_keyboard_delete_rtl_holo.png b/java/res/drawable-sw600dp-mdpi/sym_keyboard_delete_rtl_holo.png
deleted file mode 100644
index 994854106..000000000
--- a/java/res/drawable-sw600dp-mdpi/sym_keyboard_delete_rtl_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-sw600dp-xhdpi/sym_keyboard_delete_rtl_holo.png b/java/res/drawable-sw600dp-xhdpi/sym_keyboard_delete_rtl_holo.png
deleted file mode 100644
index f3310a1cd..000000000
--- a/java/res/drawable-sw600dp-xhdpi/sym_keyboard_delete_rtl_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-xhdpi/keyboard_background_holo.9.png b/java/res/drawable-xhdpi/keyboard_background_holo.9.png
index 58d15142b..7b79f60ad 100644
--- a/java/res/drawable-xhdpi/keyboard_background_holo.9.png
+++ b/java/res/drawable-xhdpi/keyboard_background_holo.9.png
Binary files differ
diff --git a/java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.png b/java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.png
deleted file mode 100644
index 23aee2b3b..000000000
--- a/java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-xhdpi/sym_keyboard_delete_rtl.png b/java/res/drawable-xhdpi/sym_keyboard_delete_rtl.png
deleted file mode 100644
index 3f9d3dd65..000000000
--- a/java/res/drawable-xhdpi/sym_keyboard_delete_rtl.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-xhdpi/sym_keyboard_delete_rtl_holo.png b/java/res/drawable-xhdpi/sym_keyboard_delete_rtl_holo.png
deleted file mode 100644
index 1f4890c89..000000000
--- a/java/res/drawable-xhdpi/sym_keyboard_delete_rtl_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/values-ar/donottranslate-altchars.xml b/java/res/values-ar/donottranslate-altchars.xml
index e49a840d6..b72ed501a 100644
--- a/java/res/values-ar/donottranslate-altchars.xml
+++ b/java/res/values-ar/donottranslate-altchars.xml
@@ -56,11 +56,14 @@
<string name="alternates_for_symbols_9">9</string>
<string name="alternates_for_symbols_0">0,ⁿ,∅</string>
<string name="keylabel_for_symbols_comma">\u060c</string>
+ <string name="keylabel_for_symbols_f1">\u060c</string>
<string name="keylabel_for_symbols_question">\u061f</string>
<string name="keylabel_for_symbols_semicolon">\u061b</string>
<!-- \u066a: ARABIC PERCENT SIGN -->
<string name="keylabel_for_symbols_percent">\u066a</string>
<string name="alternates_for_symbols_comma">,</string>
+ <!-- @icon/5 is iconsSettingsKey -->
+ <string name="alternates_for_symbols_f1">"\\,,\@icon/5|\@integer/key_settings"</string>
<string name="alternates_for_symbols_question">\?,¿</string>
<string name="alternates_for_symbols_semicolon">;</string>
<string name="alternates_for_symbols_percent">%,‰</string>
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index 16ff5077b..4c3ea83ed 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -155,7 +155,6 @@
<attr name="iconToSymbolKey" format="reference" />
<attr name="iconToSymbolKeyWithShortcut" format="reference" />
<attr name="iconDeleteKey" format="reference" />
- <attr name="iconDeleteRtlKey" format="reference" />
<attr name="iconSettingsKey" format="reference" />
<attr name="iconShortcutKey" format="reference" />
<attr name="iconSpaceKey" format="reference" />
@@ -175,13 +174,6 @@
<attr name="popupCharacters" format="string" />
<!-- Maximum column of popup keyboard -->
<attr name="maxPopupKeyboardColumn" format="integer" />
- <!-- Key edge flags. -->
- <attr name="keyEdgeFlags" format="integer">
- <!-- Key is anchored to the left of the keyboard. -->
- <flag name="left" value="1" />
- <!-- Key is anchored to the right of the keyboard. -->
- <flag name="right" value="2" />
- </attr>
<!-- Whether this is a functional key which has different key top than normal key. -->
<attr name="isFunctional" format="boolean" />
<!-- Whether this is a toggle key. -->
@@ -216,25 +208,24 @@
<enum name="iconToSymbolKey" value="2" />
<enum name="iconToSymbolKeyWithShortcut" value="3" />
<enum name="iconDeleteKey" value="4" />
- <enum name="iconDeleteRtlKey" value="5" />
- <enum name="iconSettingsKey" value="6" />
- <enum name="iconShortcutKey" value="7" />
- <enum name="iconSpaceKey" value="8" />
- <enum name="iconReturnKey" value="9" />
- <enum name="iconSearchKey" value="10" />
- <enum name="iconTabKey" value="11" />
+ <enum name="iconSettingsKey" value="5" />
+ <enum name="iconShortcutKey" value="6" />
+ <enum name="iconSpaceKey" value="7" />
+ <enum name="iconReturnKey" value="8" />
+ <enum name="iconSearchKey" value="9" />
+ <enum name="iconTabKey" value="10" />
</attr>
<!-- Shift key icon for shifted state -->
<attr name="keyIconShifted" format="enum">
<!-- This should be aligned with KeyboardIcons.ICON_SHIFTED_* -->
- <enum name="iconShiftedShiftKey" value="12" />
+ <enum name="iconShiftedShiftKey" value="11" />
</attr>
<!-- The icon to show in the popup preview. -->
<attr name="keyIconPreview" format="enum">
<!-- This should be aligned with KeyboardIcons.ICON_PREVIEW_* -->
- <enum name="iconPreviewTabKey" value="13" />
- <enum name="iconPreviewSettingsKey" value="14" />
- <enum name="iconPreviewShortcutKey" value="15" />
+ <enum name="iconPreviewTabKey" value="12" />
+ <enum name="iconPreviewSettingsKey" value="13" />
+ <enum name="iconPreviewShortcutKey" value="14" />
</attr>
<!-- The key style to specify a set of key attributes defined by <key_style/> -->
<attr name="keyStyle" format="string" />
@@ -248,16 +239,6 @@
<attr name="keyXPos" format="dimension|fraction" />
</declare-styleable>
- <declare-styleable name="Keyboard_Row">
- <!-- Row edge flags. -->
- <attr name="rowEdgeFlags" format="integer">
- <!-- Row is anchored to the top of the keyboard. -->
- <flag name="top" value="4" />
- <!-- Row is anchored to the bottom of the keyboard. -->
- <flag name="bottom" value="8" />
- </attr>
- </declare-styleable>
-
<declare-styleable name="Keyboard_Include">
<attr name="keyboardLayout" format="reference" />
</declare-styleable>
diff --git a/java/res/values/donottranslate-altchars.xml b/java/res/values/donottranslate-altchars.xml
index f3084d499..38d406c91 100644
--- a/java/res/values/donottranslate-altchars.xml
+++ b/java/res/values/donottranslate-altchars.xml
@@ -78,10 +78,13 @@
<string name="alternates_for_symbols_9"></string>
<string name="alternates_for_symbols_0">ⁿ,∅</string>
<string name="keylabel_for_symbols_comma">,</string>
+ <string name="keylabel_for_symbols_f1">,</string>
<string name="keylabel_for_symbols_question">\?</string>
<string name="keylabel_for_symbols_semicolon">;</string>
<string name="keylabel_for_symbols_percent">%</string>
<string name="alternates_for_symbols_comma"></string>
+ <!-- @icon/5 is iconsSettingsKey -->
+ <string name="alternates_for_symbols_f1">\@icon/5|\@integer/key_settings</string>
<string name="alternates_for_symbols_question">¿</string>
<string name="alternates_for_symbols_semicolon"></string>
<string name="alternates_for_symbols_percent">‰</string>
diff --git a/java/res/values/keyboard-icons-black.xml b/java/res/values/keyboard-icons-black.xml
index d527c15eb..ff758dc4b 100644
--- a/java/res/values/keyboard-icons-black.xml
+++ b/java/res/values/keyboard-icons-black.xml
@@ -24,8 +24,6 @@
<item name="iconShiftKey">@drawable/sym_bkeyboard_shift</item>
<item name="iconToSymbolKeyWithShortcut">@drawable/sym_bkeyboard_123_mic</item>
<item name="iconDeleteKey">@drawable/sym_bkeyboard_delete</item>
- <!-- TODO: update this icon drawable -->
- <item name="iconDeleteRtlKey">@drawable/sym_bkeyboard_delete_rtl</item>
<item name="iconSettingsKey">@drawable/sym_bkeyboard_settings</item>
<item name="iconShortcutKey">@drawable/sym_bkeyboard_mic</item>
<item name="iconSpaceKey">@drawable/sym_bkeyboard_space</item>
diff --git a/java/res/values/keyboard-icons-ics.xml b/java/res/values/keyboard-icons-ics.xml
index 3d63a9ee0..62859e3a3 100644
--- a/java/res/values/keyboard-icons-ics.xml
+++ b/java/res/values/keyboard-icons-ics.xml
@@ -23,8 +23,6 @@
<item name="iconShiftKey">@drawable/sym_keyboard_shift_holo</item>
<item name="iconToSymbolKeyWithShortcut">@drawable/sym_keyboard_123_mic_holo</item>
<item name="iconDeleteKey">@drawable/sym_keyboard_delete_holo</item>
- <!-- TODO: update this icon drawable -->
- <item name="iconDeleteRtlKey">@drawable/sym_keyboard_delete_rtl_holo</item>
<item name="iconSettingsKey">@drawable/sym_keyboard_settings_holo</item>
<item name="iconShortcutKey">@drawable/sym_keyboard_voice_holo</item>
<item name="iconSpaceKey">@drawable/sym_keyboard_space_holo</item>
diff --git a/java/res/values/keyboard-icons-white.xml b/java/res/values/keyboard-icons-white.xml
index c3889c39e..3c28cb771 100644
--- a/java/res/values/keyboard-icons-white.xml
+++ b/java/res/values/keyboard-icons-white.xml
@@ -20,8 +20,6 @@
<item name="iconShiftKey">@drawable/sym_keyboard_shift</item>
<item name="iconToSymbolKeyWithShortcut">@drawable/sym_keyboard_123_mic</item>
<item name="iconDeleteKey">@drawable/sym_keyboard_delete</item>
- <!-- TODO: update this icon drawable -->
- <item name="iconDeleteRtlKey">@drawable/sym_keyboard_delete_rtl</item>
<item name="iconSettingsKey">@drawable/sym_keyboard_settings</item>
<item name="iconShortcutKey">@drawable/sym_keyboard_mic</item>
<item name="iconSpaceKey">@drawable/sym_keyboard_space</item>
diff --git a/java/res/xml-sw600dp/kbd_key_styles.xml b/java/res/xml-sw600dp/kbd_key_styles.xml
index b813e6b59..f94309911 100644
--- a/java/res/xml-sw600dp/kbd_key_styles.xml
+++ b/java/res/xml-sw600dp/kbd_key_styles.xml
@@ -38,7 +38,7 @@
<key-style
latin:styleName="settingsPopupStyle"
latin:keyLabelOption="hasPopupHint"
- latin:popupCharacters="\@icon/6|\@integer/key_settings"
+ latin:popupCharacters="\@icon/5|\@integer/key_settings"
latin:parentStyle="functionalKeyStyle" />
</default>
</switch>
@@ -50,24 +50,12 @@
latin:keyIconShifted="iconShiftedShiftKey"
latin:parentStyle="functionalKeyStyle"
latin:isSticky="true" />
- <switch>
- <case latin:languageCode="ar|iw">
- <key-style
- latin:styleName="deleteKeyStyle"
- latin:code="@integer/key_delete"
- latin:keyIcon="iconDeleteRtlKey"
- latin:parentStyle="functionalKeyStyle"
- latin:isRepeatable="true" />
- </case>
- <default>
- <key-style
- latin:styleName="deleteKeyStyle"
- latin:code="@integer/key_delete"
- latin:keyIcon="iconDeleteKey"
- latin:parentStyle="functionalKeyStyle"
- latin:isRepeatable="true" />
- </default>
- </switch>
+ <key-style
+ latin:styleName="deleteKeyStyle"
+ latin:code="@integer/key_delete"
+ latin:keyIcon="iconDeleteKey"
+ latin:parentStyle="functionalKeyStyle"
+ latin:isRepeatable="true" />
<key-style
latin:styleName="returnKeyStyle"
latin:code="@integer/key_return"
diff --git a/java/res/xml-sw600dp/kbd_number.xml b/java/res/xml-sw600dp/kbd_number.xml
index b3a1010d7..46114dedf 100644
--- a/java/res/xml-sw600dp/kbd_number.xml
+++ b/java/res/xml-sw600dp/kbd_number.xml
@@ -30,11 +30,12 @@
<case
latin:passwordInput="true"
>
- <!-- This row is intentionally not marked as a top row -->
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="24.875%p" />
<Key
- latin:keyStyle="num1KeyStyle"
- latin:keyXPos="24.875%p" />
+ latin:keyStyle="num1KeyStyle" />
<Key
latin:keyStyle="num2KeyStyle" />
<Key
@@ -42,13 +43,14 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="24.875%p" />
<Key
- latin:keyStyle="num4KeyStyle"
- latin:keyXPos="24.875%p" />
+ latin:keyStyle="num4KeyStyle" />
<Key
latin:keyStyle="num5KeyStyle" />
<Key
@@ -56,24 +58,26 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="24.875%p" />
<Key
- latin:keyStyle="num7KeyStyle"
- latin:keyXPos="24.875%p" />
+ latin:keyStyle="num7KeyStyle" />
<Key
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
- latin:keyWidth="11.00%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.00%p" />
<Spacer
latin:keyXPos="24.875%p" />
<Key
@@ -87,12 +91,13 @@
</case>
<!-- latin:passwordInput="false" -->
<default>
- <!-- This row is intentionally not marked as a top row -->
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="11.00%p" />
<Key
latin:keyLabel="-"
latin:keyStyle="numKeyStyle"
- latin:keyXPos="11.00%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel="+"
@@ -115,13 +120,14 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="11.00%p" />
<Key
latin:keyStyle="numStarKeyStyle"
- latin:keyXPos="11.00%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel="/"
@@ -144,17 +150,15 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row>
- <!-- There is an empty area below the "More" key and left of the "(" key. To
- ignore the touch event on the area, "(" is intentionally not marked as a left
- edge key. -->
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="11.00%p" />
<Key
latin:keyLabel="("
latin:keyStyle="numKeyStyle"
- latin:keyXPos="11.00%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel=")"
@@ -174,13 +178,14 @@
<Key
latin:keyLabel="9"
latin:keyStyle="numKeyStyle" />
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
- latin:keyWidth="11.00%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.00%p" />
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
latin:keyWidth="27.75%p" />
diff --git a/java/res/xml-sw600dp/kbd_phone.xml b/java/res/xml-sw600dp/kbd_phone.xml
index dd53a206a..7b584c142 100644
--- a/java/res/xml-sw600dp/kbd_phone.xml
+++ b/java/res/xml-sw600dp/kbd_phone.xml
@@ -26,12 +26,13 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="15.625%p" />
<Key
latin:keyLabel="-"
latin:keyStyle="numKeyStyle"
- latin:keyXPos="15.625%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel="+"
@@ -47,14 +48,15 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="15.625%p" />
<Key
latin:keyLabel=","
latin:keyStyle="numKeyStyle"
- latin:keyXPos="15.625%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel="."
@@ -70,16 +72,12 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="11.0%p"
- latin:keyEdgeFlags="left" />
- <!-- There is an empty area below the "More" key and left of the "(" key. To ignore
- the touch event on the area, "(" is intentionally not marked as a left edge key. -->
+ latin:keyWidth="11.0%p" />
<Key
latin:keyLabel="("
latin:keyStyle="numKeyStyle"
@@ -96,13 +94,14 @@
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
- latin:keyWidth="11.00%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.00%p" />
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
latin:keyXPos="15.625%p"
diff --git a/java/res/xml-sw600dp/kbd_phone_symbols.xml b/java/res/xml-sw600dp/kbd_phone_symbols.xml
index d083ecb60..483964526 100644
--- a/java/res/xml-sw600dp/kbd_phone_symbols.xml
+++ b/java/res/xml-sw600dp/kbd_phone_symbols.xml
@@ -26,12 +26,13 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="11.00%p" />
<Key
latin:keyLabel="-"
latin:keyStyle="numKeyStyle"
- latin:keyXPos="11.00%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel="+"
@@ -51,14 +52,15 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="11.00%p" />
<Key
latin:keyLabel=","
latin:keyStyle="numKeyStyle"
- latin:keyXPos="11.00%p"
latin:keyWidth="9.25%p" />
<Key
latin:keyLabel="."
@@ -78,16 +80,12 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.00%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="11.00%p"
- latin:keyEdgeFlags="left" />
- <!-- There is an empty area below the "More" key and left of the "(" key. To ignore
- the touch event on the area, "(" is intentionally not marked as a left edge key. -->
+ latin:keyWidth="11.00%p" />
<Key
latin:keyLabel="("
latin:keyStyle="numKeyStyle"
@@ -107,13 +105,14 @@
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
- latin:keyWidth="11.00%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.00%p" />
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
latin:keyWidth="27.75%p" />
diff --git a/java/res/xml-sw600dp/kbd_qwerty_f2.xml b/java/res/xml-sw600dp/kbd_qwerty_f2.xml
index 7638ee4b4..3ea11805f 100644
--- a/java/res/xml-sw600dp/kbd_qwerty_f2.xml
+++ b/java/res/xml-sw600dp/kbd_qwerty_f2.xml
@@ -27,8 +27,7 @@
>
<Key
latin:keyStyle="settingsKeyStyle"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</case>
<case
latin:f2KeyMode="shortcutIme"
@@ -39,8 +38,7 @@
>
<Key
latin:keyStyle="shortcutKeyStyle"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</case>
<!-- voiceKeyEnabled="false" -->
<default>
@@ -57,15 +55,13 @@
>
<Key
latin:keyStyle="shortcutKeyStyle"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</case>
<!-- voiceKeyEnabled="false" -->
<default>
<Key
latin:keyStyle="settingsKeyStyle"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</default>
</switch>
</case>
diff --git a/java/res/xml-sw600dp/kbd_qwerty_row1.xml b/java/res/xml-sw600dp/kbd_qwerty_row1.xml
index b781d681e..c7dfcc83d 100644
--- a/java/res/xml-sw600dp/kbd_qwerty_row1.xml
+++ b/java/res/xml-sw600dp/kbd_qwerty_row1.xml
@@ -23,12 +23,10 @@
>
<Row
latin:keyWidth="9.0%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="q"
- latin:popupCharacters="@string/alternates_for_q"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_q" />
<Key
latin:keyLabel="w"
latin:popupCharacters="@string/alternates_for_w" />
@@ -59,7 +57,6 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
</merge>
diff --git a/java/res/xml-sw600dp/kbd_qwerty_row2.xml b/java/res/xml-sw600dp/kbd_qwerty_row2.xml
index 05b005af1..78004fe4f 100644
--- a/java/res/xml-sw600dp/kbd_qwerty_row2.xml
+++ b/java/res/xml-sw600dp/kbd_qwerty_row2.xml
@@ -27,8 +27,7 @@
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a"
- latin:keyXPos="4.5%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="4.5%p" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -53,7 +52,6 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
</merge>
diff --git a/java/res/xml-sw600dp/kbd_qwerty_row3.xml b/java/res/xml-sw600dp/kbd_qwerty_row3.xml
index b4eed8a7c..456f3c8ca 100644
--- a/java/res/xml-sw600dp/kbd_qwerty_row3.xml
+++ b/java/res/xml-sw600dp/kbd_qwerty_row3.xml
@@ -26,8 +26,7 @@
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
<Key
latin:keyLabel="z"
latin:popupCharacters="@string/alternates_for_z" />
diff --git a/java/res/xml-sw600dp/kbd_qwerty_row4.xml b/java/res/xml-sw600dp/kbd_qwerty_row4.xml
index 5cd47d913..f22b69f73 100644
--- a/java/res/xml-sw600dp/kbd_qwerty_row4.xml
+++ b/java/res/xml-sw600dp/kbd_qwerty_row4.xml
@@ -21,15 +21,13 @@
<merge
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
- <!-- This row is intentionally not marked as a bottom row -->
<Row
latin:keyWidth="8.9%p"
>
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="13.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.0%p" />
<Key
latin:keyStyle="tabKeyStyle" />
<switch>
diff --git a/java/res/xml-sw600dp/kbd_row3_smiley.xml b/java/res/xml-sw600dp/kbd_row3_smiley.xml
index 5e9584f2d..0ae3ae474 100644
--- a/java/res/xml-sw600dp/kbd_row3_smiley.xml
+++ b/java/res/xml-sw600dp/kbd_row3_smiley.xml
@@ -28,8 +28,7 @@
<Key
latin:keyLabel="\@"
latin:keyXPos="-8.9%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</case>
<case
latin:mode="url"
@@ -40,8 +39,7 @@
latin:keyHintLabel="_"
latin:popupCharacters="_"
latin:keyXPos="-8.9%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</case>
<case
latin:imeAction="actionSearch"
@@ -52,15 +50,13 @@
latin:keyHintLabel="+"
latin:popupCharacters="+"
latin:keyXPos="-8.9%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</case>
<default>
<Key
latin:keyStyle="smileyKeyStyle"
latin:keyXPos="-8.9%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</default>
</switch>
</merge>
diff --git a/java/res/xml-sw600dp/kbd_rows_arabic.xml b/java/res/xml-sw600dp/kbd_rows_arabic.xml
index 4c1909438..4c20f51ca 100644
--- a/java/res/xml-sw600dp/kbd_rows_arabic.xml
+++ b/java/res/xml-sw600dp/kbd_rows_arabic.xml
@@ -27,8 +27,7 @@
latin:keyWidth="8.0%p"
>
<Key
- latin:keyLabel="ض"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="ض" />
<Key
latin:keyLabel="ص" />
<Key
@@ -57,8 +56,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.0%p"
@@ -105,8 +103,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.0%p"
@@ -117,8 +114,7 @@
latin:mode="email"
>
<Key
- latin:keyLabel="\@"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="\@" />
</case>
<case
latin:mode="url"
@@ -127,8 +123,7 @@
latin:keyLabel="-"
latin:keyLabelOption="hasUppercaseLetter"
latin:keyHintLabel="_"
- latin:popupCharacters="_"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="_" />
</case>
<case
latin:imeAction="actionSearch"
@@ -137,13 +132,11 @@
latin:keyLabel=":"
latin:keyLabelOption="hasUppercaseLetter"
latin:keyHintLabel="+"
- latin:popupCharacters="+"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="+" />
</case>
<default>
<Key
- latin:keyStyle="smileyKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="smileyKeyStyle" />
</default>
</switch>
<Key
diff --git a/java/res/xml-sw600dp/kbd_rows_azerty.xml b/java/res/xml-sw600dp/kbd_rows_azerty.xml
index 698ef2240..406b4e670 100644
--- a/java/res/xml-sw600dp/kbd_rows_azerty.xml
+++ b/java/res/xml-sw600dp/kbd_rows_azerty.xml
@@ -25,12 +25,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="8.5%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="a"
- latin:popupCharacters="@string/alternates_for_a"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_a" />
<Key
latin:keyLabel="z"
latin:popupCharacters="@string/alternates_for_z" />
@@ -61,8 +59,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.5%p"
@@ -70,8 +67,7 @@
<Key
latin:keyLabel="q"
latin:popupCharacters="@string/alternates_for_q"
- latin:keyXPos="5.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="5.0%p" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -98,16 +94,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.5%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
<Key
latin:keyLabel="w"
latin:popupCharacters="@string/alternates_for_w" />
diff --git a/java/res/xml-sw600dp/kbd_rows_hebrew.xml b/java/res/xml-sw600dp/kbd_rows_hebrew.xml
index 87409159e..fc2247cb0 100644
--- a/java/res/xml-sw600dp/kbd_rows_hebrew.xml
+++ b/java/res/xml-sw600dp/kbd_rows_hebrew.xml
@@ -25,7 +25,6 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="9.0%p"
- latin:rowEdgeFlags="top"
>
<include
latin:keyboardLayout="@xml/kbd_row4_apostrophe_dash" />
@@ -48,8 +47,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-12.000%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="9.0%p"
@@ -89,8 +87,7 @@
>
<Key
latin:keyLabel="\@"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
</case>
<case
latin:mode="url"
@@ -100,8 +97,7 @@
latin:keyLabelOption="hasUppercaseLetter"
latin:keyHintLabel="_"
latin:popupCharacters="_"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
</case>
<case
latin:imeAction="actionSearch"
@@ -111,14 +107,12 @@
latin:keyLabelOption="hasUppercaseLetter"
latin:keyHintLabel="+"
latin:popupCharacters="+"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
</case>
<default>
<Key
latin:keyStyle="smileyKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
</default>
</switch>
<Key
@@ -146,8 +140,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-10.400%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw600dp/kbd_rows_qwertz.xml b/java/res/xml-sw600dp/kbd_rows_qwertz.xml
index 7ec895e0a..3d177e72d 100644
--- a/java/res/xml-sw600dp/kbd_rows_qwertz.xml
+++ b/java/res/xml-sw600dp/kbd_rows_qwertz.xml
@@ -25,12 +25,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="9.0%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="q"
- latin:popupCharacters="@string/alternates_for_q"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_q" />
<Key
latin:keyLabel="w"
latin:popupCharacters="@string/alternates_for_w" />
@@ -61,8 +59,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row2" />
@@ -71,8 +68,7 @@
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
<Key
latin:keyLabel="y"
latin:popupCharacters="@string/alternates_for_y" />
diff --git a/java/res/xml-sw600dp/kbd_rows_russian.xml b/java/res/xml-sw600dp/kbd_rows_russian.xml
index 445298982..7588f6ccb 100644
--- a/java/res/xml-sw600dp/kbd_rows_russian.xml
+++ b/java/res/xml-sw600dp/kbd_rows_russian.xml
@@ -25,11 +25,9 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="7.60%p"
- latin:rowEdgeFlags="top"
>
<Key
- latin:keyLabel="й"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="й" />
<Key
latin:keyLabel="ц" />
<Key
@@ -56,8 +54,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.60%p"
@@ -88,15 +85,13 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.60%p"
>
<Key
- latin:keyStyle="shiftKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="shiftKeyStyle" />
<Key
latin:keyLabel="я" />
<Key
diff --git a/java/res/xml-sw600dp/kbd_rows_scandinavian.xml b/java/res/xml-sw600dp/kbd_rows_scandinavian.xml
index 5ac2b3600..505913726 100644
--- a/java/res/xml-sw600dp/kbd_rows_scandinavian.xml
+++ b/java/res/xml-sw600dp/kbd_rows_scandinavian.xml
@@ -25,12 +25,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="7.9%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="q"
- latin:popupCharacters="@string/alternates_for_q"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_q" />
<Key
latin:keyLabel="w"
latin:popupCharacters="@string/alternates_for_w" />
@@ -63,8 +61,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.9%p"
@@ -72,8 +69,7 @@
<Key
latin:keyLabel="a"
latin:keyXPos="3.5%p"
- latin:popupCharacters="@string/alternates_for_a"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_a" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -104,16 +100,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.9%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
<Spacer
latin:keyWidth="4.35%p" />
<Key
diff --git a/java/res/xml-sw600dp/kbd_rows_serbian.xml b/java/res/xml-sw600dp/kbd_rows_serbian.xml
index 5d39fd4f1..db7560cdc 100644
--- a/java/res/xml-sw600dp/kbd_rows_serbian.xml
+++ b/java/res/xml-sw600dp/kbd_rows_serbian.xml
@@ -25,12 +25,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="8.0%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="љ"
- latin:keyXPos="2.15%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="2.15%p" />
<Key
latin:keyLabel="њ" />
<Key
@@ -54,15 +52,13 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.9%p"
>
<Key
- latin:keyLabel="а"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="а" />
<Key
latin:keyLabel="с" />
<Key
@@ -86,16 +82,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.5%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="8.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="8.0%p" />
<Key
latin:keyLabel="ѕ" />
<Key
diff --git a/java/res/xml-sw600dp/kbd_rows_spanish.xml b/java/res/xml-sw600dp/kbd_rows_spanish.xml
index 7ef44bb53..49243eb5c 100644
--- a/java/res/xml-sw600dp/kbd_rows_spanish.xml
+++ b/java/res/xml-sw600dp/kbd_rows_spanish.xml
@@ -31,8 +31,7 @@
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a"
- latin:keyXPos="5.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="5.0%p" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -59,8 +58,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row3" />
diff --git a/java/res/xml-sw600dp/kbd_symbols.xml b/java/res/xml-sw600dp/kbd_symbols.xml
index 03d37b007..fc89cd3c5 100644
--- a/java/res/xml-sw600dp/kbd_symbols.xml
+++ b/java/res/xml-sw600dp/kbd_symbols.xml
@@ -25,14 +25,12 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_currency_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="9.0%p"
>
<Key
latin:keyLabel="@string/keylabel_for_symbols_1"
- latin:popupCharacters="@string/alternates_for_symbols_1"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_symbols_1" />
<Key
latin:keyLabel="@string/keylabel_for_symbols_2"
latin:popupCharacters="@string/alternates_for_symbols_2" />
@@ -63,8 +61,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="9.0%p"
@@ -97,16 +94,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.9%p"
>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
<Key
latin:keyLabel="&lt;"
latin:popupCharacters="≤,«,‹" />
@@ -147,15 +142,13 @@
latin:keyLabel="/"
latin:keyWidth="fillRight" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row
latin:keyWidth="8.9%p"
>
<Key
latin:keyStyle="toAlphaKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="13.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.0%p" />
<Key
latin:keyStyle="tabKeyStyle" />
<Key
diff --git a/java/res/xml-sw600dp/kbd_symbols_shift.xml b/java/res/xml-sw600dp/kbd_symbols_shift.xml
index b25292f27..99b78a435 100644
--- a/java/res/xml-sw600dp/kbd_symbols_shift.xml
+++ b/java/res/xml-sw600dp/kbd_symbols_shift.xml
@@ -23,7 +23,6 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="9.0%p"
>
@@ -60,8 +59,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-10.0%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="9.0%p"
@@ -97,16 +95,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-14.6%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.9%p"
>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="10.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.0%p" />
<Key
latin:keyLabel="\\" />
<Key
@@ -132,15 +128,13 @@
latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="¿" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row
latin:keyWidth="8.9%p"
>
<Key
latin:keyStyle="toAlphaKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="13.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.0%p" />
<Key
latin:keyStyle="tabKeyStyle" />
<Key
diff --git a/java/res/xml-sw768dp/kbd_key_styles.xml b/java/res/xml-sw768dp/kbd_key_styles.xml
index 12ec0e78d..6e4818dc2 100644
--- a/java/res/xml-sw768dp/kbd_key_styles.xml
+++ b/java/res/xml-sw768dp/kbd_key_styles.xml
@@ -32,24 +32,12 @@
latin:keyIconShifted="iconShiftedShiftKey"
latin:parentStyle="functionalKeyStyle"
latin:isSticky="true" />
- <switch>
- <case latin:languageCode="ar|iw">
- <key-style
- latin:styleName="deleteKeyStyle"
- latin:code="@integer/key_delete"
- latin:keyIcon="iconDeleteRtlKey"
- latin:parentStyle="functionalKeyStyle"
- latin:isRepeatable="true" />
- </case>
- <default>
- <key-style
- latin:styleName="deleteKeyStyle"
- latin:code="@integer/key_delete"
- latin:keyIcon="iconDeleteKey"
- latin:parentStyle="functionalKeyStyle"
- latin:isRepeatable="true" />
- </default>
- </switch>
+ <key-style
+ latin:styleName="deleteKeyStyle"
+ latin:code="@integer/key_delete"
+ latin:keyIcon="iconDeleteKey"
+ latin:parentStyle="functionalKeyStyle"
+ latin:isRepeatable="true" />
<key-style
latin:styleName="returnKeyStyle"
latin:code="@integer/key_return"
diff --git a/java/res/xml-sw768dp/kbd_number.xml b/java/res/xml-sw768dp/kbd_number.xml
index a3bed2f3a..1706eaac2 100644
--- a/java/res/xml-sw768dp/kbd_number.xml
+++ b/java/res/xml-sw768dp/kbd_number.xml
@@ -30,13 +30,11 @@
<case
latin:passwordInput="true"
>
- <!-- This row is intentionally not marked as a top row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyStyle="num1KeyStyle"
latin:keyXPos="32.076%p" />
@@ -47,13 +45,14 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="32.076%p" />
<Key
- latin:keyStyle="num4KeyStyle"
- latin:keyXPos="32.076%p" />
+ latin:keyStyle="num4KeyStyle" />
<Key
latin:keyStyle="num5KeyStyle" />
<Key
@@ -61,41 +60,39 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="32.076%p" />
<Key
- latin:keyStyle="num7KeyStyle"
- latin:keyXPos="32.076%p" />
+ latin:keyStyle="num7KeyStyle" />
<Key
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
- <!-- There is an empty area below the "Enter" key and right of the "9" key. To
- ignore the touch event on the area, "9" is intentionally not marked as a right
- edge key. -->
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<Spacer
latin:keyXPos="32.076%p" />
<Key
latin:keyStyle="num0KeyStyle" />
- <!-- There is an empty area below the "Enter" key and right of the "#" key. To
- ignore the touch event on the area, "#" is intentionally not marked as a right
- edge key. -->
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
</case>
<!-- latin:passwordInput="false" -->
<default>
- <!-- This row is intentionally not marked as a top row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel="-"
latin:keyStyle="numKeyStyle"
@@ -122,13 +119,14 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="13.829%p" />
<Key
latin:keyStyle="numStarKeyStyle"
- latin:keyXPos="13.829%p"
latin:keyWidth="8.047%p" />
<Key
latin:keyLabel="/"
@@ -151,17 +149,15 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
- <!-- There is an empty area below the "More" key and left of the "(" key. To
- ignore the touch event on the area, "(" is intentionally not marked as a left
- edge key. -->
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="("
latin:keyStyle="numKeyStyle"
- latin:keyXPos="13.829%p"
latin:keyWidth="8.047%p" />
<Key
latin:keyLabel=")"
@@ -181,11 +177,10 @@
<Key
latin:keyLabel="9"
latin:keyStyle="numKeyStyle" />
- <!-- There is an empty area below the "Enter" key and right of the "9" key. To
- ignore the touch event on the area, "9" is intentionally not marked as a right
- edge key. -->
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<switch>
<case latin:hasSettingsKey="true">
@@ -193,6 +188,11 @@
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="8.047%p" />
</case>
+ <default>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="8.047%p" />
+ </default>
</switch>
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
@@ -216,6 +216,11 @@
latin:keyXPos="-8.047%p"
latin:keyWidth="fillRight" />
</case>
+ <default>
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
+ </default>
</switch>
</Row>
</default>
diff --git a/java/res/xml-sw768dp/kbd_phone.xml b/java/res/xml-sw768dp/kbd_phone.xml
index 0935992fd..945b641ea 100644
--- a/java/res/xml-sw768dp/kbd_phone.xml
+++ b/java/res/xml-sw768dp/kbd_phone.xml
@@ -26,13 +26,11 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel="-"
latin:keyStyle="numKeyStyle"
@@ -52,14 +50,12 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel=","
latin:keyStyle="numKeyStyle"
@@ -79,16 +75,15 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
- <!-- There is an empty area below the "More" key and left of the "(" key. To ignore
- the touch event on the area, "(" is intentionally not marked as a left edge key. -->
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="20.400%p" />
<Key
latin:keyLabel="("
latin:keyStyle="numKeyStyle"
- latin:keyXPos="20.400%p"
latin:keyWidth="8.047%p" />
<Key
latin:keyLabel=")"
@@ -101,10 +96,10 @@
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
- <!-- There is an empty area below the "Enter" key and right of the "9" key. To ignore
- the touch event on the area, "9" is intentionally not marked as a right edge key. -->
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<switch>
<case latin:hasSettingsKey="true">
@@ -112,6 +107,11 @@
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="8.047%p" />
</case>
+ <default>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="8.047%p" />
+ </default>
</switch>
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
@@ -134,6 +134,11 @@
latin:keyXPos="-8.047%p"
latin:keyWidth="fillRight" />
</case>
+ <default>
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
+ </default>
</switch>
</Row>
</Keyboard>
diff --git a/java/res/xml-sw768dp/kbd_phone_symbols.xml b/java/res/xml-sw768dp/kbd_phone_symbols.xml
index 6ee57d6a5..693400e67 100644
--- a/java/res/xml-sw768dp/kbd_phone_symbols.xml
+++ b/java/res/xml-sw768dp/kbd_phone_symbols.xml
@@ -26,13 +26,11 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel="-"
latin:keyStyle="numKeyStyle"
@@ -56,14 +54,12 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel=","
latin:keyStyle="numKeyStyle"
@@ -87,16 +83,15 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-11.172%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
- <!-- There is an empty area below the "More" key and left of the "(" key. To ignore
- the touch event on the area, "(" is intentionally not marked as a left edge key. -->
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="("
latin:keyStyle="numKeyStyle"
- latin:keyXPos="13.829%p"
latin:keyWidth="8.047%p" />
<Key
latin:keyLabel=")"
@@ -113,10 +108,10 @@
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
- <!-- There is an empty area below the "Enter" key and right of the "9" key. To ignore
- the touch event on the area, "9" is intentionally not marked as a right edge key. -->
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row>
<switch>
<case latin:hasSettingsKey="true">
@@ -124,6 +119,11 @@
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="8.047%p" />
</case>
+ <default>
+ <!-- Note: This Spacer prevents the below key from being marked as a left edge key. -->
+ <Spacer
+ latin:keyWidth="8.047%p" />
+ </default>
</switch>
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
@@ -146,6 +146,11 @@
latin:keyXPos="-8.047%p"
latin:keyWidth="fillRight" />
</case>
+ <default>
+ <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
+ <Spacer
+ latin:keyWidth="0%p" />
+ </default>
</switch>
</Row>
</Keyboard>
diff --git a/java/res/xml-sw768dp/kbd_qwerty_row1.xml b/java/res/xml-sw768dp/kbd_qwerty_row1.xml
index 3727cf34e..0fdb463f1 100644
--- a/java/res/xml-sw768dp/kbd_qwerty_row1.xml
+++ b/java/res/xml-sw768dp/kbd_qwerty_row1.xml
@@ -21,15 +21,13 @@
<merge
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="8.282%p"
>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.969%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.969%p" />
<Key
latin:keyLabel="q"
latin:popupCharacters="@string/alternates_for_q" />
@@ -63,7 +61,6 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth"/>
</Row>
</merge>
diff --git a/java/res/xml-sw768dp/kbd_qwerty_row2.xml b/java/res/xml-sw768dp/kbd_qwerty_row2.xml
index 45af120e2..7f7dd57f0 100644
--- a/java/res/xml-sw768dp/kbd_qwerty_row2.xml
+++ b/java/res/xml-sw768dp/kbd_qwerty_row2.xml
@@ -27,8 +27,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p"/>
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a" />
@@ -56,7 +55,6 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-15.704%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
</merge>
diff --git a/java/res/xml-sw768dp/kbd_qwerty_row3.xml b/java/res/xml-sw768dp/kbd_qwerty_row3.xml
index 9041a7764..677235f63 100644
--- a/java/res/xml-sw768dp/kbd_qwerty_row3.xml
+++ b/java/res/xml-sw768dp/kbd_qwerty_row3.xml
@@ -26,8 +26,7 @@
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="13.829%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.829%p"/>
<Key
latin:keyLabel="z"
latin:popupCharacters="@string/alternates_for_z" />
@@ -51,7 +50,6 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyXPos="-13.750%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
</merge>
diff --git a/java/res/xml-sw768dp/kbd_qwerty_row4.xml b/java/res/xml-sw768dp/kbd_qwerty_row4.xml
index 48201c9ec..d463de9a6 100644
--- a/java/res/xml-sw768dp/kbd_qwerty_row4.xml
+++ b/java/res/xml-sw768dp/kbd_qwerty_row4.xml
@@ -21,7 +21,6 @@
<merge
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
- <!-- This row is intentionally not marked as a bottom row -->
<Row
latin:keyWidth="8.047%p"
>
diff --git a/java/res/xml-sw768dp/kbd_rows_arabic.xml b/java/res/xml-sw768dp/kbd_rows_arabic.xml
index f3283ae94..2f10d54e8 100644
--- a/java/res/xml-sw768dp/kbd_rows_arabic.xml
+++ b/java/res/xml-sw768dp/kbd_rows_arabic.xml
@@ -29,8 +29,7 @@
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.500%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.500%p" />
<Key
latin:keyLabel="ض" />
<Key
@@ -61,8 +60,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.500%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.375%p"
@@ -70,8 +68,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="9.375%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="9.375%p" />
<Key
latin:keyLabel="ش" />
<Key
@@ -113,8 +110,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-9.375%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.375%p"
diff --git a/java/res/xml-sw768dp/kbd_rows_azerty.xml b/java/res/xml-sw768dp/kbd_rows_azerty.xml
index 373bda9ce..7aec0d15d 100644
--- a/java/res/xml-sw768dp/kbd_rows_azerty.xml
+++ b/java/res/xml-sw768dp/kbd_rows_azerty.xml
@@ -29,8 +29,7 @@
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.969%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.969%p" />
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a" />
@@ -64,8 +63,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.125%p"
@@ -73,8 +71,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="10.167%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.167%p" />
<Key
latin:keyLabel="q"
latin:popupCharacters="@string/alternates_for_q" />
@@ -100,21 +97,18 @@
latin:keyLabel="l"
latin:popupCharacters="@string/alternates_for_l" />
<Key
- latin:keyLabel="m"
- latin:keyEdgeFlags="right" />
+ latin:keyLabel="m" />
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-15.704%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.047%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="13.829%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="w"
latin:popupCharacters="@string/alternates_for_w" />
@@ -161,8 +155,7 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyXPos="-13.750%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw768dp/kbd_rows_hebrew.xml b/java/res/xml-sw768dp/kbd_rows_hebrew.xml
index 0ef68b648..bacc6a13b 100644
--- a/java/res/xml-sw768dp/kbd_rows_hebrew.xml
+++ b/java/res/xml-sw768dp/kbd_rows_hebrew.xml
@@ -29,8 +29,7 @@
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.969%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.969%p" />
<include
latin:keyboardLayout="@xml/kbd_row4_apostrophe_dash" />
<Key
@@ -52,8 +51,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-12.000%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.125%p"
@@ -61,8 +59,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel="ש" />
<Key
@@ -116,8 +113,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-10.400%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw768dp/kbd_rows_qwertz.xml b/java/res/xml-sw768dp/kbd_rows_qwertz.xml
index 6567c3166..5556d1f3d 100644
--- a/java/res/xml-sw768dp/kbd_rows_qwertz.xml
+++ b/java/res/xml-sw768dp/kbd_rows_qwertz.xml
@@ -29,8 +29,7 @@
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.969%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.969%p" />
<Key
latin:keyLabel="q"
latin:popupCharacters="@string/alternates_for_q" />
@@ -64,8 +63,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row2" />
@@ -74,8 +72,7 @@
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="13.829%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="y"
latin:popupCharacters="@string/alternates_for_y" />
@@ -119,8 +116,7 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyXPos="-13.750%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw768dp/kbd_rows_russian.xml b/java/res/xml-sw768dp/kbd_rows_russian.xml
index 35b2c8a1a..82ceaeadc 100644
--- a/java/res/xml-sw768dp/kbd_rows_russian.xml
+++ b/java/res/xml-sw768dp/kbd_rows_russian.xml
@@ -23,14 +23,12 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="7.125%p"
>
<Key
latin:keyStyle="tabKeyStyle"
- latin:keyLabelOption="alignLeft"
- latin:keyEdgeFlags="left" />
+ latin:keyLabelOption="alignLeft" />
<Key
latin:keyLabel="й" />
<Key
@@ -58,8 +56,7 @@
latin:keyLabel="ъ" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.125%p"
@@ -67,8 +64,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="9.375%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="9.375%p" />
<Key
latin:keyLabel="ф" />
<Key
@@ -94,16 +90,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-9.375%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.125%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="12.750%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="12.750%p" />
<Key
latin:keyLabel="я" />
<Key
@@ -126,8 +120,7 @@
latin:keyboardLayout="@xml/kbd_row3_comma_period" />
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw768dp/kbd_rows_scandinavian.xml b/java/res/xml-sw768dp/kbd_rows_scandinavian.xml
index c20dceea8..743c6bd26 100644
--- a/java/res/xml-sw768dp/kbd_rows_scandinavian.xml
+++ b/java/res/xml-sw768dp/kbd_rows_scandinavian.xml
@@ -29,8 +29,7 @@
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.500%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.500%p" />
<Key
latin:keyLabel="q"
latin:popupCharacters="@string/alternates_for_q" />
@@ -66,8 +65,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-11.500%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.375%p"
@@ -75,8 +73,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="9.375%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="9.375%p" />
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a" />
@@ -110,16 +107,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-9.375%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.375%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="12.750%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="12.750%p" />
<Key
latin:keyLabel="z"
latin:popupCharacters="@string/alternates_for_z" />
@@ -143,8 +138,7 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyXPos="-12.750%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw768dp/kbd_rows_serbian.xml b/java/res/xml-sw768dp/kbd_rows_serbian.xml
index f1576de45..c07176ef6 100644
--- a/java/res/xml-sw768dp/kbd_rows_serbian.xml
+++ b/java/res/xml-sw768dp/kbd_rows_serbian.xml
@@ -23,14 +23,12 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="7.125%p"
>
<Key
latin:keyStyle="tabKeyStyle"
- latin:keyLabelOption="alignLeft"
- latin:keyEdgeFlags="left" />
+ latin:keyLabelOption="alignLeft" />
<Key
latin:keyLabel="љ" />
<Key
@@ -57,8 +55,7 @@
latin:keyLabel="ђ" />
<Key
latin:keyLabel="ж"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right"/>
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="7.250%p"
@@ -66,8 +63,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel="а" />
<Key
@@ -93,16 +89,14 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="7.250%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="13.829%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="ѕ" />
<Key
@@ -122,8 +116,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-13.750%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml-sw768dp/kbd_rows_spanish.xml b/java/res/xml-sw768dp/kbd_rows_spanish.xml
index 300592e6a..510cafbfd 100644
--- a/java/res/xml-sw768dp/kbd_rows_spanish.xml
+++ b/java/res/xml-sw768dp/kbd_rows_spanish.xml
@@ -31,8 +31,7 @@
<Key
latin:keyStyle="toSymbolKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="10.167%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="10.167%p" />
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a" />
@@ -62,8 +61,7 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-15.704%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row3" />
diff --git a/java/res/xml-sw768dp/kbd_symbols.xml b/java/res/xml-sw768dp/kbd_symbols.xml
index 44ee2fd0d..ba0715cd4 100644
--- a/java/res/xml-sw768dp/kbd_symbols.xml
+++ b/java/res/xml-sw768dp/kbd_symbols.xml
@@ -25,15 +25,13 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_currency_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="8.282%p"
>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.969%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.969%p" />
<Key
latin:keyLabel="@string/keylabel_for_symbols_1"
latin:popupCharacters="@string/alternates_for_symbols_1" />
@@ -67,8 +65,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="8.125%p"
@@ -76,8 +73,7 @@
<Key
latin:keyStyle="toAlphaKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyLabel="#" />
<Key
@@ -105,16 +101,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-15.704%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.047%p"
>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="13.829%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="&lt;"
latin:popupCharacters="≤,«,‹" />
@@ -154,10 +148,8 @@
<Key
latin:keyStyle="moreKeyStyle"
latin:keyXPos="-13.750%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row
latin:keyWidth="8.047%p"
>
diff --git a/java/res/xml-sw768dp/kbd_symbols_shift.xml b/java/res/xml-sw768dp/kbd_symbols_shift.xml
index b36814104..1ddd64be3 100644
--- a/java/res/xml-sw768dp/kbd_symbols_shift.xml
+++ b/java/res/xml-sw768dp/kbd_symbols_shift.xml
@@ -23,15 +23,13 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="8.282%p"
>
<Key
latin:keyStyle="tabKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="7.969%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="7.969%p" />
<Key
latin:keyLabel="~" />
<Key
@@ -65,8 +63,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyXPos="-9.219%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.125%p"
@@ -74,8 +71,7 @@
<Key
latin:keyStyle="toAlphaKeyStyle"
latin:keyLabelOption="alignLeft"
- latin:keyWidth="11.172%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.172%p" />
<Key
latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="£" />
@@ -106,16 +102,14 @@
<Key
latin:keyStyle="returnKeyStyle"
latin:keyXPos="-15.704%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
<Row
latin:keyWidth="8.047%p"
>
<Key
latin:keyStyle="moreKeyStyle"
- latin:keyWidth="13.829%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.829%p" />
<Key
latin:keyLabel="\\" />
<Key
@@ -143,10 +137,8 @@
<Key
latin:keyStyle="moreKeyStyle"
latin:keyXPos="-13.750%p"
- latin:keyWidth="fillBoth"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillBoth" />
</Row>
- <!-- This row is intentionally not marked as a bottom row -->
<Row
latin:keyWidth="8.047%p"
>
diff --git a/java/res/xml/kbd_key_styles.xml b/java/res/xml/kbd_key_styles.xml
index c40481c39..6436b27f0 100644
--- a/java/res/xml/kbd_key_styles.xml
+++ b/java/res/xml/kbd_key_styles.xml
@@ -33,6 +33,9 @@
<key-style
latin:styleName="settingsPopupStyle"
latin:parentStyle="functionalKeyStyle" />
+ <key-style
+ latin:styleName="symbolsF1PopupStyle"
+ latin:parentStyle="functionalKeyStyle" />
</case>
<case
latin:clobberSettingsKey="false"
@@ -41,13 +44,21 @@
<key-style
latin:styleName="settingsPopupStyle"
latin:parentStyle="functionalKeyStyle" />
+ <key-style
+ latin:styleName="symbolsF1PopupStyle"
+ latin:parentStyle="functionalKeyStyle" />
</case>
<!-- clobberSettingsKey="false" and hasSettingsKey="false" -->
<default>
<key-style
latin:styleName="settingsPopupStyle"
latin:keyLabelOption="hasPopupHint"
- latin:popupCharacters="\@icon/6|\@integer/key_settings"
+ latin:popupCharacters="\@icon/5|\@integer/key_settings"
+ latin:parentStyle="functionalKeyStyle" />
+ <key-style
+ latin:styleName="symbolsF1PopupStyle"
+ latin:keyLabelOption="hasPopupHint"
+ latin:popupCharacters="@string/alternates_for_symbols_f1"
latin:parentStyle="functionalKeyStyle" />
</default>
</switch>
@@ -59,26 +70,12 @@
latin:keyIconShifted="iconShiftedShiftKey"
latin:parentStyle="functionalKeyStyle"
latin:isSticky="true" />
- <switch>
- <case
- latin:languageCode="ar|iw"
- >
- <key-style
- latin:styleName="deleteKeyStyle"
- latin:code="@integer/key_delete"
- latin:keyIcon="iconDeleteRtlKey"
- latin:parentStyle="functionalKeyStyle"
- latin:isRepeatable="true" />
- </case>
- <default>
- <key-style
- latin:styleName="deleteKeyStyle"
- latin:code="@integer/key_delete"
- latin:keyIcon="iconDeleteKey"
- latin:parentStyle="functionalKeyStyle"
- latin:isRepeatable="true" />
- </default>
- </switch>
+ <key-style
+ latin:styleName="deleteKeyStyle"
+ latin:code="@integer/key_delete"
+ latin:keyIcon="iconDeleteKey"
+ latin:parentStyle="functionalKeyStyle"
+ latin:isRepeatable="true" />
<!-- Return key style -->
<switch>
<case
diff --git a/java/res/xml/kbd_number.xml b/java/res/xml/kbd_number.xml
index 4d7b6d9a9..aabf0eb7a 100644
--- a/java/res/xml/kbd_number.xml
+++ b/java/res/xml/kbd_number.xml
@@ -30,12 +30,9 @@
<case
latin:passwordInput="true"
>
- <Row
- latin:rowEdgeFlags="top"
- >
+ <Row>
<Key
- latin:keyStyle="num1KeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="num1KeyStyle" />
<Key
latin:keyStyle="num2KeyStyle" />
<Key
@@ -43,8 +40,7 @@
</Row>
<Row>
<Key
- latin:keyStyle="num4KeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="num4KeyStyle" />
<Key
latin:keyStyle="num5KeyStyle" />
<Key
@@ -52,39 +48,31 @@
</Row>
<Row>
<Key
- latin:keyStyle="num7KeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="num7KeyStyle" />
<Key
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
- <Row
- latin:rowEdgeFlags="bottom"
- >
+ <Row>
<Spacer />
<Key
latin:keyStyle="num0KeyStyle" />
<Spacer />
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
</case>
<!-- latin:passwordInput="false" -->
<default>
- <Row
- latin:rowEdgeFlags="top"
- >
+ <Row>
<Key
latin:keyLabel="1"
- latin:keyStyle="numKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numKeyStyle" />
<Key
latin:keyLabel="2"
latin:keyStyle="numKeyStyle" />
@@ -94,14 +82,12 @@
<Key
latin:keyLabel="-"
latin:keyStyle="numFunctionalKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
latin:keyLabel="4"
- latin:keyStyle="numKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numKeyStyle" />
<Key
latin:keyLabel="5"
latin:keyStyle="numKeyStyle" />
@@ -111,14 +97,12 @@
<Key
latin:keyLabel=","
latin:keyStyle="numFunctionalKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
latin:keyLabel="7"
- latin:keyStyle="numKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numKeyStyle" />
<Key
latin:keyLabel="8"
latin:keyStyle="numKeyStyle"/>
@@ -127,15 +111,11 @@
latin:keyStyle="numKeyStyle" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
- <Row
- latin:rowEdgeFlags="bottom"
- >
+ <Row>
<Key
- latin:keyStyle="numSpaceKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numSpaceKeyStyle" />
<Key
latin:keyLabel="0"
latin:keyStyle="numKeyStyle" />
@@ -144,8 +124,7 @@
latin:keyStyle="numKeyStyle" />
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
</default>
</switch>
diff --git a/java/res/xml/kbd_phone.xml b/java/res/xml/kbd_phone.xml
index c6508fb03..4588ab2c9 100644
--- a/java/res/xml/kbd_phone.xml
+++ b/java/res/xml/kbd_phone.xml
@@ -26,12 +26,9 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
- <Row
- latin:rowEdgeFlags="top"
- >
+ <Row>
<Key
- latin:keyStyle="num1KeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="num1KeyStyle" />
<Key
latin:keyStyle="num2KeyStyle" />
<Key
@@ -39,13 +36,11 @@
<Key
latin:keyLabel="-"
latin:keyStyle="numFunctionalKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
- latin:keyStyle="num4KeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="num4KeyStyle" />
<Key
latin:keyStyle="num5KeyStyle" />
<Key
@@ -53,35 +48,28 @@
<Key
latin:keyLabel="."
latin:keyStyle="numFunctionalKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
- latin:keyStyle="num7KeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="num7KeyStyle" />
<Key
latin:keyStyle="num8KeyStyle" />
<Key
latin:keyStyle="num9KeyStyle" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
- <Row
- latin:rowEdgeFlags="bottom"
- >
+ <Row>
<Key
- latin:keyStyle="numSwitchToAltKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numSwitchToAltKeyStyle" />
<Key
latin:keyStyle="num0KeyStyle" />
<Key
latin:keyStyle="numSpaceKeyStyle" />
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
</Keyboard>
diff --git a/java/res/xml/kbd_phone_symbols.xml b/java/res/xml/kbd_phone_symbols.xml
index 5d9912229..89a9bd058 100644
--- a/java/res/xml/kbd_phone_symbols.xml
+++ b/java/res/xml/kbd_phone_symbols.xml
@@ -26,13 +26,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_numkey_styles" />
- <Row
- latin:rowEdgeFlags="top"
- >
+ <Row>
<Key
latin:keyLabel="("
- latin:keyStyle="numKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numKeyStyle" />
<Key
latin:keyLabel="/"
latin:keyStyle="numKeyStyle" />
@@ -42,13 +39,11 @@
<Key
latin:keyLabel="-"
latin:keyStyle="numFunctionalKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
- latin:keyLabel="N"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="N" />
<!-- Pause is a comma. Check PhoneNumberUtils.java to see if this
has changed. -->
<Key
@@ -61,13 +56,11 @@
<Key
latin:keyLabel="."
latin:keyStyle="numFunctionalKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
- latin:keyStyle="numStarKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numStarKeyStyle" />
<!-- Wait is a semicolon. -->
<Key
latin:code="59"
@@ -78,15 +71,11 @@
latin:keyStyle="numKeyStyle" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
- <Row
- latin:rowEdgeFlags="bottom"
- >
+ <Row>
<Key
- latin:keyStyle="numSwitchToNumericKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="numSwitchToNumericKeyStyle" />
<Key
latin:keyLabel="+"
latin:keyStyle="numKeyStyle" />
@@ -94,7 +83,6 @@
latin:keyStyle="numSpaceKeyStyle" />
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
</Keyboard>
diff --git a/java/res/xml/kbd_qwerty_row1.xml b/java/res/xml/kbd_qwerty_row1.xml
index cfd2efd2a..daa138255 100644
--- a/java/res/xml/kbd_qwerty_row1.xml
+++ b/java/res/xml/kbd_qwerty_row1.xml
@@ -23,13 +23,11 @@
>
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="q"
latin:keyHintLabel="1"
- latin:popupCharacters="@string/alternates_for_q"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_q" />
<Key
latin:keyLabel="w"
latin:keyHintLabel="2"
@@ -66,7 +64,6 @@
latin:keyLabel="p"
latin:keyHintLabel="0"
latin:popupCharacters="@string/alternates_for_p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
</merge>
diff --git a/java/res/xml/kbd_qwerty_row2.xml b/java/res/xml/kbd_qwerty_row2.xml
index 57bbad75a..6e4872e08 100644
--- a/java/res/xml/kbd_qwerty_row2.xml
+++ b/java/res/xml/kbd_qwerty_row2.xml
@@ -27,8 +27,7 @@
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a"
- latin:keyXPos="5%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="5%p" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -49,8 +48,7 @@
latin:popupCharacters="@string/alternates_for_k" />
<Key
latin:keyLabel="l"
- latin:popupCharacters="@string/alternates_for_l"
- latin:keyEdgeFlags="right" />
+ latin:popupCharacters="@string/alternates_for_l" />
<!-- Here is 5%p space -->
</Row>
</merge>
diff --git a/java/res/xml/kbd_qwerty_row3.xml b/java/res/xml/kbd_qwerty_row3.xml
index 98f0404c0..6a2035543 100644
--- a/java/res/xml/kbd_qwerty_row3.xml
+++ b/java/res/xml/kbd_qwerty_row3.xml
@@ -27,8 +27,7 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyWidth="15%p"
- latin:visualInsetsRight="1%p"
- latin:keyEdgeFlags="left" />
+ latin:visualInsetsRight="1%p" />
<Key
latin:keyLabel="z"
latin:popupCharacters="@string/alternates_for_z" />
@@ -50,7 +49,6 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillBoth"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
</merge>
diff --git a/java/res/xml/kbd_qwerty_row4.xml b/java/res/xml/kbd_qwerty_row4.xml
index 298f0f61e..771333ca9 100644
--- a/java/res/xml/kbd_qwerty_row4.xml
+++ b/java/res/xml/kbd_qwerty_row4.xml
@@ -23,7 +23,6 @@
>
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="bottom"
>
<switch>
<case
@@ -31,8 +30,7 @@
>
<Key
latin:keyStyle="toSymbolKeyStyle"
- latin:keyWidth="13.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.75%p" />
<Key
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="9.2%p" />
@@ -49,8 +47,7 @@
<default>
<Key
latin:keyStyle="toSymbolKeyStyle"
- latin:keyWidth="15%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="15%p" />
<include
latin:keyboardLayout="@xml/kbd_qwerty_f1" />
<Key
@@ -66,14 +63,12 @@
>
<Key
latin:keyStyle="smileyKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</case>
<default>
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</default>
</switch>
</Row>
diff --git a/java/res/xml/kbd_rows_arabic.xml b/java/res/xml/kbd_rows_arabic.xml
index 07e62741d..e9de4ad0d 100644
--- a/java/res/xml/kbd_rows_arabic.xml
+++ b/java/res/xml/kbd_rows_arabic.xml
@@ -29,8 +29,7 @@
<Key
latin:keyLabel="ض"
latin:keyHintLabel="1"
- latin:popupCharacters="1,١"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="1,١" />
<Key
latin:keyLabel="ص"
latin:keyHintLabel="2"
@@ -71,15 +70,13 @@
latin:keyLabel="ج"
latin:keyHintLabel="0"
latin:popupCharacters="0,٠,\u0686"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="10%p"
>
<Key
- latin:keyLabel="ش"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="ش" />
<Key
latin:keyLabel="س" />
<!-- \u0626: ARABIC LETTER YEH WITH HAMZA ABOVE
@@ -119,16 +116,14 @@
<Key
latin:keyLabel="ك"
latin:popupCharacters="گ"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="10%p"
>
<Key
latin:keyLabel="ظ"
- latin:keyXPos="5.0%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="5.0%p" />
<Key
latin:keyLabel="ط" />
<Key
@@ -148,8 +143,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml/kbd_rows_azerty.xml b/java/res/xml/kbd_rows_azerty.xml
index 96efb6646..dbf25eb95 100644
--- a/java/res/xml/kbd_rows_azerty.xml
+++ b/java/res/xml/kbd_rows_azerty.xml
@@ -25,13 +25,11 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="a"
latin:keyHintLabel="1"
- latin:popupCharacters="@string/alternates_for_a"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_a" />
<Key
latin:keyLabel="z"
latin:keyHintLabel="2"
@@ -68,16 +66,14 @@
latin:keyLabel="p"
latin:keyHintLabel="0"
latin:popupCharacters="@string/alternates_for_p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="10%p"
>
<Key
latin:keyLabel="q"
- latin:popupCharacters="@string/alternates_for_q"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_q" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -101,8 +97,7 @@
latin:popupCharacters="@string/alternates_for_l" />
<Key
latin:keyLabel="m"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="10%p"
@@ -110,8 +105,7 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyWidth="15%p"
- latin:visualInsetsRight="1%p"
- latin:keyEdgeFlags="left" />
+ latin:visualInsetsRight="1%p" />
<Key
latin:keyLabel="w"
latin:popupCharacters="@string/alternates_for_w" />
@@ -135,8 +129,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml/kbd_rows_hebrew.xml b/java/res/xml/kbd_rows_hebrew.xml
index af3488515..1ec076860 100644
--- a/java/res/xml/kbd_rows_hebrew.xml
+++ b/java/res/xml/kbd_rows_hebrew.xml
@@ -25,12 +25,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="ק"
- latin:keyXPos="5%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="5%p" />
<Key
latin:keyLabel="ר" />
<Key
@@ -48,15 +46,13 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
<Row
latin:keyWidth="10%p"
>
<Key
- latin:keyLabel="ש"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="ש" />
<Key
latin:keyLabel="ד" />
<Key
@@ -78,8 +74,7 @@
latin:keyLabel="ך" />
<Key
latin:keyLabel="ף"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="10%p"
@@ -87,8 +82,7 @@
<Key
latin:keyLabel="ז"
latin:popupCharacters="ז׳"
- latin:keyXPos="5%p"
- latin:keyEdgeFlags="left" />
+ latin:keyXPos="5%p" />
<Key
latin:keyLabel="ס" />
<Key
@@ -107,8 +101,7 @@
latin:popupCharacters="ת׳" />
<Key
latin:keyLabel="ץ"
- latin:popupCharacters="ץ׳"
- latin:keyEdgeFlags="right" />
+ latin:popupCharacters="ץ׳" />
<!-- Here is 5%p space -->
</Row>
<include
diff --git a/java/res/xml/kbd_rows_qwertz.xml b/java/res/xml/kbd_rows_qwertz.xml
index 347ef60ad..f94892125 100644
--- a/java/res/xml/kbd_rows_qwertz.xml
+++ b/java/res/xml/kbd_rows_qwertz.xml
@@ -25,13 +25,11 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="q"
latin:keyHintLabel="1"
- latin:popupCharacters="@string/alternates_for_q"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_q" />
<Key
latin:keyLabel="w"
latin:keyHintLabel="2"
@@ -68,8 +66,7 @@
latin:keyLabel="p"
latin:keyHintLabel="0"
latin:popupCharacters="@string/alternates_for_p"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row2" />
@@ -79,8 +76,7 @@
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyWidth="15%p"
- latin:visualInsetsRight="1%p"
- latin:keyEdgeFlags="left" />
+ latin:visualInsetsRight="1%p" />
<Key
latin:keyLabel="y"
latin:popupCharacters="@string/alternates_for_y" />
@@ -102,8 +98,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml/kbd_rows_russian.xml b/java/res/xml/kbd_rows_russian.xml
index 2c10c3141..216d74946 100644
--- a/java/res/xml/kbd_rows_russian.xml
+++ b/java/res/xml/kbd_rows_russian.xml
@@ -25,14 +25,12 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="9.091%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="й"
latin:keyHintLabel="1"
latin:popupCharacters="1"
- latin:keyWidth="8.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="8.75%p" />
<Key
latin:keyLabel="ц"
latin:keyHintLabel="2"
@@ -71,16 +69,14 @@
latin:popupCharacters="0" />
<Key
latin:keyLabel="х"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="9.091%p"
>
<Key
latin:keyLabel="ф"
- latin:keyWidth="8.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="8.75%p" />
<Key
latin:keyLabel="ы" />
<Key
@@ -101,16 +97,14 @@
latin:keyLabel="ж" />
<Key
latin:keyLabel="э"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="8.5%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="11.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="11.75%p" />
<Key
latin:keyLabel="я" />
<Key
@@ -132,8 +126,7 @@
latin:keyLabel="ю" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml/kbd_rows_scandinavian.xml b/java/res/xml/kbd_rows_scandinavian.xml
index 3f2560128..7e8902e0b 100644
--- a/java/res/xml/kbd_rows_scandinavian.xml
+++ b/java/res/xml/kbd_rows_scandinavian.xml
@@ -25,14 +25,12 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="9.09%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="q"
latin:keyHintLabel="1"
latin:popupCharacters="@string/alternates_for_q"
- latin:keyWidth="8.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="8.75%p" />
<Key
latin:keyLabel="w"
latin:keyHintLabel="2"
@@ -71,8 +69,7 @@
latin:popupCharacters="@string/alternates_for_p" />
<Key
latin:keyLabel="å"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="9.09%p"
@@ -80,8 +77,7 @@
<Key
latin:keyLabel="a"
latin:popupCharacters="@string/alternates_for_a"
- latin:keyWidth="8.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="8.75%p" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -109,8 +105,7 @@
<Key
latin:keyLabel="@string/keylabel_for_scandinavia_row2_11"
latin:popupCharacters="@string/alternates_for_scandinavia_row2_11"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row3" />
diff --git a/java/res/xml/kbd_rows_serbian.xml b/java/res/xml/kbd_rows_serbian.xml
index 2bed276d3..73c807f95 100644
--- a/java/res/xml/kbd_rows_serbian.xml
+++ b/java/res/xml/kbd_rows_serbian.xml
@@ -25,13 +25,11 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<Row
latin:keyWidth="9.09%p"
- latin:rowEdgeFlags="top"
>
<Key
latin:keyLabel="љ"
latin:keyHintLabel="1"
- latin:popupCharacters="1"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="1" />
<Key
latin:keyLabel="њ"
latin:keyHintLabel="2"
@@ -70,15 +68,13 @@
latin:popupCharacters="0" />
<Key
latin:keyLabel="ш"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="9.09%p"
>
<Key
- latin:keyLabel="а"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="а" />
<Key
latin:keyLabel="с" />
<Key
@@ -99,15 +95,13 @@
latin:keyLabel="ч" />
<Key
latin:keyLabel="ћ"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyWidth="8.90%p"
>
<Key
- latin:keyStyle="shiftKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="shiftKeyStyle" />
<Key
latin:keyLabel="ѕ" />
<Key
@@ -128,8 +122,7 @@
latin:keyLabel="ж" />
<Key
latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row4" />
diff --git a/java/res/xml/kbd_rows_spanish.xml b/java/res/xml/kbd_rows_spanish.xml
index c5ead10da..6d007187f 100644
--- a/java/res/xml/kbd_rows_spanish.xml
+++ b/java/res/xml/kbd_rows_spanish.xml
@@ -30,8 +30,7 @@
>
<Key
latin:keyLabel="a"
- latin:popupCharacters="@string/alternates_for_a"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_a" />
<Key
latin:keyLabel="s"
latin:popupCharacters="@string/alternates_for_s" />
@@ -54,8 +53,7 @@
latin:keyLabel="l"
latin:popupCharacters="@string/alternates_for_l" />
<Key
- latin:keyLabel="ñ"
- latin:keyEdgeFlags="right" />
+ latin:keyLabel="ñ" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_qwerty_row3" />
diff --git a/java/res/xml/kbd_symbols.xml b/java/res/xml/kbd_symbols.xml
index 7c0cee60b..7bb8d0200 100644
--- a/java/res/xml/kbd_symbols.xml
+++ b/java/res/xml/kbd_symbols.xml
@@ -26,13 +26,10 @@
latin:keyboardLayout="@xml/kbd_key_styles" />
<include
latin:keyboardLayout="@xml/kbd_currency_key_styles" />
- <Row
- latin:rowEdgeFlags="top"
- >
+ <Row>
<Key
latin:keyLabel="@string/keylabel_for_symbols_1"
- latin:popupCharacters="@string/alternates_for_symbols_1"
- latin:keyEdgeFlags="left" />
+ latin:popupCharacters="@string/alternates_for_symbols_1" />
<Key
latin:keyLabel="@string/keylabel_for_symbols_2"
latin:popupCharacters="@string/alternates_for_symbols_2" />
@@ -60,13 +57,11 @@
<Key
latin:keyLabel="@string/keylabel_for_symbols_0"
latin:popupCharacters="@string/alternates_for_symbols_0"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
- latin:keyLabel="\@"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="\@" />
<Key
latin:keyLabel="\#" />
<Key
@@ -91,15 +86,13 @@
<Key
latin:keyLabel=")"
latin:popupCharacters="],},&gt;"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
latin:keyStyle="altKeyStyle"
latin:keyWidth="15%p"
- latin:visualInsetsRight="1%p"
- latin:keyEdgeFlags="left" />
+ latin:visualInsetsRight="1%p" />
<Key
latin:keyLabel="!"
latin:popupCharacters="¡" />
@@ -125,8 +118,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
<include
latin:keyboardLayout="@xml/kbd_symbols_row4" />
diff --git a/java/res/xml/kbd_symbols_f1.xml b/java/res/xml/kbd_symbols_f1.xml
index 3c7346c54..cebb4f0b2 100644
--- a/java/res/xml/kbd_symbols_f1.xml
+++ b/java/res/xml/kbd_symbols_f1.xml
@@ -36,10 +36,9 @@
<!-- latin:hasVoiceKey="false" -->
<default>
<Key
- latin:keyLabel="@string/keylabel_for_symbols_comma"
- latin:popupCharacters="@string/alternates_for_symbols_comma"
+ latin:keyLabel="@string/keylabel_for_symbols_f1"
latin:keyWidth="9.2%p"
- latin:keyStyle="settingsPopupStyle" />
+ latin:keyStyle="symbolsF1PopupStyle" />
</default>
</switch>
</case>
@@ -55,9 +54,8 @@
<!-- latin:hasVoiceKey="false" -->
<default>
<Key
- latin:keyLabel="@string/keylabel_for_symbols_comma"
- latin:popupCharacters="@string/alternates_for_symbols_comma"
- latin:keyStyle="settingsPopupStyle" />
+ latin:keyLabel="@string/keylabel_for_symbols_f1"
+ latin:keyStyle="symbolsF1PopupStyle" />
</default>
</switch>
</default>
diff --git a/java/res/xml/kbd_symbols_row4.xml b/java/res/xml/kbd_symbols_row4.xml
index 24313acb5..3fda8883e 100644
--- a/java/res/xml/kbd_symbols_row4.xml
+++ b/java/res/xml/kbd_symbols_row4.xml
@@ -23,7 +23,6 @@
>
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="bottom"
>
<switch>
<case
@@ -31,8 +30,7 @@
>
<Key
latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="13.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.75%p" />
<Key
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="9.2%p" />
@@ -49,8 +47,7 @@
<default>
<Key
latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="15%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="15%p" />
<include
latin:keyboardLayout="@xml/kbd_symbols_f1" />
<Key
@@ -66,14 +63,12 @@
>
<Key
latin:keyStyle="smileyKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</case>
<default>
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</default>
</switch>
</Row>
diff --git a/java/res/xml/kbd_symbols_shift.xml b/java/res/xml/kbd_symbols_shift.xml
index f22d45aff..f4ccd6c09 100644
--- a/java/res/xml/kbd_symbols_shift.xml
+++ b/java/res/xml/kbd_symbols_shift.xml
@@ -24,12 +24,9 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
- <Row
- latin:rowEdgeFlags="top"
- >
+ <Row>
<Key
- latin:keyLabel="~"
- latin:keyEdgeFlags="left" />
+ latin:keyLabel="~" />
<Key
latin:keyLabel="`" />
<Key
@@ -55,13 +52,11 @@
latin:keyLabel="{" />
<Key
latin:keyLabel="}"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
- latin:keyStyle="nonSpecialBackgroundTabKeyStyle"
- latin:keyEdgeFlags="left" />
+ latin:keyStyle="nonSpecialBackgroundTabKeyStyle" />
<Key
latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="£" />
@@ -87,15 +82,13 @@
latin:keyLabel="[" />
<Key
latin:keyLabel="]"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</Row>
<Row>
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyWidth="15%p"
- latin:visualInsetsRight="1%p"
- latin:keyEdgeFlags="left" />
+ latin:visualInsetsRight="1%p" />
<Key
latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="™" />
@@ -120,8 +113,7 @@
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight"
- latin:visualInsetsLeft="1%p"
- latin:keyEdgeFlags="right" />
+ latin:visualInsetsLeft="1%p" />
</Row>
<include latin:keyboardLayout="@xml/kbd_symbols_shift_row4" />
</Keyboard>
diff --git a/java/res/xml/kbd_symbols_shift_row4.xml b/java/res/xml/kbd_symbols_shift_row4.xml
index 90a96e4bc..35d444a75 100644
--- a/java/res/xml/kbd_symbols_shift_row4.xml
+++ b/java/res/xml/kbd_symbols_shift_row4.xml
@@ -23,7 +23,6 @@
>
<Row
latin:keyWidth="10%p"
- latin:rowEdgeFlags="bottom"
>
<switch>
<case
@@ -31,8 +30,7 @@
>
<Key
latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="13.75%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="13.75%p" />
<Key
latin:keyStyle="settingsKeyStyle"
latin:keyWidth="9.2%p" />
@@ -53,8 +51,7 @@
<default>
<Key
latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="15%p"
- latin:keyEdgeFlags="left" />
+ latin:keyWidth="15%p" />
<Key
latin:keyLabel="„"
latin:popupCharacters="“,”,„,‟,«,»,‘,’,‚,‛"
@@ -73,14 +70,12 @@
>
<Key
latin:keyStyle="smileyKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</case>
<default>
<Key
latin:keyStyle="returnKeyStyle"
- latin:keyWidth="fillRight"
- latin:keyEdgeFlags="right" />
+ latin:keyWidth="fillRight" />
</default>
</switch>
</Row>
diff --git a/java/src/com/android/inputmethod/keyboard/Key.java b/java/src/com/android/inputmethod/keyboard/Key.java
index 45bf68cdf..33ab511a5 100644
--- a/java/src/com/android/inputmethod/keyboard/Key.java
+++ b/java/src/com/android/inputmethod/keyboard/Key.java
@@ -95,7 +95,7 @@ public class Key {
* {@link Keyboard#EDGE_LEFT}, {@link Keyboard#EDGE_RIGHT},
* {@link Keyboard#EDGE_TOP} and {@link Keyboard#EDGE_BOTTOM}.
*/
- public final int mEdgeFlags;
+ private int mEdgeFlags;
/** Whether this is a functional key which has different key top than normal key */
public final boolean mFunctional;
/** Whether this key repeats itself when held down */
@@ -273,8 +273,7 @@ public class Key {
mFunctional = style.getBoolean(keyAttr, R.styleable.Keyboard_Key_isFunctional, false);
mSticky = style.getBoolean(keyAttr, R.styleable.Keyboard_Key_isSticky, false);
mEnabled = style.getBoolean(keyAttr, R.styleable.Keyboard_Key_enabled, true);
- mEdgeFlags = style.getFlag(keyAttr, R.styleable.Keyboard_Key_keyEdgeFlags, 0)
- | row.mRowEdgeFlags;
+ mEdgeFlags = 0;
final KeyboardIconsSet iconsSet = mKeyboard.mIconsSet;
mVisualInsetsLeft = KeyboardParser.getDimensionOrFraction(keyAttr,
@@ -316,6 +315,10 @@ public class Key {
}
}
+ public void addEdgeFlags(int flags) {
+ mEdgeFlags |= flags;
+ }
+
public CharSequence getCaseAdjustedLabel() {
return mKeyboard.adjustLabelCase(mLabel);
}
@@ -441,15 +444,18 @@ public class Key {
* assume that all points between the key and the edge are considered to be on the key.
*/
public boolean isOnKey(int x, int y) {
+ final int left = mX - mGap / 2;
+ final int right = left + mWidth + mGap;
+ final int top = mY;
+ final int bottom = top + mHeight + mKeyboard.getVerticalGap();
final int flags = mEdgeFlags;
+ if (flags == 0) {
+ return x >= left && x <= right && y >= top && y <= bottom;
+ }
final boolean leftEdge = (flags & Keyboard.EDGE_LEFT) != 0;
final boolean rightEdge = (flags & Keyboard.EDGE_RIGHT) != 0;
final boolean topEdge = (flags & Keyboard.EDGE_TOP) != 0;
final boolean bottomEdge = (flags & Keyboard.EDGE_BOTTOM) != 0;
- final int left = mX - mGap / 2;
- final int right = left + mWidth + mGap;
- final int top = mY;
- final int bottom = top + mHeight + mKeyboard.getVerticalGap();
// In order to mitigate rounding errors, we use (left <= x <= right) here.
return (x >= left || leftEdge) && (x <= right || rightEdge)
&& (y >= top || topEdge) && (y <= bottom || bottomEdge);
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardView.java b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
index 71c4896a7..d23b8ff0e 100644
--- a/java/src/com/android/inputmethod/keyboard/KeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
@@ -526,7 +526,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
canvas.translate(-bgX, -bgY);
// Draw key top visuals.
- final int keyWidth = key.mWidth;
+ final int keyWidth = key.mWidth - key.mVisualInsetsLeft - key.mVisualInsetsRight;
final int keyHeight = key.mHeight;
final float centerX = keyWidth * 0.5f;
final float centerY = keyHeight * 0.5f;
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java
index 6256e7fbd..02c261bcd 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java
@@ -34,21 +34,20 @@ public class KeyboardIconsSet {
private static final int ICON_TO_SYMBOL_KEY = 2;
private static final int ICON_TO_SYMBOL_KEY_WITH_SHORTCUT = 3;
private static final int ICON_DELETE_KEY = 4;
- private static final int ICON_DELETE_RTL_KEY = 5;
- private static final int ICON_SETTINGS_KEY = 6; // This is also represented as "@icon/6" in xml.
- private static final int ICON_SHORTCUT_KEY = 7;
- private static final int ICON_SPACE_KEY = 8;
- private static final int ICON_RETURN_KEY = 9;
- private static final int ICON_SEARCH_KEY = 10;
- private static final int ICON_TAB_KEY = 11;
+ private static final int ICON_SETTINGS_KEY = 5; // This is also represented as "@icon/5" in xml.
+ private static final int ICON_SHORTCUT_KEY = 6;
+ private static final int ICON_SPACE_KEY = 7;
+ private static final int ICON_RETURN_KEY = 8;
+ private static final int ICON_SEARCH_KEY = 9;
+ private static final int ICON_TAB_KEY = 10;
// This should be aligned with Keyboard.keyIconShifted enum.
- private static final int ICON_SHIFTED_SHIFT_KEY = 12;
+ private static final int ICON_SHIFTED_SHIFT_KEY = 11;
// This should be aligned with Keyboard.keyIconPreview enum.
- private static final int ICON_PREVIEW_TAB_KEY = 13;
- private static final int ICON_PREVIEW_SETTINGS_KEY = 14;
- private static final int ICON_PREVIEW_SHORTCUT_KEY = 15;
+ private static final int ICON_PREVIEW_TAB_KEY = 12;
+ private static final int ICON_PREVIEW_SETTINGS_KEY = 13;
+ private static final int ICON_PREVIEW_SHORTCUT_KEY = 14;
- private static final int ICON_LAST = 15;
+ private static final int ICON_LAST = 14;
private final Drawable mIcons[] = new Drawable[ICON_LAST + 1];
@@ -62,8 +61,6 @@ public class KeyboardIconsSet {
return ICON_TO_SYMBOL_KEY_WITH_SHORTCUT;
case R.styleable.Keyboard_iconDeleteKey:
return ICON_DELETE_KEY;
- case R.styleable.Keyboard_iconDeleteRtlKey:
- return ICON_DELETE_RTL_KEY;
case R.styleable.Keyboard_iconSettingsKey:
return ICON_SETTINGS_KEY;
case R.styleable.Keyboard_iconShortcutKey:
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardParser.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardParser.java
index e35db8955..fcda91990 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardParser.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardParser.java
@@ -135,6 +135,8 @@ public class KeyboardParser {
private int mMaxRowWidth = 0;
private int mTotalHeight = 0;
private Row mCurrentRow = null;
+ private boolean mLeftEdge;
+ private Key mRightEdgeKey = null;
private final KeyStyles mKeyStyles = new KeyStyles();
public KeyboardParser(Keyboard keyboard, Context context) {
@@ -623,6 +625,8 @@ public class KeyboardParser {
mCurrentX = 0;
setSpacer(mCurrentX, mHorizontalEdgesPadding);
mCurrentRow = row;
+ mLeftEdge = true;
+ mRightEdgeKey = null;
}
private void endRow() {
@@ -633,10 +637,19 @@ public class KeyboardParser {
mMaxRowWidth = mCurrentX;
mCurrentY += mCurrentRow.mDefaultHeight;
mCurrentRow = null;
+ if (mRightEdgeKey != null) {
+ mRightEdgeKey.addEdgeFlags(Keyboard.EDGE_RIGHT);
+ mRightEdgeKey = null;
+ }
}
private void endKey(Key key) {
mCurrentX = key.mX - key.mGap / 2 + key.mWidth + key.mGap;
+ if (mLeftEdge) {
+ key.addEdgeFlags(Keyboard.EDGE_LEFT);
+ mLeftEdge = false;
+ }
+ mRightEdgeKey = key;
}
private void endKeyboard(int defaultVerticalGap) {
@@ -646,6 +659,8 @@ public class KeyboardParser {
private void setSpacer(int keyXPos, int width) {
mCurrentX = keyXPos + width;
+ mLeftEdge = false;
+ mRightEdgeKey = null;
}
public static int getDimensionOrFraction(TypedArray a, int index, int base, int defValue) {
diff --git a/java/src/com/android/inputmethod/keyboard/internal/Row.java b/java/src/com/android/inputmethod/keyboard/internal/Row.java
index 06aadcc05..b34d6d06f 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/Row.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/Row.java
@@ -38,11 +38,6 @@ public class Row {
public final int mDefaultHorizontalGap;
/** Vertical gap following this row. */
public final int mVerticalGap;
- /**
- * Edge flags for this row of keys. Possible values that can be assigned are
- * {@link Keyboard#EDGE_TOP EDGE_TOP} and {@link Keyboard#EDGE_BOTTOM EDGE_BOTTOM}
- */
- public final int mRowEdgeFlags;
private final Keyboard mKeyboard;
@@ -61,10 +56,6 @@ public class Row {
mVerticalGap = KeyboardParser.getDimensionOrFraction(a,
R.styleable.Keyboard_verticalGap, keyboardHeight, keyboard.getVerticalGap());
a.recycle();
- a = res.obtainAttributes(Xml.asAttributeSet(parser),
- R.styleable.Keyboard_Row);
- mRowEdgeFlags = a.getInt(R.styleable.Keyboard_Row_rowEdgeFlags, 0);
- a.recycle();
}
public Keyboard getKeyboard() {
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java b/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java
index 76a230f82..00d80f566 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java
@@ -19,6 +19,7 @@ package com.android.inputmethod.latin;
import android.content.ContentResolver;
import android.content.Context;
import android.content.res.AssetFileDescriptor;
+import android.content.res.Resources;
import android.net.Uri;
import android.text.TextUtils;
@@ -129,8 +130,11 @@ public class BinaryDictionaryFileDumper {
*/
public static String getDictionaryFileFromResource(int resource, Locale locale,
Context context) throws FileNotFoundException, IOException {
- return copyFileTo(context.getResources().openRawResource(resource),
- getCacheFileNameForLocale(locale, context));
+ final Resources res = context.getResources();
+ final Locale savedLocale = Utils.setSystemLocale(res, locale);
+ final InputStream stream = res.openRawResource(resource);
+ Utils.setSystemLocale(res, savedLocale);
+ return copyFileTo(stream, getCacheFileNameForLocale(locale, context));
}
/**
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
index bce787db2..989a0e9a0 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
@@ -18,6 +18,7 @@ package com.android.inputmethod.latin;
import android.content.Context;
import android.content.res.AssetFileDescriptor;
+import android.content.res.Resources;
import android.util.Log;
import java.io.FileNotFoundException;
@@ -42,8 +43,13 @@ class BinaryDictionaryGetter {
/**
* Returns a file address from a resource, or null if it cannot be opened.
*/
- private static AssetFileAddress loadFallbackResource(Context context, int fallbackResId) {
- final AssetFileDescriptor afd = context.getResources().openRawResourceFd(fallbackResId);
+ private static AssetFileAddress loadFallbackResource(final Context context,
+ final int fallbackResId, final Locale locale) {
+ final Resources res = context.getResources();
+ final Locale savedLocale = Utils.setSystemLocale(res, locale);
+ final AssetFileDescriptor afd = res.openRawResourceFd(fallbackResId);
+ Utils.setSystemLocale(res, savedLocale);
+
if (afd == null) {
Log.e(TAG, "Found the resource but cannot read it. Is it compressed? resId="
+ fallbackResId);
@@ -91,7 +97,8 @@ class BinaryDictionaryGetter {
Log.e(TAG, "Unable to read source data for locale "
+ locale.toString() + ": falling back to internal dictionary");
}
- final AssetFileAddress fallbackAsset = loadFallbackResource(context, fallbackResId);
+ final AssetFileAddress fallbackAsset = loadFallbackResource(context, fallbackResId,
+ locale);
if (null == fallbackAsset) return null;
return Arrays.asList(fallbackAsset);
}
diff --git a/java/src/com/android/inputmethod/latin/DictionaryFactory.java b/java/src/com/android/inputmethod/latin/DictionaryFactory.java
index a35b0f5b0..39b4f63a5 100644
--- a/java/src/com/android/inputmethod/latin/DictionaryFactory.java
+++ b/java/src/com/android/inputmethod/latin/DictionaryFactory.java
@@ -48,7 +48,7 @@ public class DictionaryFactory {
int fallbackResId) {
if (null == locale) {
Log.e(TAG, "No locale defined for dictionary");
- return new DictionaryCollection(createBinaryDictionary(context, fallbackResId));
+ return new DictionaryCollection(createBinaryDictionary(context, fallbackResId, locale));
}
final List<Dictionary> dictList = new LinkedList<Dictionary>();
@@ -56,8 +56,11 @@ public class DictionaryFactory {
BinaryDictionaryGetter.getDictionaryFiles(locale, context, fallbackResId);
if (null != assetFileList) {
for (final AssetFileAddress f : assetFileList) {
- dictList.add(
- new BinaryDictionary(context, f.mFilename, f.mOffset, f.mLength, null));
+ final BinaryDictionary binaryDictionary =
+ new BinaryDictionary(context, f.mFilename, f.mOffset, f.mLength, null);
+ if (binaryDictionary.isValidDictionary()) {
+ dictList.add(binaryDictionary);
+ }
}
}
@@ -67,7 +70,17 @@ public class DictionaryFactory {
if (null == dictList) {
return new DictionaryCollection();
} else {
- return new DictionaryCollection(dictList);
+ if (dictList.isEmpty()) {
+ // The list may be empty if no dictionaries have been added. The getter should not
+ // return an empty list, but if it does we end up here. Likewise, if the files
+ // we found could not be opened by the native code for any reason (format mismatch,
+ // file too big to fit in memory, etc) then we could have an empty list. In this
+ // case we want to fall back on the resource.
+ return new DictionaryCollection(createBinaryDictionary(context, fallbackResId,
+ locale));
+ } else {
+ return new DictionaryCollection(dictList);
+ }
}
}
@@ -75,12 +88,21 @@ public class DictionaryFactory {
* Initializes a dictionary from a raw resource file
* @param context application context for reading resources
* @param resId the resource containing the raw binary dictionary
+ * @param locale the locale to use for the resource
* @return an initialized instance of BinaryDictionary
*/
- protected static BinaryDictionary createBinaryDictionary(Context context, int resId) {
+ protected static BinaryDictionary createBinaryDictionary(final Context context,
+ final int resId, final Locale locale) {
AssetFileDescriptor afd = null;
try {
- afd = context.getResources().openRawResourceFd(resId);
+ final Resources res = context.getResources();
+ if (null != locale) {
+ final Locale savedLocale = Utils.setSystemLocale(res, locale);
+ afd = res.openRawResourceFd(resId);
+ Utils.setSystemLocale(res, savedLocale);
+ } else {
+ afd = res.openRawResourceFd(resId);
+ }
if (afd == null) {
Log.e(TAG, "Found the resource but it is compressed. resId=" + resId);
return null;
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 5d8fd3411..64f7e6011 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -546,8 +546,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
// know now whether this is a password text field, because we need to know now whether we
// want to enable the voice button.
final VoiceProxy voiceIme = mVoiceProxy;
- voiceIme.resetVoiceStates(InputTypeCompatUtils.isPasswordInputType(attribute.inputType)
- || InputTypeCompatUtils.isVisiblePasswordInputType(attribute.inputType));
+ final int inputType = (attribute != null) ? attribute.inputType : 0;
+ voiceIme.resetVoiceStates(InputTypeCompatUtils.isPasswordInputType(inputType)
+ || InputTypeCompatUtils.isVisiblePasswordInputType(inputType));
initializeInputAttributes(attribute);