diff --git a/java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.png b/java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..102eac7818597608d70821f5d51b8b9b39260825 Binary files /dev/null and b/java/res/drawable-hdpi/sym_bkeyboard_delete_rtl.png differ diff --git a/java/res/drawable-hdpi/sym_keyboard_delete_rtl.png b/java/res/drawable-hdpi/sym_keyboard_delete_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..a508452bdb930737d22de66f5fba4fcd52f3dd23 Binary files /dev/null and b/java/res/drawable-hdpi/sym_keyboard_delete_rtl.png 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 new file mode 100644 index 0000000000000000000000000000000000000000..a77e4a00ee824abf6d1abc13852d3370471c178e Binary files /dev/null and b/java/res/drawable-hdpi/sym_keyboard_delete_rtl_holo.png differ diff --git a/java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.png b/java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..32253ea9b1e8040ba73d3b02b170958b6b31e277 Binary files /dev/null and b/java/res/drawable-mdpi/sym_bkeyboard_delete_rtl.png differ diff --git a/java/res/drawable-mdpi/sym_keyboard_delete_rtl.png b/java/res/drawable-mdpi/sym_keyboard_delete_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..d436c23a94e876d4633341cab1f13beacd795630 Binary files /dev/null and b/java/res/drawable-mdpi/sym_keyboard_delete_rtl.png 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 new file mode 100644 index 0000000000000000000000000000000000000000..2e75d85366e8fa96198c93f80c8a6addbccff4d9 Binary files /dev/null and b/java/res/drawable-mdpi/sym_keyboard_delete_rtl_holo.png 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 new file mode 100644 index 0000000000000000000000000000000000000000..5c19f3258ecea27621b055c15832ac8ebdfdfe5f Binary files /dev/null and b/java/res/drawable-sw600dp-hdpi/sym_keyboard_delete_rtl_holo.png 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 new file mode 100644 index 0000000000000000000000000000000000000000..994854106288702d4a1a46b6803d81c99c407ca3 Binary files /dev/null and b/java/res/drawable-sw600dp-mdpi/sym_keyboard_delete_rtl_holo.png 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 new file mode 100644 index 0000000000000000000000000000000000000000..f3310a1cdd1e85bd2b2e238fc3e1e67c3ead844b Binary files /dev/null and b/java/res/drawable-sw600dp-xhdpi/sym_keyboard_delete_rtl_holo.png differ diff --git a/java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.png b/java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..23aee2b3ba5887b0664df5e57d556d137e109fd2 Binary files /dev/null and b/java/res/drawable-xhdpi/sym_bkeyboard_delete_rtl.png differ diff --git a/java/res/drawable-xhdpi/sym_keyboard_delete_rtl.png b/java/res/drawable-xhdpi/sym_keyboard_delete_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..3f9d3dd65d5e492a6b06ffa9446cd4cacddef3db Binary files /dev/null and b/java/res/drawable-xhdpi/sym_keyboard_delete_rtl.png 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 new file mode 100644 index 0000000000000000000000000000000000000000..1f4890c89fa8aa815559c313384981851a87f9c5 Binary files /dev/null and b/java/res/drawable-xhdpi/sym_keyboard_delete_rtl_holo.png differ diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml index d0d66d68b38e33663ae45955be5565b3898c7f9f..fa5c08ba7d26fdc5059bb41986804bf0ee581de0 100644 --- a/java/res/values/attrs.xml +++ b/java/res/values/attrs.xml @@ -157,6 +157,7 @@ <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" /> @@ -218,25 +219,26 @@ <enum name="iconToSymbolKey" value="2" /> <enum name="iconToSymbolKeyWithShortcut" value="3" /> <enum name="iconDeleteKey" value="4" /> - <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" /> + <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" /> </attr> <!-- Shift key icon for shifted state --> <attr name="keyIconShifted" format="enum"> <!-- This should be aligned with KeyboardIcons.ICON_SHIFTED_* --> - <enum name="iconShiftedShiftKey" value="11" /> + <enum name="iconShiftedShiftKey" value="12" /> </attr> <!-- The icon to show in the popup preview. --> <attr name="keyIconPreview" format="enum"> <!-- This should be aligned with KeyboardIcons.ICON_PREVIEW_* --> - <enum name="iconPreviewSpaceKey" value="12" /> - <enum name="iconPreviewTabKey" value="13" /> - <enum name="iconPreviewSettingsKey" value="14" /> - <enum name="iconPreviewShortcutKey" value="15" /> + <enum name="iconPreviewSpaceKey" value="13" /> + <enum name="iconPreviewTabKey" value="14" /> + <enum name="iconPreviewSettingsKey" value="15" /> + <enum name="iconPreviewShortcutKey" value="16" /> </attr> <!-- The key style to specify a set of key attributes defined by <key_style/> --> <attr name="keyStyle" format="string" /> diff --git a/java/res/values/keyboard-icons-black.xml b/java/res/values/keyboard-icons-black.xml index e2c68899511f958c3cef9c1d6386c5d5b74d6175..313bf02e15487a0946126e7112c3395aac82ca41 100644 --- a/java/res/values/keyboard-icons-black.xml +++ b/java/res/values/keyboard-icons-black.xml @@ -18,12 +18,14 @@ <style name="KeyboardIcons.Black"> <!-- Keyboard icons --> <!-- TODO: The following holo icon for phone (drawable-hdpi and drawable-xhdpi) are too - large for phone. + ambiguous. sym_bkeyboard_voice_off --> <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 bf2d13d300483763ad45db10eea685193ce519b6..a2bfd7a2fe59040abcd2c68d8c419f42546411b6 100644 --- a/java/res/values/keyboard-icons-ics.xml +++ b/java/res/values/keyboard-icons-ics.xml @@ -17,27 +17,14 @@ <resources> <style name="KeyboardIcons.IceCreamSandwich"> <!-- Keyboard icons --> - <!-- TODO: The following holo icon for phone (drawable-hdpi and drawable-xhdpi) are too - large for phone. - sym_keyboard_shift_holo - sym_keyboard_shift_locked_holo - sym_keyboard_delete_holo, - sym_keyboard_settings_holo - sym_keyboard_voice_holo - sym_keyboard_voice_holo_off - sym_keyboard_space_holo - sym_keyboard_return_holo - sym_keyboard_tab_holo - --> <!-- TODO: The following holo icon for phone (drawable-hdpi and drawable-xhdpi) are missing. sym_keyboard_123_mic_holo - sym_keyboard_search_holo - sym_keyboard_feedback_tab_holo - sym_keyboard_feedback_voice_holo --> <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 8bc7539fa7b344c5906679873a023b41b6a14029..b6fa89026b07cef54efa2020b9d71673be326196 100644 --- a/java/res/values/keyboard-icons-white.xml +++ b/java/res/values/keyboard-icons-white.xml @@ -20,6 +20,8 @@ <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/kbd_key_styles.xml b/java/res/xml/kbd_key_styles.xml index 3d86003919148a45264e6a0158c1dcbe9a35e9b3..cc949c9dc8b0eb7d67f7420b5e9592966424ce39 100644 --- a/java/res/xml/kbd_key_styles.xml +++ b/java/res/xml/kbd_key_styles.xml @@ -59,12 +59,24 @@ latin:keyIconShifted="iconShiftedShiftKey" latin:parentStyle="functionalKeyStyle" latin:isSticky="true" /> - <key-style - latin:styleName="deleteKeyStyle" - latin:code="@integer/key_delete" - latin:keyIcon="iconDeleteKey" - latin:parentStyle="functionalKeyStyle" - latin:isRepeatable="true" /> + <switch> + <case latin:localeCode="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> <!-- Return key style --> <switch> <case diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java index 1530fed6fdbe812260d8a52d65e759339b6d8741..535a6954cf4dc854b88f66bf470c7fef23e1c962 100644 --- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java +++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java @@ -34,21 +34,22 @@ 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_SETTINGS_KEY = 5; - 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; + private static final int ICON_DELETE_RTL_KEY = 5; + private static final int ICON_SETTINGS_KEY = 6; + 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; // This should be aligned with Keyboard.keyIconShifted enum. - private static final int ICON_SHIFTED_SHIFT_KEY = 11; + private static final int ICON_SHIFTED_SHIFT_KEY = 12; // This should be aligned with Keyboard.keyIconPreview enum. - private static final int ICON_PREVIEW_SPACE_KEY = 12; - 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_SPACE_KEY = 13; + private static final int ICON_PREVIEW_TAB_KEY = 14; + private static final int ICON_PREVIEW_SETTINGS_KEY = 15; + private static final int ICON_PREVIEW_SHORTCUT_KEY = 16; - private static final int ICON_LAST = 15; + private static final int ICON_LAST = 16; private final Drawable mIcons[] = new Drawable[ICON_LAST + 1]; @@ -62,6 +63,8 @@ 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: