aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMenny Even Danan <menny@evendanan.net>2020-07-14 18:53:15 +0000
committerGitHub <noreply@github.com>2020-07-14 18:53:15 +0000
commitb13351d7eb5b0663da0826a7b727ec69c37bd385 (patch)
tree7170e482362aeadfe29b75a2c41736ba3bf63302
parent96df430f3880b6103f278c89fe0efe9dd2a79048 (diff)
parent0bd5225b699432204de838411327266790c16962 (diff)
downloadAnySoftKeyboard-b13351d7eb5b0663da0826a7b727ec69c37bd385.tar.gz
AnySoftKeyboard-b13351d7eb5b0663da0826a7b727ec69c37bd385.tar.bz2
Merge pull request #2378 from ArenaL5/debugandlayouts
Fix adb helper script; tweaks to layouts; other commits ported from #1921
-rw-r--r--README.md6
-rw-r--r--ime/app/src/main/java/com/anysoftkeyboard/dictionaries/Suggest.java2
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_alt.xml74
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_alt_with_mic.xml57
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone.xml38
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone_with_mic.xml40
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_ng.xml47
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_old.xml16
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_regular.xml46
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_regular_with_voice.xml44
-rw-r--r--ime/app/src/main/res/xml/ext_kbd_bottom_row_simple.xml69
-rwxr-xr-xscripts/adb.sh6
12 files changed, 177 insertions, 268 deletions
diff --git a/README.md b/README.md
index 4ccdd59fb..bc81f2f08 100644
--- a/README.md
+++ b/README.md
@@ -13,12 +13,14 @@ Sign up to beta-channel [here](https://play.google.com/apps/testing/com.menny.an
## Features
* All kinds of keyboards:
- * supporting lots of languages via external packages. E.g., English (QWERTY, Dvorak, AZERTY, Colemak, and Workman), Hebrew, Russian, Arabic, Lao, Bulgarian, Swiss, German, Swedish, Spanish, Catalan, Belarusian, Portuguese, Ukrainian and [many more](addons/languages/PACKS.md).
+ * Supporting lots of languages via external packages. E.g., English (QWERTY, Dvorak, AZERTY, Colemak, and Workman), Hebrew, Russian, Arabic, Lao, Bulgarian, Swiss, German, Swedish, Spanish, Catalan, Belarusian, Portuguese, Ukrainian and [many more](addons/languages/PACKS.md).
* Special keyboard for text fields which require only numbers.
* Special keyboard for text fields which require email or URI addresses.
* Physical keyboard is supported as-well.
- * Auto capitalization.
+ * Auto-capitalization.
* Word suggestions, and Next-Word suggestions.
+ * Automatic correction can be customized, or turned off entirely.
+ * External packages include word lists that can be freely mixed. You can use a French layout and get suggestions for German and Russian!
* Gesture typing.
* Dark mode, automatic (based on system) and manual.
* Power saving mode, disables various features to save battery.
diff --git a/ime/app/src/main/java/com/anysoftkeyboard/dictionaries/Suggest.java b/ime/app/src/main/java/com/anysoftkeyboard/dictionaries/Suggest.java
index 1bfe9f2c4..d20b7bb85 100644
--- a/ime/app/src/main/java/com/anysoftkeyboard/dictionaries/Suggest.java
+++ b/ime/app/src/main/java/com/anysoftkeyboard/dictionaries/Suggest.java
@@ -221,7 +221,7 @@ public class Suggest {
// only adding VALID words
if (isValidWord(previousWord)) {
- final String currentWord = previousWord.toString().toLowerCase(mLocale);
+ final String currentWord = previousWord.toString();
mSuggestionsProvider.getNextWords(currentWord, mNextSuggestions, mPrefMaxSuggestions);
if (BuildConfig.DEBUG) {
Logger.d(
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt.xml
index b545c044c..89dd3c381 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt.xml
@@ -7,62 +7,64 @@
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_normal" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'" ask:hintLabel="; : -"/>
- <Key android:keyWidth="45%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ android:keyEdgeFlags="left"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'"/>
+ <Key android:keyWidth="45%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'" ask:hintLabel="; : -"/>
- <Key android:keyWidth="45%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ android:keyEdgeFlags="left"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'"/>
+ <Key android:keyWidth="45%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_url" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes=":" android:popupCharacters="\u002C;-" ask:hintLabel=", ; -"/>
- <Key ask:isFunctional="true" android:codes="/" android:popupCharacters="~_+\u003D$%\u0026\@"
- ask:hintLabel="~ _ +"/>
- <Key android:keyWidth="25%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_domain" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ android:keyEdgeFlags="left"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes=":" android:popupCharacters=",;-"/>
+ <Key ask:isFunctional="true" android:codes="/" android:popupCharacters="~_+=$%&amp;\@"/>
+ <Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'" ask:hintLabel="; : -"/>
- <Key ask:isFunctional="true" android:codes="\@" android:popupCharacters="~_+\u003D$%\u0026"
- ask:hintLabel="~ _ +"/>
- <Key android:keyWidth="25%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_domain" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ android:keyEdgeFlags="left"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'"/>
+ <Key ask:isFunctional="true" android:codes="\@" android:popupCharacters="~_+=$%&amp;"/>
+ <Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'" ask:hintLabel="; : -"/>
- <Key android:keyWidth="45%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ android:keyEdgeFlags="left"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-'"/>
+ <Key android:keyWidth="45%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
</Keyboard>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt_with_mic.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt_with_mic.xml
index b0b8b3132..96ccba315 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt_with_mic.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_alt_with_mic.xml
@@ -7,53 +7,54 @@
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_normal" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
+ android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_voice_input"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-" ask:hintLabel="; : -"/>
- <Key android:keyWidth="35%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-"/>
+ <Key android:keyWidth="35%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
+ android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_voice_input"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-" ask:hintLabel="; : -"/>
- <Key android:keyWidth="35%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:-"/>
+ <Key android:keyWidth="35%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_url" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
+ android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_voice_input"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes=":" android:popupCharacters="/~_-+\u003D\u0026\@\u002C;"
- ask:hintLabel="/ ~ _"/>
- <Key android:keyWidth="25%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_domain" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes=":" android:popupCharacters="/~_-+=&amp;\@,;\'"/>
+ <Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" " android:keyEdgeFlags="left"/>
+ android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_voice_input"/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="\@" android:popupCharacters="/~_-+\u003D\u0026\u002C:;"
- ask:hintLabel="/ ~ _"/>
- <Key android:keyWidth="25%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_domain" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u0026\u00a1&#191;&#11822;&#8253;" ask:hintLabel="\? !"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
+ <Key ask:isFunctional="true" android:codes="\@" android:popupCharacters="/~_-+=&amp;,:;"/>
+ <Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!&amp;¡¿⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
</Keyboard>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone.xml
index 9b3169c61..1b7dad741 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone.xml
@@ -8,35 +8,27 @@
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
-
<Key android:keyWidth="40%p" android:codes="@integer/key_code_space"/>
-
<Key android:keyWidth="10%p" android:codes="46" android:keyLabel="."/>
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel=","
- android:popupCharacters=".!\?\u00bf\u00a1'&#34;&#191;&#11822;&#8253;"/>
-
+ android:popupCharacters=".!\?¿¡'&quot;⸮‽⸘"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
-
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space"/>
-
<Key android:keyWidth="10%p" android:codes="46" android:keyLabel="."/>
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel=","
- android:popupCharacters=".!\?\u00bf\u00a1'&#34;&#191;&#11822;&#8253;"/>
-
+ android:popupCharacters=".!\?¿¡'&quot;¿⸮‽⸘"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
@@ -45,54 +37,40 @@
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key android:keyWidth="10%p" android:codes="47" android:keyLabel="/"/>
-
<Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
-
- <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="\?!&#191;&#11822;&#8253;@:,-_"/>
-
+ <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="\?!¿⸮‽⸘@:,-_\';"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain"/>
-
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key android:keyWidth="10%p" android:codes="64" android:keyLabel="\@"/>
-
<Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
-
- <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="/\?!&#191;&#11822;&#8253;:,-_"/>
-
+ <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="/\?!¿⸮‽⸘:,-_"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain"/>
-
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
-
<Key android:keyWidth="40%p" android:codes="@integer/key_code_space"/>
-
<Key android:keyWidth="10%p" android:codes="46" android:keyLabel="."/>
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel=","
- android:popupCharacters=".!\?\u00bf\u00a1'&#34;&#11822;&#8253;"/>
-
+ android:popupCharacters=".!\?¿¡'&quot;⸮‽⸘"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone_with_mic.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone_with_mic.xml
index e89b3546d..dab14a3a4 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone_with_mic.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_iphone_with_mic.xml
@@ -8,37 +8,28 @@
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_voice_input"/>
-
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space"/>
-
<Key android:keyWidth="10%p" android:codes="46" android:keyLabel="."/>
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel=","
- android:popupCharacters=".!\?\u00bf\u00a1&#11822;&#8253;'&#34;"/>
-
+ android:popupCharacters=".!\?¿¡⸮‽⸘'&quot;"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
-
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space"/>
-
<Key android:keyWidth="10%p" android:codes="46" android:keyLabel="."/>
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel=","
- android:popupCharacters=".!\?\u00bf\u00a1&#11822;&#8253;'&#34;"/>
-
+ android:popupCharacters=".!\?¿¡⸮‽⸘'&quot;"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
@@ -47,56 +38,41 @@
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key android:keyWidth="10%p" android:codes="47" android:keyLabel="/"/>
-
<Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
-
- <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="\?!&#11822;&#8253;@:,-_"/>
-
+ <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="\?!⸮‽⸘@:,-_\';"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain"/>
-
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key android:keyWidth="10%p" android:codes="64" android:keyLabel="\@"/>
-
<Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
-
- <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="/\?!&#11822;&#8253;:,-_"/>
-
+ <Key android:keyWidth="10%p" android:codes="46" android:keyLabel="." android:popupCharacters="/\?!⸮‽⸘:,-_"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain"/>
-
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change"
ask:keyDynamicEmblem="text" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:keyDynamicEmblem="icon" ask:longPressCode="@integer/key_code_mode_alphabet_popup"/>
-
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_voice_input"/>
-
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space"/>
-
<Key android:keyWidth="10%p" android:codes="46" android:keyLabel="."/>
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel=","
- android:popupCharacters=".!\?\u00bf\u00a1&#11822;&#8253;'&#34;"/>
-
+ android:popupCharacters=".!\?¿¡⸮‽⸘'&quot;"/>
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_enter"
android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_ng.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_ng.xml
index e45cc4c1a..f4c810747 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_ng.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_ng.xml
@@ -9,32 +9,23 @@
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
-
- <Key ask:isFunctional="true" android:codes="44" ask:shiftedCodes="46" android:popupCharacters=".:;-_()\u00b7\u2026\u2014"/>
-
+ <Key ask:isFunctional="true" android:codes="44" ask:shiftedCodes="46" android:popupCharacters=".:;-_()·…—"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
<Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33"
- android:popupCharacters="!@/\u0026\u00a1\u00bf"/>
-
- <Key ask:isFunctional="true" android:codes="39" ask:shiftedCodes="34" android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019\u00ab\u00bb"/>
-
+ android:popupCharacters="!\@/&amp;¡¿"/>
+ <Key ask:isFunctional="true" android:codes="39" ask:shiftedCodes="34" android:popupCharacters="&quot;“„”‘’«»"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" />
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom" android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
-
- <Key ask:isFunctional="true" android:codes="44" ask:shiftedCodes="46" android:popupCharacters=".:;-_()\u00b7\u2026\u2014"/>
-
+ <Key ask:isFunctional="true" android:codes="44" ask:shiftedCodes="46" android:popupCharacters=".:;-_()·…—"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
- <Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33" android:popupCharacters="!@/\u0026\u00a1\u00bf"/>
-
- <Key ask:isFunctional="true" android:codes="39" ask:shiftedCodes="34" android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019\u00ab\u00bb"/>
-
+ <Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33" android:popupCharacters="!\@/&amp;¡¿"/>
+ <Key ask:isFunctional="true" android:codes="39" ask:shiftedCodes="34" android:popupCharacters="&quot;“„”‘’«»"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" />
</Row>
@@ -43,15 +34,11 @@
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
-
- <Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",-_"/>
-
+ <Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",-_\';"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="20%p"/>
-
<Key ask:isFunctional="true" android:codes="58" android:keyLabel=":"/>
- <Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33" android:popupCharacters="!/@\u0026\u00bf\u00a1"/>
+ <Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33" android:popupCharacters="!/\@&amp;¿¡"/>
<Key ask:isFunctional="true" android:codes="47" android:keyLabel="/"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings"/>
</Row>
@@ -60,31 +47,23 @@
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
-
<Key ask:isFunctional="true" android:codes="64" android:keyLabel="\@"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="20%p"/>
-
<Key ask:isFunctional="true" android:codes="95" android:keyLabel="_"/>
<Key ask:isFunctional="true" android:codes="46" ask:shiftedCodes="46" android:popupCharacters=",()'-_"/>
<Key ask:isFunctional="true" android:codes="45" android:keyLabel="-"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" />
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom" android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:keyDynamicEmblem="icon"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"/>
-
- <Key ask:isFunctional="true" android:codes="44" ask:shiftedCodes="46" android:popupCharacters=".:;-_()\u00b7\u2026\u2014"/>
-
+ <Key ask:isFunctional="true" android:codes="44" ask:shiftedCodes="46" android:popupCharacters=".:;-_()·…—"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
- <Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33" android:popupCharacters="!@/\u0026\u00a1\u00bf"/>
-
- <Key ask:isFunctional="true" android:codes="39" ask:shiftedCodes="34" android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019\u00ab\u00bb"/>
-
+ <Key ask:isFunctional="true" android:codes="63" ask:shiftedCodes="33" android:popupCharacters="!\@/&amp;¡¿"/>
+ <Key ask:isFunctional="true" android:codes="39" ask:shiftedCodes="34" android:popupCharacters="&quot;“„”‘’«»"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" />
</Row>
</Keyboard>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_old.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_old.xml
index 04c6cc403..9816713f1 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_old.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_old.xml
@@ -2,7 +2,7 @@
<Keyboard
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:ask="http://schemas.android.com/apk/res-auto">
<Row android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height" android:rowEdgeFlags="bottom" android:keyboardMode="@integer/keyboard_mode_normal">
- <Key android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change" android:keyLabel="123" android:keyEdgeFlags="left" ask:isFunctional="true" />
+ <Key android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left" ask:isFunctional="true" />
<Key android:codes="63" ask:isFunctional="true" ask:shiftedCodes="33" />
<Key android:codes="@integer/key_code_mode_alphabet" ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:isFunctional="true" ask:keyDynamicEmblem="icon" ask:showInLayout="if_applicable" />
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space" ask:isFunctional="true" />
@@ -10,8 +10,9 @@
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel="," ask:isFunctional="true"/>
<Key android:keyWidth="15%p" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" ask:isFunctional="true" />
</Row>
+
<Row android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height" android:rowEdgeFlags="bottom" android:keyboardMode="@integer/keyboard_mode_im">
- <Key android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change" android:keyLabel="123" android:keyEdgeFlags="left" ask:isFunctional="true" />
+ <Key android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left" ask:isFunctional="true" />
<Key android:codes="63" ask:isFunctional="true" ask:shiftedCodes="33" />
<Key android:codes="@integer/key_code_mode_alphabet" ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:isFunctional="true" ask:keyDynamicEmblem="icon" ask:showInLayout="if_applicable" />
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space" ask:isFunctional="true" />
@@ -19,8 +20,9 @@
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel="," ask:isFunctional="true"/>
<Key android:keyWidth="15%p" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" ask:isFunctional="true" />
</Row>
+
<Row android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height" android:rowEdgeFlags="bottom" android:keyboardMode="@integer/keyboard_mode_url">
- <Key android:codes="@integer/key_code_keyboard_mode_change" android:keyLabel="123" android:keyEdgeFlags="left" ask:isFunctional="true" />
+ <Key android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left" ask:isFunctional="true" />
<Key android:codes="63" ask:isFunctional="true" ask:shiftedCodes="33" />
<Key android:codes="@integer/key_code_domain" ask:isFunctional="true" />
<Key android:codes="@integer/key_code_mode_alphabet" ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:isFunctional="true" ask:keyDynamicEmblem="icon" ask:showInLayout="if_applicable" />
@@ -29,19 +31,21 @@
<Key android:keyWidth="10%p" android:codes="44" android:keyLabel="," ask:isFunctional="true"/>
<Key android:keyWidth="15%p" android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" ask:isFunctional="true" />
</Row>
+
<Row android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height" android:rowEdgeFlags="bottom" android:keyboardMode="@integer/keyboard_mode_email">
- <Key android:codes="@integer/key_code_keyboard_mode_change" android:keyLabel="123" android:keyEdgeFlags="left" ask:isFunctional="true" />
+ <Key android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left" ask:isFunctional="true" />
<Key android:codes="63" ask:isFunctional="true" ask:shiftedCodes="33" />
<Key android:codes="@integer/key_code_domain" ask:isFunctional="true" />
<Key android:codes="@integer/key_code_mode_alphabet" ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:isFunctional="true" ask:keyDynamicEmblem="icon" ask:showInLayout="if_applicable" />
<Key android:keyWidth="20%p" android:codes="@integer/key_code_space" ask:isFunctional="true" />
<Key android:codes="46" android:keyLabel="." ask:isFunctional="true"/>
- <Key android:codes="44" android:keyLabel="," ask:isFunctional="true"/>
+ <Key android:codes="44" android:keyLabel="," ask:isFunctional="true"/>
<Key android:codes="64" android:keyLabel="\@" ask:isFunctional="true" />
<Key android:codes="@integer/key_code_enter" android:keyEdgeFlags="right" ask:longPressCode="@integer/key_code_settings" ask:isFunctional="true" />
</Row>
+
<Row android:keyWidth="10%p" android:keyHeight="@integer/key_normal_height" android:rowEdgeFlags="bottom" android:keyboardMode="@integer/keyboard_mode_password">">
- <Key android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change" android:keyLabel="123" android:keyEdgeFlags="left" ask:isFunctional="true" />
+ <Key android:keyWidth="15%p" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left" ask:isFunctional="true" />
<Key android:codes="63" ask:isFunctional="true" ask:shiftedCodes="33" />
<Key android:codes="@integer/key_code_mode_alphabet" ask:longPressCode="@integer/key_code_mode_alphabet_popup" ask:isFunctional="true" ask:keyDynamicEmblem="icon" ask:showInLayout="if_applicable" />
<Key android:keyWidth="30%p" android:codes="@integer/key_code_space" ask:isFunctional="true" />
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular.xml
index 97214e218..8af8251a9 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular.xml
@@ -8,37 +8,30 @@
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"
android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="44" android:keyLabel="," android:popupCharacters="()"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="."
- android:popupCharacters=";:-\u2014_\u00b7\u2026"/>
+ android:popupCharacters=";:-—_·…"/>
<Key ask:isFunctional="true" android:codes="39" android:keyLabel="\'" ask:shiftedCodes="34"
- android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019"/>
-
+ android:popupCharacters="&quot;“„”‘’«»"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"
android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="44" android:keyLabel="," android:popupCharacters="()"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="."
- android:popupCharacters=";:-\u2014_\u00b7\u2026"/>
+ android:popupCharacters=";:-—_·…"/>
<Key ask:isFunctional="true" android:codes="39" android:keyLabel="\'" ask:shiftedCodes="34"
- android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019"/>
-
+ android:popupCharacters="&quot;“„”‘’"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
@@ -46,51 +39,40 @@
<Row android:keyboardMode="@integer/keyboard_mode_url" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain" android:keyEdgeFlags="left"/>
-
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="58" android:keyLabel=":"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
- <Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",-_"/>
+ <Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",-_\';"/>
<Key ask:isFunctional="true" android:codes="47" android:keyLabel="/"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:codes="64" android:keyLabel="\@"/>
<Key ask:isFunctional="true" android:codes="95" android:keyLabel="_"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",()'-_"/>
<Key ask:isFunctional="true" android:codes="45" android:keyLabel="-"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"
android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="44" android:keyLabel="," android:popupCharacters="()"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="."
- android:popupCharacters=";:-\u2014_\u00b7\u2026"/>
+ android:popupCharacters=";:-—_·…"/>
<Key ask:isFunctional="true" android:codes="39" android:keyLabel="\'" ask:shiftedCodes="34"
- android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019"/>
-
+ android:popupCharacters="&quot;“„”‘’"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular_with_voice.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular_with_voice.xml
index d8d3d9f24..1fd2e07fe 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular_with_voice.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_regular_with_voice.xml
@@ -9,38 +9,32 @@
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"
android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_voice_input"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="44" android:keyLabel="," android:popupCharacters="()"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="25%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="."
- android:popupCharacters=";:-\u2014_\u00b7\u2026"/>
+ android:popupCharacters=";:-—_·…"/>
<Key ask:isFunctional="true" android:codes="39" android:keyLabel="\'" ask:shiftedCodes="34"
- android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019"/>
-
+ android:popupCharacters="&quot;“„”‘’«»"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"
android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_voice_input"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="44" android:keyLabel="," android:popupCharacters="()"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="25%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="."
- android:popupCharacters=";:-\u2014_\u00b7\u2026"/>
+ android:popupCharacters=";:-—_·…"/>
<Key ask:isFunctional="true" android:codes="39" android:keyLabel="\'" ask:shiftedCodes="34"
- android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019"/>
-
+ android:popupCharacters="&quot;“„”‘’"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
@@ -49,51 +43,41 @@
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="58" android:keyLabel=":"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
- <Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",-_"/>
+ <Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",-_\';"/>
<Key ask:isFunctional="true" android:codes="47" android:keyLabel="/"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="15%p" android:codes="@integer/key_code_domain" android:keyEdgeFlags="left"/>
-
<Key ask:isFunctional="true" android:codes="64" android:keyLabel="\@"/>
<Key ask:isFunctional="true" android:codes="95" android:keyLabel="_"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="30%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="." android:popupCharacters=",()'-_"/>
<Key ask:isFunctional="true" android:codes="45" android:keyLabel="-"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
+
<Row android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom" android:keyWidth="10%p"
android:keyHeight="@integer/key_normal_height">
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_quick_text" ask:longPressCode="@integer/key_code_quick_text_popup"
android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:keyWidth="10%p" android:codes="@integer/key_code_voice_input"/>
-
<Key ask:isFunctional="true" android:codes="63" android:keyLabel="\?" ask:shiftedCodes="33"
- android:popupCharacters="!/@\u0026\u00bf\u00a1&#11822;&#8253;"/>
+ android:popupCharacters="!/\@&amp;¿¡⸮‽"/>
<Key ask:isFunctional="true" android:codes="44" android:keyLabel="," android:popupCharacters="()"/>
-
<Key ask:isFunctional="true" android:codes="@integer/key_code_space" android:keyWidth="25%p"/>
-
<Key ask:isFunctional="true" android:codes="46" android:keyLabel="."
- android:popupCharacters=";:-\u2014_\u00b7\u2026"/>
+ android:popupCharacters=";:-—_·…"/>
<Key ask:isFunctional="true" android:codes="39" android:keyLabel="\'" ask:shiftedCodes="34"
- android:popupCharacters="&#34;\u201c\u201e\u201d\u2018\u2019"/>
-
+ android:popupCharacters="&quot;“„”‘’"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_enter" android:keyWidth="15%p" android:keyEdgeFlags="right"
ask:longPressCode="@integer/key_code_settings"/>
</Row>
diff --git a/ime/app/src/main/res/xml/ext_kbd_bottom_row_simple.xml b/ime/app/src/main/res/xml/ext_kbd_bottom_row_simple.xml
index b8ec357d5..dfa3c08fa 100644
--- a/ime/app/src/main/res/xml/ext_kbd_bottom_row_simple.xml
+++ b/ime/app/src/main/res/xml/ext_kbd_bottom_row_simple.xml
@@ -7,62 +7,59 @@
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_normal" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
- ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-'\u0022" ask:hintLabel="; : -"/>
- <Key android:keyWidth="45%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u00bf\u00a1&#11822;&#8253;" ask:hintLabel="\? !"/>
+ ask:longPressCode="@integer/key_code_cancel"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-\'&quot;"/>
+ <Key android:keyWidth="45%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!¿¡⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_im" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
- ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-'\u0022" ask:hintLabel="; : -"/>
- <Key android:keyWidth="45%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u00bf\u00a1&#11822;&#8253;" ask:hintLabel="\? !"/>
+ ask:longPressCode="@integer/key_code_cancel"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-\'&quot;"/>
+ <Key android:keyWidth="45%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!¿¡⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_url" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
- ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes=":" android:popupCharacters="\u002C;-" ask:hintLabel=", ; -"/>
- <Key ask:isFunctional="true" android:codes="/" android:popupCharacters="~_+\u003D$%\u0026\@"
- ask:hintLabel="~ _ +"/>
- <Key android:keyWidth="25%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_domain" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u00bf\u00a1&#11822;&#8253;" ask:hintLabel="\? !"/>
+ ask:longPressCode="@integer/key_code_cancel"/>
+ <Key ask:isFunctional="true" android:codes=":" android:popupCharacters=",;-\'"/>
+ <Key ask:isFunctional="true" android:codes="/" android:popupCharacters="~_+=$%&amp;\@"/>
+ <Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!¿¡⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_email" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
- ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-'\u0022" ask:hintLabel="; : -"/>
- <Key ask:isFunctional="true" android:codes="\@" android:popupCharacters="~_+\u003D$%\u0026"
- ask:hintLabel="~ _ +"/>
- <Key android:keyWidth="25%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="@integer/key_code_domain" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u00bf\u00a1&#11822;&#8253;" ask:hintLabel="\? !"/>
+ ask:longPressCode="@integer/key_code_cancel"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-\'&quot;"/>
+ <Key ask:isFunctional="true" android:codes="\@" android:popupCharacters="~_+=$%&amp;"/>
+ <Key android:keyWidth="25%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="@integer/key_code_domain"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!¿¡⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
+
<Row android:keyWidth="10%p" android:keyboardMode="@integer/keyboard_mode_password" android:rowEdgeFlags="bottom">
<Key ask:isFunctional="true" android:codes="@integer/key_code_keyboard_mode_change" android:keyEdgeFlags="left"/>
<Key ask:isFunctional="true" android:codes="@integer/key_code_mode_alphabet" ask:showInLayout="if_applicable"
- ask:longPressCode="@integer/key_code_cancel"
- ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-'\u0022" ask:hintLabel="; : -"/>
- <Key android:keyWidth="45%p" android:codes="@integer/key_code_space" ask:hintLabel=" "/>
- <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!\u00bf\u00a1&#11822;&#8253;" ask:hintLabel="\? !"/>
+ ask:longPressCode="@integer/key_code_cancel"/>
+ <Key ask:isFunctional="true" android:codes="44" android:popupCharacters=";:_-\'&quot;"/>
+ <Key android:keyWidth="45%p" android:codes="@integer/key_code_space"/>
+ <Key ask:isFunctional="true" android:codes="." android:popupCharacters="\?!¿¡⸮‽"/>
<Key android:keyWidth="15%p" ask:isFunctional="true" android:codes="@integer/key_code_enter"
- ask:longPressCode="@integer/key_code_settings" ask:hintLabel=" " android:keyEdgeFlags="right"/>
+ ask:longPressCode="@integer/key_code_settings" android:keyEdgeFlags="right"/>
</Row>
</Keyboard>
diff --git a/scripts/adb.sh b/scripts/adb.sh
index fa9e7ab30..89ed33c0a 100755
--- a/scripts/adb.sh
+++ b/scripts/adb.sh
@@ -38,10 +38,14 @@ else
exit 1
fi
done
- tags=`grep -R 'TAG = ".*"' app/src/main/java/com/* jnidictionaryv1/src/main/java/com/* jnidictionaryv2/src/main/java/com/*`
+ tags=`grep -R 'TAG = ".*"' ime/app/src/main/java/com/* ime/jnidictionaryv1/src/main/java/com/* ime/jnidictionaryv2/src/main/java/com/*`
# We can go back to our original folder now:
cd "$oldpath"
tags="$(echo $tags | sed -E 's![a-z/A-Z12]*\.java: (protected |private )?(static )?(final )?String [A-Z_]* = "([^\"]*)";!\4!g')"
+ if [ -z $tags ]; then
+ echo -e "${error}Aborting.${nocolor} No tags found."
+ exit 2
+ fi
tags="$tags dalvikvm System.err AndroidRuntime "
comm="adb logcat $(echo "$tags" | sed "s/ /:$1 /g")*:S"
echo -e "${color}Running: $nocolor$comm"