diff options
Diffstat (limited to 'java')
26 files changed, 92 insertions, 74 deletions
diff --git a/java/res/drawable-hdpi/sym_keyboard_zwj_holo.png b/java/res/drawable-hdpi/sym_keyboard_zwj_holo.png Binary files differnew file mode 100644 index 000000000..5fa30ceb8 --- /dev/null +++ b/java/res/drawable-hdpi/sym_keyboard_zwj_holo.png diff --git a/java/res/drawable-hdpi/sym_keyboard_zwnj_holo.png b/java/res/drawable-hdpi/sym_keyboard_zwnj_holo.png Binary files differnew file mode 100644 index 000000000..91367f3d2 --- /dev/null +++ b/java/res/drawable-hdpi/sym_keyboard_zwnj_holo.png diff --git a/java/res/drawable-mdpi/sym_keyboard_zwj_holo.png b/java/res/drawable-mdpi/sym_keyboard_zwj_holo.png Binary files differnew file mode 100644 index 000000000..70370d83d --- /dev/null +++ b/java/res/drawable-mdpi/sym_keyboard_zwj_holo.png diff --git a/java/res/drawable-mdpi/sym_keyboard_zwnj_holo.png b/java/res/drawable-mdpi/sym_keyboard_zwnj_holo.png Binary files differnew file mode 100644 index 000000000..a69eade17 --- /dev/null +++ b/java/res/drawable-mdpi/sym_keyboard_zwnj_holo.png diff --git a/java/res/drawable-xhdpi/sym_keyboard_zwj_holo.png b/java/res/drawable-xhdpi/sym_keyboard_zwj_holo.png Binary files differnew file mode 100644 index 000000000..26694274e --- /dev/null +++ b/java/res/drawable-xhdpi/sym_keyboard_zwj_holo.png diff --git a/java/res/drawable-xhdpi/sym_keyboard_zwnj_holo.png b/java/res/drawable-xhdpi/sym_keyboard_zwnj_holo.png Binary files differnew file mode 100644 index 000000000..75a22b65f --- /dev/null +++ b/java/res/drawable-xhdpi/sym_keyboard_zwnj_holo.png diff --git a/java/res/values-land/dimens.xml b/java/res/values-land/dimens.xml index 550d29f76..1157b2733 100644 --- a/java/res/values-land/dimens.xml +++ b/java/res/values-land/dimens.xml @@ -24,8 +24,7 @@ <dimen name="keyboardHeight">176.0dp</dimen> <fraction name="minKeyboardHeight">45%p</fraction> <!-- key_height + key_bottom_gap = popup_key_height --> -<!-- <dimen name="key_height">0.260in</dimen>--> - <dimen name="popup_key_height">0.280in</dimen> + <dimen name="popup_key_height">44.8dp</dimen> <fraction name="keyboard_top_padding">1.818%p</fraction> <fraction name="keyboard_bottom_padding">0.0%p</fraction> @@ -54,11 +53,11 @@ <fraction name="key_uppercase_letter_ratio">40%</fraction> <fraction name="key_preview_text_ratio">90%</fraction> <fraction name="spacebar_text_ratio">40.000%</fraction> - <dimen name="key_preview_offset">0.08in</dimen> + <dimen name="key_preview_offset">12.8dp</dimen> - <dimen name="key_preview_offset_ics">0.01in</dimen> + <dimen name="key_preview_offset_ics">1.6dp</dimen> <!-- popup_key_height x -0.5 --> - <dimen name="more_keys_keyboard_vertical_correction_ics">-0.140in</dimen> + <dimen name="more_keys_keyboard_vertical_correction_ics">-22.4dp</dimen> <dimen name="suggestions_strip_height">36dp</dimen> <dimen name="more_suggestions_row_height">36dp</dimen> @@ -66,7 +65,7 @@ <fraction name="min_more_suggestions_width">60%</fraction> <!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. --> <!-- popup_key_height x 1.2 --> - <dimen name="more_keys_keyboard_slide_allowance">0.336in</dimen> + <dimen name="more_keys_keyboard_slide_allowance">53.76dp</dimen> <!-- popup_key_height x -1.0 --> - <dimen name="more_keys_keyboard_vertical_correction">-0.280in</dimen> + <dimen name="more_keys_keyboard_vertical_correction">-44.8dp</dimen> </resources> diff --git a/java/res/values-sw600dp-land/dimens.xml b/java/res/values-sw600dp-land/dimens.xml index c6c6f2b3b..8a59c9b54 100644 --- a/java/res/values-sw600dp-land/dimens.xml +++ b/java/res/values-sw600dp-land/dimens.xml @@ -38,7 +38,7 @@ <fraction name="key_bottom_gap_ics">4.0%p</fraction> <fraction name="keyboard_bottom_padding_ics">0.0%p</fraction> - <dimen name="popup_key_height">13.0mm</dimen> + <dimen name="popup_key_height">81.9dp</dimen> <!-- left or right padding of label alignment --> <dimen name="key_label_horizontal_padding">18dp</dimen> @@ -51,7 +51,7 @@ <fraction name="key_uppercase_letter_ratio">29%</fraction> <fraction name="spacebar_text_ratio">33.33%</fraction> - <dimen name="suggestions_strip_padding">40.0mm</dimen> + <dimen name="suggestions_strip_padding">252.0dp</dimen> <integer name="max_more_suggestions_row">5</integer> <fraction name="min_more_suggestions_width">50%</fraction> </resources> diff --git a/java/res/values-sw600dp/dimens.xml b/java/res/values-sw600dp/dimens.xml index ebe388263..f03ce2943 100644 --- a/java/res/values-sw600dp/dimens.xml +++ b/java/res/values-sw600dp/dimens.xml @@ -25,7 +25,7 @@ <fraction name="maxKeyboardHeight">50%p</fraction> <fraction name="minKeyboardHeight">-35.0%p</fraction> - <dimen name="popup_key_height">10.0mm</dimen> + <dimen name="popup_key_height">63.0dp</dimen> <fraction name="keyboard_top_padding">2.291%p</fraction> <fraction name="keyboard_bottom_padding">0.0%p</fraction> @@ -44,9 +44,9 @@ <dimen name="more_keys_keyboard_key_horizontal_padding">6dp</dimen> <!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. --> <!-- popup_key_height x 1.2 --> - <dimen name="more_keys_keyboard_slide_allowance">15.6mm</dimen> + <dimen name="more_keys_keyboard_slide_allowance">98.3dp</dimen> <!-- popup_key_height x -1.0 --> - <dimen name="more_keys_keyboard_vertical_correction">-13.0mm</dimen> + <dimen name="more_keys_keyboard_vertical_correction">-81.9dp</dimen> <!-- left or right padding of label alignment --> <dimen name="key_label_horizontal_padding">6dp</dimen> @@ -61,19 +61,19 @@ <fraction name="key_uppercase_letter_ratio">26%</fraction> <fraction name="key_preview_text_ratio">50%</fraction> <fraction name="spacebar_text_ratio">32.14%</fraction> - <dimen name="key_preview_height">15.0mm</dimen> - <dimen name="key_preview_offset">0.1in</dimen> + <dimen name="key_preview_height">94.5dp</dimen> + <dimen name="key_preview_offset">16.0dp</dimen> - <dimen name="key_preview_offset_ics">0.05in</dimen> + <dimen name="key_preview_offset_ics">8.0dp</dimen> <!-- popup_key_height x -0.5 --> - <dimen name="more_keys_keyboard_vertical_correction_ics">-5mm</dimen> + <dimen name="more_keys_keyboard_vertical_correction_ics">-31.5dp</dimen> <dimen name="suggestions_strip_height">44dp</dimen> <dimen name="more_suggestions_row_height">44dp</dimen> <integer name="max_more_suggestions_row">6</integer> <fraction name="min_more_suggestions_width">90%</fraction> - <dimen name="suggestions_strip_padding">15.0mm</dimen> - <dimen name="suggestion_min_width">0.3in</dimen> + <dimen name="suggestions_strip_padding">94.5dp</dimen> + <dimen name="suggestion_min_width">48.0dp</dimen> <dimen name="suggestion_padding">12dp</dimen> <dimen name="suggestion_text_size">22dp</dimen> <dimen name="more_suggestions_hint_text_size">33dp</dimen> diff --git a/java/res/values-sw768dp-land/dimens.xml b/java/res/values-sw768dp-land/dimens.xml index 597ed5102..b95c858dc 100644 --- a/java/res/values-sw768dp-land/dimens.xml +++ b/java/res/values-sw768dp-land/dimens.xml @@ -41,7 +41,7 @@ <fraction name="key_bottom_gap_ics">3.690%p</fraction> <fraction name="key_horizontal_gap_ics">1.030%p</fraction> - <dimen name="popup_key_height">13.0mm</dimen> + <dimen name="popup_key_height">81.9dp</dimen> <!-- left or right padding of label alignment --> <dimen name="key_label_horizontal_padding">18dp</dimen> @@ -53,10 +53,10 @@ <fraction name="key_hint_label_ratio">28%</fraction> <fraction name="key_uppercase_letter_ratio">24%</fraction> <fraction name="spacebar_text_ratio">24.00%</fraction> - <dimen name="key_preview_height">17.0mm</dimen> + <dimen name="key_preview_height">107.1dp</dimen> - <dimen name="key_preview_offset_ics">0.05in</dimen> + <dimen name="key_preview_offset_ics">8.0dp</dimen> - <dimen name="suggestions_strip_padding">40.0mm</dimen> + <dimen name="suggestions_strip_padding">252.0dp</dimen> <fraction name="min_more_suggestions_width">50%</fraction> </resources> diff --git a/java/res/values-sw768dp/dimens.xml b/java/res/values-sw768dp/dimens.xml index a9f0c00aa..0a362fd68 100644 --- a/java/res/values-sw768dp/dimens.xml +++ b/java/res/values-sw768dp/dimens.xml @@ -41,14 +41,14 @@ <fraction name="key_bottom_gap_ics">3.312%p</fraction> <fraction name="key_horizontal_gap_ics">1.066%p</fraction> - <dimen name="popup_key_height">10.0mm</dimen> + <dimen name="popup_key_height">63.0dp</dimen> <dimen name="more_keys_keyboard_key_horizontal_padding">12dp</dimen> <!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. --> <!-- popup_key_height x 1.2 --> - <dimen name="more_keys_keyboard_slide_allowance">15.6mm</dimen> + <dimen name="more_keys_keyboard_slide_allowance">98.3dp</dimen> <!-- popup_key_height x -1.0 --> - <dimen name="more_keys_keyboard_vertical_correction">-13.0mm</dimen> + <dimen name="more_keys_keyboard_vertical_correction">-81.9dp</dimen> <!-- left or right padding of label alignment --> <dimen name="key_label_horizontal_padding">6dp</dimen> @@ -63,18 +63,18 @@ <fraction name="key_uppercase_letter_ratio">26%</fraction> <fraction name="key_preview_text_ratio">50%</fraction> <fraction name="spacebar_text_ratio">29.03%</fraction> - <dimen name="key_preview_height">15.0mm</dimen> - <dimen name="key_preview_offset">0.1in</dimen> + <dimen name="key_preview_height">94.5dp</dimen> + <dimen name="key_preview_offset">16.0dp</dimen> - <dimen name="key_preview_offset_ics">0.05in</dimen> + <dimen name="key_preview_offset_ics">8.0dp</dimen> <!-- popup_key_height x -0.5 --> - <dimen name="more_keys_keyboard_vertical_correction_ics">-5mm</dimen> + <dimen name="more_keys_keyboard_vertical_correction_ics">-31.5dp</dimen> <dimen name="suggestions_strip_height">44dp</dimen> <dimen name="more_suggestions_row_height">44dp</dimen> <integer name="max_more_suggestions_row">6</integer> <fraction name="min_more_suggestions_width">90%</fraction> - <dimen name="suggestions_strip_padding">15.0mm</dimen> + <dimen name="suggestions_strip_padding">94.5dp</dimen> <dimen name="suggestion_min_width">46dp</dimen> <dimen name="suggestion_padding">8dp</dimen> <dimen name="suggestion_text_size">22dp</dimen> diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml index e33f0ba8a..550f5acf7 100644 --- a/java/res/values/attrs.xml +++ b/java/res/values/attrs.xml @@ -224,6 +224,8 @@ <attr name="iconDisabledShortcutKey" format="reference" /> <attr name="iconPreviewTabKey" format="reference" /> <attr name="iconLanguageSwitchKey" format="reference" /> + <attr name="iconZwnjKey" format="reference" /> + <attr name="iconZwjKey" format="reference" /> </declare-styleable> <declare-styleable name="Keyboard_Key"> @@ -309,6 +311,8 @@ <enum name="iconSpaceKeyForNumberLayout" value="10" /> <enum name="iconShiftKeyShifted" value="11" /> <enum name="iconLanguageSwitchKey" value="14" /> + <enum name="iconZwnjKey" value="15" /> + <enum name="iconZwjKey" value="16" /> </attr> <!-- The icon for disabled key --> <attr name="keyIconDisabled" format="enum"> diff --git a/java/res/values/config.xml b/java/res/values/config.xml index 1aa0dffc9..f0b12e92b 100644 --- a/java/res/values/config.xml +++ b/java/res/values/config.xml @@ -54,9 +54,9 @@ <!-- Configuration for LatinKeyboardView --> - <dimen name="config_key_hysteresis_distance">0.05in</dimen> + <dimen name="config_key_hysteresis_distance">8.0dp</dimen> <integer name="config_touch_noise_threshold_time">40</integer> - <dimen name="config_touch_noise_threshold_distance">2.0mm</dimen> + <dimen name="config_touch_noise_threshold_distance">12.6dp</dimen> <bool name="config_sliding_key_input_enabled">true</bool> <integer name="config_key_repeat_start_timeout">400</integer> <integer name="config_key_repeat_interval">50</integer> diff --git a/java/res/values/dimens.xml b/java/res/values/dimens.xml index 9d64a618a..1889758b9 100644 --- a/java/res/values/dimens.xml +++ b/java/res/values/dimens.xml @@ -25,7 +25,7 @@ <fraction name="maxKeyboardHeight">50%p</fraction> <fraction name="minKeyboardHeight">-61.8%p</fraction> - <dimen name="popup_key_height">0.330in</dimen> + <dimen name="popup_key_height">52.8dp</dimen> <dimen name="more_keys_keyboard_horizontal_edges_padding">16dp</dimen> <dimen name="more_keys_keyboard_key_horizontal_padding">8dp</dimen> @@ -52,12 +52,10 @@ <!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. --> <!-- popup_key_height x 1.2 --> - <dimen name="more_keys_keyboard_slide_allowance">0.396in</dimen> + <dimen name="more_keys_keyboard_slide_allowance">63.36dp</dimen> <!-- popup_key_height x -1.0 --> - <dimen name="more_keys_keyboard_vertical_correction">-0.330in</dimen> - <!-- We use "inch", not "dip" because this value tries dealing with physical distance related - to user's finger. --> - <dimen name="keyboard_vertical_correction">0.0in</dimen> + <dimen name="more_keys_keyboard_vertical_correction">-52.8dp</dimen> + <dimen name="keyboard_vertical_correction">0.0dp</dimen> <fraction name="key_letter_ratio">55%</fraction> <fraction name="key_large_letter_ratio">65%</fraction> @@ -68,23 +66,23 @@ <fraction name="key_preview_text_ratio">82%</fraction> <fraction name="spacebar_text_ratio">33.735%</fraction> <dimen name="key_preview_height">80dp</dimen> - <dimen name="key_preview_offset">0.1in</dimen> + <dimen name="key_preview_offset">16.0dp</dimen> <dimen name="key_label_horizontal_padding">4dp</dimen> <dimen name="key_hint_letter_padding">1dp</dimen> <dimen name="key_popup_hint_letter_padding">2dp</dimen> <dimen name="key_uppercase_letter_padding">2dp</dimen> - <dimen name="key_preview_offset_ics">0.05in</dimen> + <dimen name="key_preview_offset_ics">8.0dp</dimen> <!-- popup_key_height x -0.5 --> - <dimen name="more_keys_keyboard_vertical_correction_ics">-0.165in</dimen> + <dimen name="more_keys_keyboard_vertical_correction_ics">-26.4dp</dimen> <dimen name="suggestions_strip_height">40dp</dimen> <dimen name="more_suggestions_key_horizontal_padding">12dp</dimen> <dimen name="more_suggestions_row_height">40dp</dimen> <dimen name="more_suggestions_bottom_gap">6dp</dimen> - <dimen name="more_suggestions_modal_tolerance">0.2in</dimen> - <dimen name="more_suggestions_slide_allowance">0.1in</dimen> + <dimen name="more_suggestions_modal_tolerance">32.0dp</dimen> + <dimen name="more_suggestions_slide_allowance">16.0dp</dimen> <integer name="max_more_suggestions_row">6</integer> <fraction name="min_more_suggestions_width">90%</fraction> <fraction name="more_suggestions_info_ratio">18%</fraction> diff --git a/java/res/values/keyboard-icons-black.xml b/java/res/values/keyboard-icons-black.xml index 44fc2b9c1..1ff597a49 100644 --- a/java/res/values/keyboard-icons-black.xml +++ b/java/res/values/keyboard-icons-black.xml @@ -36,5 +36,8 @@ <item name="iconPreviewTabKey">@drawable/sym_keyboard_feedback_tab</item> <!-- TODO: Needs dedicated black theme globe icon --> <item name="iconLanguageSwitchKey">@drawable/sym_keyboard_language_switch</item> + <!-- TODO: Needs dedicated black theme ZWNJ and ZWJ icons --> + <item name="iconZwnjKey">@drawable/sym_keyboard_zwnj_holo</item> + <item name="iconZwjKey">@drawable/sym_keyboard_zwj_holo</item> </style> </resources> diff --git a/java/res/values/keyboard-icons-ics.xml b/java/res/values/keyboard-icons-ics.xml index 5fba0253d..0774d57ac 100644 --- a/java/res/values/keyboard-icons-ics.xml +++ b/java/res/values/keyboard-icons-ics.xml @@ -34,5 +34,7 @@ <item name="iconDisabledShortcutKey">@drawable/sym_keyboard_voice_off_holo</item> <item name="iconPreviewTabKey">@drawable/sym_keyboard_feedback_tab</item> <item name="iconLanguageSwitchKey">@drawable/sym_keyboard_language_switch</item> + <item name="iconZwnjKey">@drawable/sym_keyboard_zwnj_holo</item> + <item name="iconZwjKey">@drawable/sym_keyboard_zwj_holo</item> </style> </resources> diff --git a/java/res/values/keyboard-icons-white.xml b/java/res/values/keyboard-icons-white.xml index 837b1a37a..5798786f8 100644 --- a/java/res/values/keyboard-icons-white.xml +++ b/java/res/values/keyboard-icons-white.xml @@ -32,5 +32,8 @@ <item name="iconDisabledShortcutKey">@drawable/sym_keyboard_voice_off_holo</item> <item name="iconPreviewTabKey">@drawable/sym_keyboard_feedback_tab</item> <item name="iconLanguageSwitchKey">@drawable/sym_keyboard_language_switch</item> + <!-- TODO: Needs dedicated black theme ZWNJ and ZWJ icons --> + <item name="iconZwnjKey">@drawable/sym_keyboard_zwnj_holo</item> + <item name="iconZwjKey">@drawable/sym_keyboard_zwj_holo</item> </style> </resources> diff --git a/java/res/xml-sw600dp/key_styles_common.xml b/java/res/xml-sw600dp/key_styles_common.xml index a263acd9b..77c0efd22 100644 --- a/java/res/xml-sw600dp/key_styles_common.xml +++ b/java/res/xml-sw600dp/key_styles_common.xml @@ -78,11 +78,15 @@ latin:styleName="spaceKeyStyle" latin:code="@integer/key_space" latin:keyActionFlags="noKeyPreview" /> + <!-- U+200C: ZERO WIDTH NON-JOINER + U+200D: ZERO WIDTH JOINER --> <key-style latin:styleName="zwnjKeyStyle" - latin:keyLabel="‌" - latin:moreKeys="‍" - latin:keyLabelFlags="hasPopupHint" /> + latin:code="0x200C" + latin:keyIcon="iconZwnjKey" + latin:moreKeys="\@icon/zwjKey|‍" + latin:keyLabelFlags="hasPopupHint" + latin:keyActionFlags="noKeyPreview" /> <key-style latin:styleName="smileyKeyStyle" latin:keyLabel=":-)" diff --git a/java/res/xml-sw600dp/rowkeys_thai3.xml b/java/res/xml-sw600dp/rowkeys_thai3.xml index 529d7bff0..abd67631c 100644 --- a/java/res/xml-sw600dp/rowkeys_thai3.xml +++ b/java/res/xml-sw600dp/rowkeys_thai3.xml @@ -82,13 +82,13 @@ latin:keyLabel="่" /> <!-- U+0E32: "า" THAI CHARACTER SARA AA --> <Key - latin:keyLabel="ๆ" /> + latin:keyLabel="า" /> <!-- U+0E2A: "ส" THAI CHARACTER SO SUA --> <Key - latin:keyLabel="ๆ" /> + latin:keyLabel="ส" /> <!-- U+0E27: "ว" THAI CHARACTER WO WAEN --> <Key - latin:keyLabel="ฯ" /> + latin:keyLabel="ว" /> <!-- U+0E07: "ง" THAI CHARACTER NGO NGU --> <Key latin:keyLabel="ง" /> diff --git a/java/res/xml-sw768dp/key_styles_common.xml b/java/res/xml-sw768dp/key_styles_common.xml index fade151ed..f4a1a4ea5 100644 --- a/java/res/xml-sw768dp/key_styles_common.xml +++ b/java/res/xml-sw768dp/key_styles_common.xml @@ -77,11 +77,15 @@ latin:styleName="spaceKeyStyle" latin:code="@integer/key_space" latin:keyActionFlags="noKeyPreview" /> + <!-- U+200C: ZERO WIDTH NON-JOINER + U+200D: ZERO WIDTH JOINER --> <key-style latin:styleName="zwnjKeyStyle" - latin:keyLabel="‌" - latin:moreKeys="‍" - latin:keyLabelFlags="hasPopupHint" /> + latin:code="0x200C" + latin:keyIcon="iconZwnjKey" + latin:moreKeys="\@icon/zwjKey|‍" + latin:keyLabelFlags="hasPopupHint" + latin:keyActionFlags="noKeyPreview" /> <key-style latin:styleName="smileyKeyStyle" latin:keyLabel=":-)" diff --git a/java/res/xml/key_styles_common.xml b/java/res/xml/key_styles_common.xml index 087b8952f..66d8d4d9d 100644 --- a/java/res/xml/key_styles_common.xml +++ b/java/res/xml/key_styles_common.xml @@ -107,11 +107,15 @@ latin:code="@integer/key_space" latin:keyActionFlags="noKeyPreview|enableLongPress" latin:backgroundType="functional" /> + <!-- U+200C: ZERO WIDTH NON-JOINER + U+200D: ZERO WIDTH JOINER --> <key-style latin:styleName="zwnjKeyStyle" - latin:keyLabel="‌" - latin:moreKeys="‍" + latin:code="0x200C" + latin:keyIcon="iconZwnjKey" + latin:moreKeys="\@icon/zwjKey|‍" latin:keyLabelFlags="hasPopupHint" + latin:keyActionFlags="noKeyPreview" latin:backgroundType="functional" /> <key-style latin:styleName="shortcutKeyStyle" @@ -129,8 +133,6 @@ latin:keyActionFlags="noKeyPreview|altCodeWhileTyping|enableLongPress" latin:altCode="@integer/key_space" latin:backgroundType="functional" /> - <!-- U+200C: "" ZERO WIDTH NON-JOINER - U+200D: "" ZERO WIDTH JOINER --> <key-style latin:styleName="tabKeyStyle" latin:code="@integer/key_tab" diff --git a/java/res/xml/rowkeys_thai2.xml b/java/res/xml/rowkeys_thai2.xml index a5db66519..02ea6c5f8 100644 --- a/java/res/xml/rowkeys_thai2.xml +++ b/java/res/xml/rowkeys_thai2.xml @@ -46,9 +46,11 @@ <!-- U+0E0B: "ซ" THAI CHARACTER SO SO --> <Key latin:keyLabel="ซ" /> - <!-- U+0E3F: "฿" THAI CURRENCY SYMBOL BAHT --> + <!-- U+0E3F: "฿" THAI CURRENCY SYMBOL BAHT + U+0E45: "ๅ" THAI CHARACTER LAKKHANGYAO --> <Key - latin:keyLabel="฿" /> + latin:keyLabel="฿" + latin:moreKeys="ๅ" /> <!-- U+0E46: "ๆ" THAI CHARACTER MAIYAMOK U+0E2F: "ฯ" THAI CHARACTER PAIYANNOI --> <Key diff --git a/java/src/com/android/inputmethod/keyboard/Keyboard.java b/java/src/com/android/inputmethod/keyboard/Keyboard.java index 07b9c1e8c..962379016 100644 --- a/java/src/com/android/inputmethod/keyboard/Keyboard.java +++ b/java/src/com/android/inputmethod/keyboard/Keyboard.java @@ -394,7 +394,7 @@ public class Keyboard { * >Row row_attributes*< * >!-- Row Content --< * >Key key_attributes* /< - * >Spacer horizontalGap="0.2in" /< + * >Spacer horizontalGap="32.0dp" /< * >include keyboardLayout="@xml/other_keys"< * ... * >/Row< diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java index 9b9c86179..ded89b1b8 100644 --- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java +++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java @@ -30,7 +30,7 @@ public class KeyboardIconsSet { // The value should be aligned with the enum value of Key.keyIcon. public static final int ICON_UNDEFINED = 0; - private static final int NUM_ICONS = 14; + private static final int NUM_ICONS = 16; private final Drawable[] mIcons = new Drawable[NUM_ICONS + 1]; @@ -58,6 +58,8 @@ public class KeyboardIconsSet { addIconIdMap(12, "disabledShortcurKey", R.styleable.Keyboard_iconDisabledShortcutKey); addIconIdMap(13, "previewTabKey", R.styleable.Keyboard_iconPreviewTabKey); addIconIdMap(14, "languageSwitchKey", R.styleable.Keyboard_iconLanguageSwitchKey); + addIconIdMap(15, "zwnjKey", R.styleable.Keyboard_iconZwnjKey); + addIconIdMap(16, "zwjKey", R.styleable.Keyboard_iconZwjKey); } private static void addIconIdMap(int iconId, String name, int attrId) { diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index f5fe8663e..7272006a2 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -529,7 +529,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar resetContactsDictionary(oldContactsDictionary); mUserHistoryDictionary - = new UserHistoryDictionary(this, this, localeStr, Suggest.DIC_USER_HISTORY); + = new UserHistoryDictionary(this, localeStr, Suggest.DIC_USER_HISTORY); mSuggest.setUserHistoryDictionary(mUserHistoryDictionary); LocaleUtils.setSystemLocale(res, savedLocale); @@ -2009,8 +2009,14 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } else { prevWord = null; } + final String secondWord; + if (mWordComposer.isAutoCapitalized() && !mWordComposer.isMostlyCaps()) { + secondWord = suggestion.toString().toLowerCase(mSubtypeSwitcher.getInputLocale()); + } else { + secondWord = suggestion.toString(); + } mUserHistoryDictionary.addToUserHistory(null == prevWord ? null : prevWord.toString(), - suggestion.toString()); + secondWord); } } @@ -2251,10 +2257,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar mFeedbackManager.vibrate(mKeyboardSwitcher.getKeyboardView()); } - public boolean isAutoCapitalized() { - return mWordComposer.isAutoCapitalized(); - } - private void updateCorrectionMode() { // TODO: cleanup messy flags final boolean shouldAutoCorrect = mSettingsValues.mAutoCorrectEnabled diff --git a/java/src/com/android/inputmethod/latin/UserHistoryDictionary.java b/java/src/com/android/inputmethod/latin/UserHistoryDictionary.java index 4e798460c..db2cdf967 100644 --- a/java/src/com/android/inputmethod/latin/UserHistoryDictionary.java +++ b/java/src/com/android/inputmethod/latin/UserHistoryDictionary.java @@ -75,8 +75,6 @@ public class UserHistoryDictionary extends ExpandableDictionary { private static final String FREQ_COLUMN_PAIR_ID = "pair_id"; private static final String FREQ_COLUMN_FREQUENCY = "freq"; - private final LatinIME mIme; - /** Locale for which this auto dictionary is storing words */ private String mLocale; @@ -139,9 +137,8 @@ public class UserHistoryDictionary extends ExpandableDictionary { sDeleteHistoryBigrams = deleteHistoryBigram; } - public UserHistoryDictionary(Context context, LatinIME ime, String locale, int dicTypeId) { + public UserHistoryDictionary(final Context context, final String locale, final int dicTypeId) { super(context, dicTypeId); - mIme = ime; mLocale = locale; if (sOpenHelper == null) { sOpenHelper = new DatabaseHelper(getContext()); @@ -179,10 +176,6 @@ public class UserHistoryDictionary extends ExpandableDictionary { * The second word may not be null (a NullPointerException would be thrown). */ public int addToUserHistory(final String word1, String word2) { - // remove caps if second word is autocapitalized - if (mIme != null && mIme.isAutoCapitalized()) { - word2 = Character.toLowerCase(word2.charAt(0)) + word2.substring(1); - } super.addWord(word2, FREQUENCY_FOR_TYPED); // Do not insert a word as a bigram of itself if (word2.equals(word1)) { |