aboutsummaryrefslogtreecommitdiffstats
path: root/java/res
diff options
context:
space:
mode:
Diffstat (limited to 'java/res')
-rw-r--r--java/res/drawable-hdpi/key_hint_comma_holo.9.pngbin326 -> 382 bytes
-rw-r--r--java/res/drawable-hdpi/key_hint_comma_large_holo.9.pngbin0 -> 392 bytes
-rw-r--r--java/res/drawable-hdpi/key_hint_minus_holo.9.pngbin0 -> 360 bytes
-rw-r--r--java/res/drawable-hdpi/key_hint_minus_large_holo.9.pngbin0 -> 376 bytes
-rw-r--r--java/res/drawable-hdpi/key_hint_underscore_holo.9.pngbin0 -> 335 bytes
-rw-r--r--java/res/drawable-hdpi/key_hint_underscore_large_holo.9.pngbin0 -> 354 bytes
-rw-r--r--java/res/drawable-hdpi/sym_keyboard_settings_holo.pngbin2083 -> 2044 bytes
-rw-r--r--java/res/drawable-land-hdpi/key_hint_comma_holo.9.pngbin373 -> 382 bytes
-rw-r--r--java/res/drawable-land-hdpi/key_hint_comma_large_holo.9.pngbin0 -> 392 bytes
-rw-r--r--java/res/drawable-land-hdpi/key_hint_minus_holo.9.pngbin0 -> 360 bytes
-rw-r--r--java/res/drawable-land-hdpi/key_hint_minus_large_holo.9.pngbin0 -> 376 bytes
-rw-r--r--java/res/drawable-land-hdpi/key_hint_underscore_holo.9.pngbin0 -> 335 bytes
-rw-r--r--java/res/drawable-land-hdpi/key_hint_underscore_large_holo.9.pngbin0 -> 354 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_at_holo.9.pngbin1592 -> 1621 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_at_large_holo.9.pngbin1651 -> 1651 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_colon_holo.9.pngbin1279 -> 1279 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_colon_large_holo.9.pngbin1318 -> 1318 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_comma_holo.9.pngbin1241 -> 1216 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_comma_large_holo.9.pngbin0 -> 1226 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_exclamation_holo.9.pngbin1293 -> 1317 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_exclamation_large_holo.9.pngbin1338 -> 1338 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_minus_holo.9.pngbin0 -> 1167 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_minus_large_holo.9.pngbin0 -> 1167 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_plus_holo.9.pngbin1275 -> 1275 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_plus_large_holo.9.pngbin1328 -> 1328 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_question_holo.9.pngbin1414 -> 1433 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_question_large_holo.9.pngbin1473 -> 1473 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_quote_holo.9.pngbin1230 -> 1238 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_quote_large_holo.9.pngbin1249 -> 1249 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_underscore_holo.9.pngbin0 -> 1144 bytes
-rw-r--r--java/res/drawable-land-mdpi/key_hint_underscore_large_holo.9.pngbin0 -> 1154 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_at_holo.9.pngbin1621 -> 1621 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_at_large_holo.9.pngbin1651 -> 1651 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_colon_holo.9.pngbin1279 -> 1279 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_colon_large_holo.9.pngbin1318 -> 1318 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_comma_holo.9.pngbin1195 -> 1216 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_comma_large_holo.9.pngbin0 -> 1226 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_exclamation_holo.9.pngbin1317 -> 1317 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_exclamation_large_holo.9.pngbin1338 -> 1338 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_minus_holo.9.pngbin0 -> 1167 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_minus_large_holo.9.pngbin0 -> 1167 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_plus_holo.9.pngbin1275 -> 1275 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_plus_large_holo.9.pngbin1328 -> 1328 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_question_holo.9.pngbin1433 -> 1433 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_question_large_holo.9.pngbin1473 -> 1473 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_quote_holo.9.pngbin1238 -> 1238 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_quote_large_holo.9.pngbin1249 -> 1249 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_underscore_holo.9.pngbin0 -> 1144 bytes
-rw-r--r--java/res/drawable-mdpi/key_hint_underscore_large_holo.9.pngbin0 -> 1154 bytes
-rw-r--r--java/res/drawable-mdpi/sym_keyboard_settings_holo.pngbin1877 -> 1865 bytes
-rw-r--r--java/res/drawable-mdpi/sym_keyboard_smiley_holo.pngbin0 -> 1258 bytes
-rw-r--r--java/res/values-ar/strings.xml12
-rw-r--r--java/res/values-bg/strings.xml12
-rw-r--r--java/res/values-ca/strings.xml12
-rw-r--r--java/res/values-cs/strings.xml12
-rw-r--r--java/res/values-da/strings.xml12
-rw-r--r--java/res/values-de/strings.xml12
-rw-r--r--java/res/values-el/strings.xml12
-rw-r--r--java/res/values-en-rGB/strings.xml12
-rw-r--r--java/res/values-en/donottranslate-altchars.xml1
-rw-r--r--java/res/values-es-rUS/strings.xml12
-rw-r--r--java/res/values-es/strings.xml12
-rw-r--r--java/res/values-fa/strings.xml12
-rw-r--r--java/res/values-fi/strings.xml12
-rw-r--r--java/res/values-fr/donottranslate.xml2
-rw-r--r--java/res/values-fr/strings.xml12
-rw-r--r--java/res/values-hr/strings.xml12
-rw-r--r--java/res/values-hu/strings.xml12
-rw-r--r--java/res/values-in/strings.xml12
-rw-r--r--java/res/values-it/strings.xml12
-rw-r--r--java/res/values-iw/strings.xml12
-rw-r--r--java/res/values-ja/strings.xml12
-rw-r--r--java/res/values-ko/strings.xml12
-rw-r--r--java/res/values-lt/strings.xml12
-rw-r--r--java/res/values-lv/strings.xml12
-rw-r--r--java/res/values-nb/strings.xml12
-rw-r--r--java/res/values-nl/strings.xml12
-rw-r--r--java/res/values-pl/strings.xml12
-rw-r--r--java/res/values-pt-rPT/strings.xml12
-rw-r--r--java/res/values-pt/strings.xml12
-rw-r--r--java/res/values-rm/strings.xml24
-rw-r--r--java/res/values-ro/strings.xml12
-rw-r--r--java/res/values-ru/strings.xml12
-rw-r--r--java/res/values-sk/strings.xml12
-rw-r--r--java/res/values-sl/strings.xml12
-rw-r--r--java/res/values-sr/strings.xml12
-rw-r--r--java/res/values-sv/strings.xml12
-rw-r--r--java/res/values-th/strings.xml12
-rw-r--r--java/res/values-tl/strings.xml12
-rw-r--r--java/res/values-tr/strings.xml12
-rw-r--r--java/res/values-uk/strings.xml12
-rw-r--r--java/res/values-vi/strings.xml12
-rw-r--r--java/res/values-xlarge/config.xml1
-rw-r--r--java/res/values-zh-rCN/strings.xml12
-rw-r--r--java/res/values-zh-rTW/strings.xml12
-rw-r--r--java/res/values/attrs.xml7
-rw-r--r--java/res/values/config.xml4
-rw-r--r--java/res/values/donottranslate-altchars.xml3
-rw-r--r--java/res/values/keycodes.xml20
-rw-r--r--java/res/values/strings.xml25
-rw-r--r--java/res/values/whitelist.xml38
-rw-r--r--java/res/xml-xlarge/kbd_key_styles.xml15
-rw-r--r--java/res/xml-xlarge/kbd_number.xml309
-rw-r--r--java/res/xml-xlarge/kbd_phone.xml14
-rw-r--r--java/res/xml-xlarge/kbd_phone_symbols.xml14
-rw-r--r--java/res/xml-xlarge/kbd_qwerty_row4.xml244
-rw-r--r--java/res/xml-xlarge/kbd_ru_rows.xml12
-rw-r--r--java/res/xml-xlarge/kbd_symbols.xml96
-rw-r--r--java/res/xml-xlarge/kbd_symbols_shift.xml31
-rw-r--r--java/res/xml/kbd_currency_key_styles.xml269
-rw-r--r--java/res/xml/kbd_key_styles.xml10
-rw-r--r--java/res/xml/kbd_number.xml1
-rw-r--r--java/res/xml/kbd_symbols.xml5
-rw-r--r--java/res/xml/method.xml1
-rw-r--r--java/res/xml/prefs.xml3
115 files changed, 1414 insertions, 215 deletions
diff --git a/java/res/drawable-hdpi/key_hint_comma_holo.9.png b/java/res/drawable-hdpi/key_hint_comma_holo.9.png
index 47ae5efaf..da0d6fdd6 100644
--- a/java/res/drawable-hdpi/key_hint_comma_holo.9.png
+++ b/java/res/drawable-hdpi/key_hint_comma_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/key_hint_comma_large_holo.9.png b/java/res/drawable-hdpi/key_hint_comma_large_holo.9.png
new file mode 100644
index 000000000..1f2f70762
--- /dev/null
+++ b/java/res/drawable-hdpi/key_hint_comma_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/key_hint_minus_holo.9.png b/java/res/drawable-hdpi/key_hint_minus_holo.9.png
new file mode 100644
index 000000000..2c34ef90b
--- /dev/null
+++ b/java/res/drawable-hdpi/key_hint_minus_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/key_hint_minus_large_holo.9.png b/java/res/drawable-hdpi/key_hint_minus_large_holo.9.png
new file mode 100644
index 000000000..0df056ee1
--- /dev/null
+++ b/java/res/drawable-hdpi/key_hint_minus_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/key_hint_underscore_holo.9.png b/java/res/drawable-hdpi/key_hint_underscore_holo.9.png
new file mode 100644
index 000000000..e4f271918
--- /dev/null
+++ b/java/res/drawable-hdpi/key_hint_underscore_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/key_hint_underscore_large_holo.9.png b/java/res/drawable-hdpi/key_hint_underscore_large_holo.9.png
new file mode 100644
index 000000000..dad34fc72
--- /dev/null
+++ b/java/res/drawable-hdpi/key_hint_underscore_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-hdpi/sym_keyboard_settings_holo.png b/java/res/drawable-hdpi/sym_keyboard_settings_holo.png
index b3af0c638..471bd0b86 100644
--- a/java/res/drawable-hdpi/sym_keyboard_settings_holo.png
+++ b/java/res/drawable-hdpi/sym_keyboard_settings_holo.png
Binary files differ
diff --git a/java/res/drawable-land-hdpi/key_hint_comma_holo.9.png b/java/res/drawable-land-hdpi/key_hint_comma_holo.9.png
index 9ab5dadac..da0d6fdd6 100644
--- a/java/res/drawable-land-hdpi/key_hint_comma_holo.9.png
+++ b/java/res/drawable-land-hdpi/key_hint_comma_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-hdpi/key_hint_comma_large_holo.9.png b/java/res/drawable-land-hdpi/key_hint_comma_large_holo.9.png
new file mode 100644
index 000000000..1f2f70762
--- /dev/null
+++ b/java/res/drawable-land-hdpi/key_hint_comma_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-hdpi/key_hint_minus_holo.9.png b/java/res/drawable-land-hdpi/key_hint_minus_holo.9.png
new file mode 100644
index 000000000..2c34ef90b
--- /dev/null
+++ b/java/res/drawable-land-hdpi/key_hint_minus_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-hdpi/key_hint_minus_large_holo.9.png b/java/res/drawable-land-hdpi/key_hint_minus_large_holo.9.png
new file mode 100644
index 000000000..0df056ee1
--- /dev/null
+++ b/java/res/drawable-land-hdpi/key_hint_minus_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-hdpi/key_hint_underscore_holo.9.png b/java/res/drawable-land-hdpi/key_hint_underscore_holo.9.png
new file mode 100644
index 000000000..e4f271918
--- /dev/null
+++ b/java/res/drawable-land-hdpi/key_hint_underscore_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-hdpi/key_hint_underscore_large_holo.9.png b/java/res/drawable-land-hdpi/key_hint_underscore_large_holo.9.png
new file mode 100644
index 000000000..dad34fc72
--- /dev/null
+++ b/java/res/drawable-land-hdpi/key_hint_underscore_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_at_holo.9.png b/java/res/drawable-land-mdpi/key_hint_at_holo.9.png
index d1ea313c0..5b946ff9b 100644
--- a/java/res/drawable-land-mdpi/key_hint_at_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_at_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_at_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_at_large_holo.9.png
index 786bbc5de..852f899ed 100644
--- a/java/res/drawable-land-mdpi/key_hint_at_large_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_at_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_colon_holo.9.png b/java/res/drawable-land-mdpi/key_hint_colon_holo.9.png
index 12ce26758..1d9346e6f 100644
--- a/java/res/drawable-land-mdpi/key_hint_colon_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_colon_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_colon_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_colon_large_holo.9.png
index a51bada57..17e9091b4 100644
--- a/java/res/drawable-land-mdpi/key_hint_colon_large_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_colon_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_comma_holo.9.png b/java/res/drawable-land-mdpi/key_hint_comma_holo.9.png
index f9391623b..c2a913c04 100644
--- a/java/res/drawable-land-mdpi/key_hint_comma_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_comma_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_comma_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_comma_large_holo.9.png
new file mode 100644
index 000000000..846f213f1
--- /dev/null
+++ b/java/res/drawable-land-mdpi/key_hint_comma_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_exclamation_holo.9.png b/java/res/drawable-land-mdpi/key_hint_exclamation_holo.9.png
index a14623dc0..ce8e8de43 100644
--- a/java/res/drawable-land-mdpi/key_hint_exclamation_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_exclamation_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_exclamation_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_exclamation_large_holo.9.png
index ce52d3a02..035dcf85d 100644
--- a/java/res/drawable-land-mdpi/key_hint_exclamation_large_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_exclamation_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_minus_holo.9.png b/java/res/drawable-land-mdpi/key_hint_minus_holo.9.png
new file mode 100644
index 000000000..e59a31587
--- /dev/null
+++ b/java/res/drawable-land-mdpi/key_hint_minus_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_minus_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_minus_large_holo.9.png
new file mode 100644
index 000000000..52c28dd87
--- /dev/null
+++ b/java/res/drawable-land-mdpi/key_hint_minus_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_plus_holo.9.png b/java/res/drawable-land-mdpi/key_hint_plus_holo.9.png
index a80c03169..931390b45 100644
--- a/java/res/drawable-land-mdpi/key_hint_plus_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_plus_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_plus_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_plus_large_holo.9.png
index e8daaf085..e6f9f8a9c 100644
--- a/java/res/drawable-land-mdpi/key_hint_plus_large_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_plus_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_question_holo.9.png b/java/res/drawable-land-mdpi/key_hint_question_holo.9.png
index 2b71d744f..6cbeb5993 100644
--- a/java/res/drawable-land-mdpi/key_hint_question_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_question_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_question_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_question_large_holo.9.png
index 041336832..bfd58de09 100644
--- a/java/res/drawable-land-mdpi/key_hint_question_large_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_question_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_quote_holo.9.png b/java/res/drawable-land-mdpi/key_hint_quote_holo.9.png
index 486e5e19d..3b361b71c 100644
--- a/java/res/drawable-land-mdpi/key_hint_quote_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_quote_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_quote_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_quote_large_holo.9.png
index 49770314f..2a08aa12e 100644
--- a/java/res/drawable-land-mdpi/key_hint_quote_large_holo.9.png
+++ b/java/res/drawable-land-mdpi/key_hint_quote_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_underscore_holo.9.png b/java/res/drawable-land-mdpi/key_hint_underscore_holo.9.png
new file mode 100644
index 000000000..52e871e0a
--- /dev/null
+++ b/java/res/drawable-land-mdpi/key_hint_underscore_holo.9.png
Binary files differ
diff --git a/java/res/drawable-land-mdpi/key_hint_underscore_large_holo.9.png b/java/res/drawable-land-mdpi/key_hint_underscore_large_holo.9.png
new file mode 100644
index 000000000..ee0e83578
--- /dev/null
+++ b/java/res/drawable-land-mdpi/key_hint_underscore_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_at_holo.9.png b/java/res/drawable-mdpi/key_hint_at_holo.9.png
index e596144f9..5b946ff9b 100644
--- a/java/res/drawable-mdpi/key_hint_at_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_at_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_at_large_holo.9.png b/java/res/drawable-mdpi/key_hint_at_large_holo.9.png
index 63d071405..852f899ed 100644
--- a/java/res/drawable-mdpi/key_hint_at_large_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_at_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_colon_holo.9.png b/java/res/drawable-mdpi/key_hint_colon_holo.9.png
index 12ce26758..1d9346e6f 100644
--- a/java/res/drawable-mdpi/key_hint_colon_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_colon_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_colon_large_holo.9.png b/java/res/drawable-mdpi/key_hint_colon_large_holo.9.png
index a51bada57..17e9091b4 100644
--- a/java/res/drawable-mdpi/key_hint_colon_large_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_colon_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_comma_holo.9.png b/java/res/drawable-mdpi/key_hint_comma_holo.9.png
index 82e4a93b7..c2a913c04 100644
--- a/java/res/drawable-mdpi/key_hint_comma_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_comma_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_comma_large_holo.9.png b/java/res/drawable-mdpi/key_hint_comma_large_holo.9.png
new file mode 100644
index 000000000..846f213f1
--- /dev/null
+++ b/java/res/drawable-mdpi/key_hint_comma_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_exclamation_holo.9.png b/java/res/drawable-mdpi/key_hint_exclamation_holo.9.png
index b57351b57..ce8e8de43 100644
--- a/java/res/drawable-mdpi/key_hint_exclamation_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_exclamation_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_exclamation_large_holo.9.png b/java/res/drawable-mdpi/key_hint_exclamation_large_holo.9.png
index a8a17eb44..035dcf85d 100644
--- a/java/res/drawable-mdpi/key_hint_exclamation_large_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_exclamation_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_minus_holo.9.png b/java/res/drawable-mdpi/key_hint_minus_holo.9.png
new file mode 100644
index 000000000..e59a31587
--- /dev/null
+++ b/java/res/drawable-mdpi/key_hint_minus_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_minus_large_holo.9.png b/java/res/drawable-mdpi/key_hint_minus_large_holo.9.png
new file mode 100644
index 000000000..52c28dd87
--- /dev/null
+++ b/java/res/drawable-mdpi/key_hint_minus_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_plus_holo.9.png b/java/res/drawable-mdpi/key_hint_plus_holo.9.png
index a80c03169..931390b45 100644
--- a/java/res/drawable-mdpi/key_hint_plus_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_plus_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_plus_large_holo.9.png b/java/res/drawable-mdpi/key_hint_plus_large_holo.9.png
index e8daaf085..e6f9f8a9c 100644
--- a/java/res/drawable-mdpi/key_hint_plus_large_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_plus_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_question_holo.9.png b/java/res/drawable-mdpi/key_hint_question_holo.9.png
index 9491d878f..6cbeb5993 100644
--- a/java/res/drawable-mdpi/key_hint_question_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_question_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_question_large_holo.9.png b/java/res/drawable-mdpi/key_hint_question_large_holo.9.png
index c9902ffa8..bfd58de09 100644
--- a/java/res/drawable-mdpi/key_hint_question_large_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_question_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_quote_holo.9.png b/java/res/drawable-mdpi/key_hint_quote_holo.9.png
index a036421d8..3b361b71c 100644
--- a/java/res/drawable-mdpi/key_hint_quote_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_quote_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_quote_large_holo.9.png b/java/res/drawable-mdpi/key_hint_quote_large_holo.9.png
index 5381b1337..2a08aa12e 100644
--- a/java/res/drawable-mdpi/key_hint_quote_large_holo.9.png
+++ b/java/res/drawable-mdpi/key_hint_quote_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_underscore_holo.9.png b/java/res/drawable-mdpi/key_hint_underscore_holo.9.png
new file mode 100644
index 000000000..52e871e0a
--- /dev/null
+++ b/java/res/drawable-mdpi/key_hint_underscore_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/key_hint_underscore_large_holo.9.png b/java/res/drawable-mdpi/key_hint_underscore_large_holo.9.png
new file mode 100644
index 000000000..ee0e83578
--- /dev/null
+++ b/java/res/drawable-mdpi/key_hint_underscore_large_holo.9.png
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_settings_holo.png b/java/res/drawable-mdpi/sym_keyboard_settings_holo.png
index 8233623e3..784a45054 100644
--- a/java/res/drawable-mdpi/sym_keyboard_settings_holo.png
+++ b/java/res/drawable-mdpi/sym_keyboard_settings_holo.png
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_smiley_holo.png b/java/res/drawable-mdpi/sym_keyboard_smiley_holo.png
new file mode 100644
index 000000000..594fe211c
--- /dev/null
+++ b/java/res/drawable-mdpi/sym_keyboard_smiley_holo.png
Binary files differ
diff --git a/java/res/values-ar/strings.xml b/java/res/values-ar/strings.xml
index 0f0e76eb1..d1d70ff74 100644
--- a/java/res/values-ar/strings.xml
+++ b/java/res/values-ar/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"المزيد"</string>
<string name="label_pause_key" msgid="181098308428035340">"توقف مؤقت"</string>
<string name="label_wait_key" msgid="6402152600878093134">"انتظار"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"حذف"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"رجوع"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"الإعدادات"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"العالي"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"مسافة"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"الرموز"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"الإدخال الصوتي"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"تشغيل الرموز"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"إيقاف الرموز"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"تشغيل العالي"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"إيقاف العالي"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"الإدخال الصوتي"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"الإدخال الصوتي غير معتمد حاليًا للغتك، ولكنه يعمل باللغة الإنجليزية."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"يستخدم الإدخال الصوتي خاصية التعرف على الكلام من Google. تنطبق "<a href="http://m.google.com/privacy">"سياسة خصوصية الجوال"</a>"."</string>
diff --git a/java/res/values-bg/strings.xml b/java/res/values-bg/strings.xml
index 1743886c8..418bb18a1 100644
--- a/java/res/values-bg/strings.xml
+++ b/java/res/values-bg/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Още"</string>
<string name="label_pause_key" msgid="181098308428035340">"Пауза"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Чака"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Изтриване"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Настройки"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Интервал"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Символи"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Гласово въвеждане"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Символите са включени"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Символите са изключени"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift е включен"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift е изключен"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Гласово въвеждане"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"За вашия език понастоящем не се поддържа гласово въвеждане, но можете да го използвате на английски."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Гласовото въвеждане използва функцията на Google за разпознаване на говор. В сила е "<a href="http://m.google.com/privacy">"Декларацията за поверителност за мобилни устройства"</a>"."</string>
diff --git a/java/res/values-ca/strings.xml b/java/res/values-ca/strings.xml
index 43c9749b6..1bfa3a9ab 100644
--- a/java/res/values-ca/strings.xml
+++ b/java/res/values-ca/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Més"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Espera"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Suprimeix"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Retorn"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Configuració"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Majúscules"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Espai"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Símbols"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulador"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Entrada de veu"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Símbols activats"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Símbols desactivats"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Majúscules activades"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Majúscules desactivades"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Entrada de veu"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Actualment, l\'entrada de veu no és compatible amb el vostre idioma, però funciona en anglès."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"L\'entrada de veu utilitza el reconeixement de veu de Google. S\'hi aplica la "<a href="http://m.google.com/privacy">"Política de privadesa de Google Mobile"</a>"."</string>
diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml
index 783c392eb..b0cb7daf7 100644
--- a/java/res/values-cs/strings.xml
+++ b/java/res/values-cs/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Další"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pauza"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Čekat"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Smazat"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Nastavení"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"mezera"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symboly"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Karta"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Hlasový vstup"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symboly jsou zapnuty"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symboly jsou vypnuty"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Režim Shift je zapnutý"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Režim Shift je vypnutý"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Hlasový vstup"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Pro váš jazyk aktuálně není hlasový vstup podporován, ale funguje v angličtině."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Hlasový vstup používá rozpoznávání hlasu Google a vztahují se na něj "<a href="http://m.google.com/privacy">"Zásady ochrany osobních údajů pro mobilní služby"</a>"."</string>
diff --git a/java/res/values-da/strings.xml b/java/res/values-da/strings.xml
index 9722cdab1..eb79888d6 100644
--- a/java/res/values-da/strings.xml
+++ b/java/res/values-da/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mere"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pause"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Vent"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Slet"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Tilbage"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Indstillinger"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Mellemrum"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symboler"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Fane"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Stemmeinput"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symboler: Til"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symboler: Fra"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift: Til"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift: Fra"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Stemmeinput"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Stemmeinput understøttes i øjeblikket ikke for dit sprog, men fungerer på engelsk."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Stemmeinput anvender Googles stemmegenkendelse. "<a href="http://m.google.com/privacy">"Fortrolighedspolitikken for mobilenheder"</a>" gælder."</string>
diff --git a/java/res/values-de/strings.xml b/java/res/values-de/strings.xml
index 7a7f3c5f7..396d74dd8 100644
--- a/java/res/values-de/strings.xml
+++ b/java/res/values-de/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mehr"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pause"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Warten"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Löschen"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Eingabe"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Einstellungen"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Umschalt"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Leerzeichen"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symbole"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Spracheingabe"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symbole an"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symbole aus"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Umschalt an"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Umschalt aus"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Spracheingabe"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Spracheingaben werden derzeit nicht für Ihre Sprache unterstützt, funktionieren jedoch in Englisch."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Die Spracheingabe verwendet die Spracherkennung von Google. Es gelten die "<a href="http://m.google.com/privacy">"Google Mobile-Datenschutzbestimmungen"</a>"."</string>
diff --git a/java/res/values-el/strings.xml b/java/res/values-el/strings.xml
index 59e9ff838..6d0869bf1 100644
--- a/java/res/values-el/strings.xml
+++ b/java/res/values-el/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Περισσότερα"</string>
<string name="label_pause_key" msgid="181098308428035340">"Παύση"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Αναμ."</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Ρυθμίσεις"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Κενό"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Σύμβολα"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Φωνητική εντολή"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Σύμβολα ενεργά"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Σύμβολα ανενεργά"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift ενεργό"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift ανενεργό"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Φωνητική είσοδος"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Η φωνητική είσοδος δεν υποστηρίζεται αυτή τη στιγμή για τη γλώσσα σας, ωστόσο λειτουργεί στα Αγγλικά."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Οι φωνητικές εντολές χρησιμοποιούν την τεχνολογία αναγνώρισης φωνής της Google. Ισχύει "<a href="http://m.google.com/privacy">"η Πολιτική Απορρήτου για κινητά"</a>"."</string>
diff --git a/java/res/values-en-rGB/strings.xml b/java/res/values-en-rGB/strings.xml
index 3af0182f2..b2e62b0cd 100644
--- a/java/res/values-en-rGB/strings.xml
+++ b/java/res/values-en-rGB/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"More"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pause"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Wait"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Settings"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Space"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symbols"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Voice Input"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symbols on"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symbols off"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift on"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift off"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Voice input"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Voice input is not currently supported for your language, but does work in English."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Voice input uses Google\'s speech recognition. "<a href="http://m.google.com/privacy">"The Mobile Privacy Policy"</a>" applies."</string>
diff --git a/java/res/values-en/donottranslate-altchars.xml b/java/res/values-en/donottranslate-altchars.xml
index 3950d7dff..29582c950 100644
--- a/java/res/values-en/donottranslate-altchars.xml
+++ b/java/res/values-en/donottranslate-altchars.xml
@@ -22,6 +22,7 @@
<string name="alternates_for_e">3,è,é,ê,ë,ē</string>
<string name="alternates_for_i">8,î,ï,í,ī,ì</string>
<string name="alternates_for_o">9,ô,ö,ò,ó,œ,ø,ō,õ</string>
+ <string name="alternates_for_s">ß</string>
<string name="alternates_for_u">7,û,ü,ù,ú,ū</string>
<string name="alternates_for_n">ñ</string>
<string name="alternates_for_c">ç</string>
diff --git a/java/res/values-es-rUS/strings.xml b/java/res/values-es-rUS/strings.xml
index c9499864b..02f36ff79 100644
--- a/java/res/values-es-rUS/strings.xml
+++ b/java/res/values-es-rUS/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Más"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Espera"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Eliminar"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Volver"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Configuración"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Mayús"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Espacio"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Símbolos"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Entrada de voz"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Símbolos activados"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Símbolos desactivados"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Mayús activado"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Mayús desactivado"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Entrada por voz"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"La entrada por voz no está admitida en tu idioma, pero sí funciona en inglés."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"La entrada de voz usa el reconocimiento de voz de Google. "<a href="http://m.google.com/privacy">"Se aplica la política de privacidad para"</a>" celulares."</string>
diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml
index 0bd23a13d..f9a86ffd6 100644
--- a/java/res/values-es/strings.xml
+++ b/java/res/values-es/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Más"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Espera"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Eliminar"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Retroceso"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Ajustes"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Mayús"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Espacio"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Símbolos"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulador"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Entrada de voz"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Símbolos activados"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Símbolos desactivados"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Mayús activadas"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Mayús desactivadas"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Introducción de voz"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Actualmente la introducción de voz no está disponible en tu idioma, pero se puede utilizar en inglés."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"La entrada de voz utiliza el reconocimiento de voz de Google. Se aplica la "<a href="http://m.google.com/privacy">"Política de privacidad de Google para móviles"</a>"."</string>
diff --git a/java/res/values-fa/strings.xml b/java/res/values-fa/strings.xml
index dbcfeccf4..b594411ac 100644
--- a/java/res/values-fa/strings.xml
+++ b/java/res/values-fa/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"بیشتر"</string>
<string name="label_pause_key" msgid="181098308428035340">"توقف موقت"</string>
<string name="label_wait_key" msgid="6402152600878093134">"منتظر بمانید"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"تنظیمات"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"فاصله"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"نمادها"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"ورودی صوتی"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"نمادها روشن"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"نمادها خاموش"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift روشن"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift خاموش"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"ورودی صوتی"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"ورودی صوتی در حال حاضر برای زبان شما پشتیبانی نمی شود اما برای زبان انگلیسی فعال است."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"ورودی صوتی از تشخیص صدای Google استفاده می کند. "<a href="http://m.google.com/privacy">"خط مشی رازداری Mobile "</a>" اعمال می شود."</string>
diff --git a/java/res/values-fi/strings.xml b/java/res/values-fi/strings.xml
index fe9aef97c..0bf385552 100644
--- a/java/res/values-fi/strings.xml
+++ b/java/res/values-fi/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Lisää"</string>
<string name="label_pause_key" msgid="181098308428035340">"Tauko"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Odota"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Poista"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Rivinvaihto"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Asetukset"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Välilyönti"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symbolit"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Sarkain"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Äänisyöte"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symbolit käytössä"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symbolit pois käytöstä"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift käytössä"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift pois käytöstä"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Äänisyöte"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Äänisyötettä ei vielä tueta kielelläsi, mutta voit käyttää sitä englanniksi."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Äänisyöte käyttää Googlen puheentunnistusta. "<a href="http://m.google.com/privacy">"Mobile-tietosuojakäytäntö"</a>" on voimassa."</string>
diff --git a/java/res/values-fr/donottranslate.xml b/java/res/values-fr/donottranslate.xml
index b79df7b37..6c3536210 100644
--- a/java/res/values-fr/donottranslate.xml
+++ b/java/res/values-fr/donottranslate.xml
@@ -19,7 +19,7 @@
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Symbols that are commonly considered word separators in this language -->
- <string name="word_separators">.\u0009\u0020,;:!?\'\n()[]*&amp;@{}/&lt;&gt;_+=|\u0022</string>
+ <string name="word_separators">.\u0009\u0020,;:!?\n()[]*&amp;@{}/&lt;&gt;_+=|\u0022</string>
<!-- Symbols that are sentence separators, for purposes of making it hug the last sentence. -->
<string name="sentence_separators">.,</string>
</resources>
diff --git a/java/res/values-fr/strings.xml b/java/res/values-fr/strings.xml
index 9f7cfefe7..b7aac9445 100644
--- a/java/res/values-fr/strings.xml
+++ b/java/res/values-fr/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Plus"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pause"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Attente"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Supprimer"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Entrée"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Paramètres"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Maj"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Espace"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symboles"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulation"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Saisie vocale"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symboles activés"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symboles désactivés"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Maj activée"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Maj désactivée"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Saisie vocale"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"La saisie vocale n\'est pas encore prise en charge pour votre langue, mais elle fonctionne en anglais."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"La saisie vocale fait appel à la reconnaissance vocale de Google. Les "<a href="http://m.google.com/privacy">"Règles de confidentialité Google Mobile"</a>" s\'appliquent."</string>
diff --git a/java/res/values-hr/strings.xml b/java/res/values-hr/strings.xml
index be7069666..e6879a6d1 100644
--- a/java/res/values-hr/strings.xml
+++ b/java/res/values-hr/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Više"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pauza"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Pričekaj"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Postavke"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Razmaknica"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simboli"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulator"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Glasovni unos"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simboli uključeni"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simboli isključeni"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift uključen"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift isključen"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Glasovni unos"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Vaš jezik trenutno nije podržan za glasovni unos, ali radi za engleski."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Glasovni unos upotrebljava Googleovo prepoznavanje govora. Primjenjuju se "<a href="http://m.google.com/privacy">"Pravila o privatnosti za uslugu Mobile"</a>"."</string>
diff --git a/java/res/values-hu/strings.xml b/java/res/values-hu/strings.xml
index 05209c5cc..a8bf98367 100644
--- a/java/res/values-hu/strings.xml
+++ b/java/res/values-hu/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Egyebek"</string>
<string name="label_pause_key" msgid="181098308428035340">"Szün."</string>
<string name="label_wait_key" msgid="6402152600878093134">"Vár"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Törlés"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Vissza"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Beállítások"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Szóköz"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Szimbólumok"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Hangbevitel"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Szimbólumok be"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Szimbólumok ki"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift be"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift ki"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Hangbevitel"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"A hangbevitel szolgáltatás jelenleg nem támogatja az Ön nyelvét, ám angolul működik."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"A hangbevitel a Google beszédfelismerő technológiáját használja, amelyre a "<a href="http://m.google.com/privacy">"Mobil adatvédelmi irányelvek"</a>" érvényesek."</string>
diff --git a/java/res/values-in/strings.xml b/java/res/values-in/strings.xml
index 1eabfd46a..4df7f1e7f 100644
--- a/java/res/values-in/strings.xml
+++ b/java/res/values-in/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Lainnya"</string>
<string name="label_pause_key" msgid="181098308428035340">"Jeda"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Tunggu"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Hapus"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Setelan"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Spasi"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simbol"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Masukan Suara"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simbol hidup"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simbol mati"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift hidup"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift mati"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Masukan suara"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Masukan suara saat ini tidak didukung untuk bahasa Anda, tetapi bekerja dalam Bahasa Inggris."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Masukan suara menggunakan pengenalan ucapan Google. "<a href="http://m.google.com/privacy">"Kebijakan Privasi Seluler"</a>" berlaku."</string>
diff --git a/java/res/values-it/strings.xml b/java/res/values-it/strings.xml
index ac0cb9ed3..9bf4f9e30 100644
--- a/java/res/values-it/strings.xml
+++ b/java/res/values-it/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Altro"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Attesa"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Cancella"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Invio"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Impostazioni"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Maiuscolo"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Spazio"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simboli"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulazione"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Input vocale"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simboli attivati"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simboli disattivati"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Maiuscole attivate"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Maiuscole disattivate"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Comandi vocali"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"I comandi vocali non sono attualmente supportati per la tua lingua ma funzionano in inglese."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"L\'input vocale utilizza il riconoscimento vocale di Google. Sono valide le "<a href="http://m.google.com/privacy">"norme sulla privacy di Google Mobile"</a>"."</string>
diff --git a/java/res/values-iw/strings.xml b/java/res/values-iw/strings.xml
index 6fd274b27..af0854c97 100644
--- a/java/res/values-iw/strings.xml
+++ b/java/res/values-iw/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"עוד"</string>
<string name="label_pause_key" msgid="181098308428035340">"השהה"</string>
<string name="label_wait_key" msgid="6402152600878093134">"המתן"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"מחק"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"חזור"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"הגדרות"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"רווח"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"סמלים"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"כרטיסייה"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"קלט קולי"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"מצב סמלים פועל"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"מצב סמלים כבוי"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift פועל"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift כבוי"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"קלט קולי"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"קלט קולי אינו נתמך בשלב זה בשפתך, אך הוא פועל באנגלית."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"קלט קולי משתמש בזיהוי דיבור של Google.‏ "<a href="http://m.google.com/privacy">"מדיניות הפרטיות של \'Google לנייד\'"</a>" חלה במקרה זה."</string>
diff --git a/java/res/values-ja/strings.xml b/java/res/values-ja/strings.xml
index 0af30078e..cd2cf8070 100644
--- a/java/res/values-ja/strings.xml
+++ b/java/res/values-ja/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Shift"</string>
<string name="label_pause_key" msgid="181098308428035340">"停止"</string>
<string name="label_wait_key" msgid="6402152600878093134">"待機"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Del"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"設定"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Space"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"記号"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"音声入力"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"記号ON"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"記号OFF"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift ON"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift OFF"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"音声入力"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"音声入力は現在英語には対応していますが、日本語には対応していません。"</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"音声入力ではGoogleの音声認識技術を利用します。"<a href="http://m.google.com/privacy">"モバイルプライバシーポリシー"</a>"が適用されます。"</string>
diff --git a/java/res/values-ko/strings.xml b/java/res/values-ko/strings.xml
index f6dde1b6a..7a09da880 100644
--- a/java/res/values-ko/strings.xml
+++ b/java/res/values-ko/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"더보기"</string>
<string name="label_pause_key" msgid="181098308428035340">"일시 중지"</string>
<string name="label_wait_key" msgid="6402152600878093134">"대기"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"삭제"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"리턴"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"설정"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"시프트"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"스페이스"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"기호"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"탭"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"음성 입력"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"기호 사용"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"기호 사용 안함"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"시프트 사용"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"시프트 사용 안함"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"음성 입력"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"음성 입력은 현재 자국어로 지원되지 않으며 영어로 작동됩니다."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"음성 입력에서는 Google의 음성 인식 기능을 사용합니다. "<a href="http://m.google.com/privacy">"모바일 개인정보취급방침"</a>"이 적용됩니다."</string>
diff --git a/java/res/values-lt/strings.xml b/java/res/values-lt/strings.xml
index b1bc02ae1..c12c62aaa 100644
--- a/java/res/values-lt/strings.xml
+++ b/java/res/values-lt/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Daugiau"</string>
<string name="label_pause_key" msgid="181098308428035340">"Prist."</string>
<string name="label_wait_key" msgid="6402152600878093134">"Lauk."</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Ištrinti"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Grįžti"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Nustatymai"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Keitimas"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Tarpas"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simboliai"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Skirtukas"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Balso įvestis"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simboliai įjungti"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simboliai išjungti"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Keitimas įjungtas"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Keitimas išjungtas"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Balso įvestis"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Šiuo metu balso įvestis jūsų kompiuteryje nepalaikoma, bet ji veikia anglų k."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Balso įvesčiai naudojamas „Google“ kalbos atpažinimas. Taikoma "<a href="http://m.google.com/privacy">"privatumo politika mobiliesiems"</a>"."</string>
diff --git a/java/res/values-lv/strings.xml b/java/res/values-lv/strings.xml
index d82a98f96..8b975b033 100644
--- a/java/res/values-lv/strings.xml
+++ b/java/res/values-lv/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Vairāk"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pauze"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Gaidīt"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Dzēšanas taustiņš"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Atgriešanās taustiņš"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Iestatījumu taustiņš"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Pārslēgšanas taustiņš"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Atstarpes taustiņš"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simbolu taustiņš"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulēšanas taustiņš"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Runas ievades taustiņš"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simbolu režīms ir ieslēgts."</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simbolu režīms ir izslēgts."</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Pārslēgšanas režīms ir ieslēgts."</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Pārslēgšanas režīms ir izslēgts."</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Balss ievade"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Balss ievade jūsu valodā pašlaik netiek atbalstīta, taču tā ir pieejama angļu valodā."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Balss ievadei tiek izmantota Google runas atpazīšanas funkcija. Uz šīs funkcijas lietošanu attiecas "<a href="http://m.google.com/privacy">"mobilo sakaru ierīču lietošanas konfidencialitātes politika"</a>"."</string>
diff --git a/java/res/values-nb/strings.xml b/java/res/values-nb/strings.xml
index c05858008..0471e74c3 100644
--- a/java/res/values-nb/strings.xml
+++ b/java/res/values-nb/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mer"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pause"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Vent"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Innstillinger"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Mellomrom"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symboler"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Taleinndata"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symboler er slått på"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symboler er slått av"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift på"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift av"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Stemmedata"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Stemmedata håndteres foreløpig ikke på ditt språk, men fungerer på engelsk."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Google Voice bruker Googles talegjenkjenning. "<a href="http://m.google.com/privacy">"Personvernreglene for mobil"</a>" gjelder."</string>
diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml
index 82d3e7eb2..e5439eb38 100644
--- a/java/res/values-nl/strings.xml
+++ b/java/res/values-nl/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Meer"</string>
<string name="label_pause_key" msgid="181098308428035340">"Onderbr."</string>
<string name="label_wait_key" msgid="6402152600878093134">"Wacht"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Instellingen"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Spatie"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symbolen"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Spraakinvoer"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symbolen aan"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symbolen uit"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift aan"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift uit"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Spraakinvoer"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Spraakinvoer wordt momenteel niet ondersteund in uw taal, maar is wel beschikbaar in het Engels."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Spraakinvoer maakt gebruik van de spraakherkenning van Google. Het "<a href="http://m.google.com/privacy">"Privacybeleid van Google Mobile"</a>" is van toepassing."</string>
diff --git a/java/res/values-pl/strings.xml b/java/res/values-pl/strings.xml
index 10ba3af63..633b159c9 100644
--- a/java/res/values-pl/strings.xml
+++ b/java/res/values-pl/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Więcej"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pauza"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Czekaj"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Ustawienia"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Spacja"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symbole"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Wprowadzanie głosowe"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symbole włączone"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symbole wyłączone"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift włączony"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift wyłączony"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Wprowadzanie głosowe"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Wprowadzanie głosowe obecnie nie jest obsługiwane w Twoim języku, ale działa w języku angielskim."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Funkcja wprowadzania głosowego wykorzystuje mechanizm rozpoznawania mowy. Obowiązuje "<a href="http://m.google.com/privacy">"Polityka prywatności Google Mobile"</a>"."</string>
diff --git a/java/res/values-pt-rPT/strings.xml b/java/res/values-pt-rPT/strings.xml
index 961eea9ea..f06d64c70 100644
--- a/java/res/values-pt-rPT/strings.xml
+++ b/java/res/values-pt-rPT/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mais"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Esp."</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Definições"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Espaço"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Símbolos"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Entrada de voz"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Símbolos ativados"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Símbolos desativados"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift ativado"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift desativado"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Entrada de voz"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Actualmente, a entrada de voz não é suportada para o seu idioma, mas funciona em inglês."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"A entrada de voz utiliza o reconhecimento de voz da Google. É aplicável a "<a href="http://m.google.com/privacy">"Política de privacidade do Google Mobile"</a>"."</string>
diff --git a/java/res/values-pt/strings.xml b/java/res/values-pt/strings.xml
index 7330a5c86..9fc1a97f2 100644
--- a/java/res/values-pt/strings.xml
+++ b/java/res/values-pt/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mais"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Esp."</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Excluir"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Voltar"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Configurações"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Espaço"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Símbolos"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Entrada de texto por voz"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Símbolos ativados"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Símbolos desativados"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift ativado"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift desativado"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Entrada de voz"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"A entrada de voz não é suportada no momento para o seu idioma, mas funciona em inglês."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"A entrada de texto por voz usa o reconhecimento de voz do Google. "<a href="http://m.google.com/privacy">"A política de privacidade para celulares"</a>" é aplicada."</string>
diff --git a/java/res/values-rm/strings.xml b/java/res/values-rm/strings.xml
index 3372d0f62..57548b5e4 100644
--- a/java/res/values-rm/strings.xml
+++ b/java/res/values-rm/strings.xml
@@ -74,6 +74,30 @@
<skip />
<!-- no translation found for label_wait_key (6402152600878093134) -->
<skip />
+ <!-- no translation found for description_delete_key (5586406298531883960) -->
+ <skip />
+ <!-- no translation found for description_return_key (8750044000806461678) -->
+ <skip />
+ <!-- no translation found for description_settings_key (7484527796782969219) -->
+ <skip />
+ <!-- no translation found for description_shift_key (346906866277787836) -->
+ <skip />
+ <!-- no translation found for description_space_key (8512130111575878517) -->
+ <skip />
+ <!-- no translation found for description_switch_alpha_symbol_key (4537975384274405537) -->
+ <skip />
+ <!-- no translation found for description_tab_key (828186583738307137) -->
+ <skip />
+ <!-- no translation found for description_voice_key (3057731675774652754) -->
+ <skip />
+ <!-- no translation found for description_symbols_on (2994366855822840559) -->
+ <skip />
+ <!-- no translation found for description_symbols_off (3209578267079515136) -->
+ <skip />
+ <!-- no translation found for description_shift_on (6983188949895971587) -->
+ <skip />
+ <!-- no translation found for description_shift_off (8553265474523069034) -->
+ <skip />
<string name="voice_warning_title" msgid="4419354150908395008">"Cumonds vocals"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"\"Cumonds vocals en Vossa lingua na vegnan actualmain betg sustegnids, ma la funcziun è disponibla per englais.\""</string>
<!-- outdated translation 4611518823070986445 --> <string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Ils cumonds vocals èn ina funcziunalitad experimentala che utilisescha la renconuschientscha vocala da rait da Google."</string>
diff --git a/java/res/values-ro/strings.xml b/java/res/values-ro/strings.xml
index 3045a62ee..52bed2785 100644
--- a/java/res/values-ro/strings.xml
+++ b/java/res/values-ro/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mai multe"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pauză"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Aşt."</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Ştergeţi"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Tasta Enter"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Setări"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Tasta Space"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simboluri"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tasta Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Intrare vocală"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simbolurile sunt activate"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simbolurile sunt dezactivate"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Tasta Shift este activată"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Tasta Shift este dezactivată"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Intrare voce"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Intrarea vocală nu este acceptată în prezent pentru limba dvs., însă funcţionează în limba engleză."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Intrarea vocală utilizează funcţia Google de recunoaştere vocală. Se aplică "<a href="http://m.google.com/privacy">"Politica de confidenţialitate Google Mobil"</a>"."</string>
diff --git a/java/res/values-ru/strings.xml b/java/res/values-ru/strings.xml
index 41b7f7134..f8fdab021 100644
--- a/java/res/values-ru/strings.xml
+++ b/java/res/values-ru/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Ещё"</string>
<string name="label_pause_key" msgid="181098308428035340">"Приостановить"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Подождите"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Клавиша удаления"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Клавиша \"Ввод\""</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Клавиша настроек"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Клавиша верхнего регистра"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Клавиша \"Пробел\""</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Клавиша символов"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Клавиша табуляции"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Клавиша голосового ввода"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Клавиши символов выключены"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Клавиши символов включены"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Верхний регистр включен"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Верхний регистр выключен"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Голосовой ввод"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"В настоящее время функция голосового ввода не поддерживает ваш язык, но вы можете пользоваться ей на английском."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Голосовой ввод использует алгоритмы распознавания речи Google. Действует "<a href="http://m.google.com/privacy">"политика конфиденциальности для мобильных устройств"</a>"."</string>
diff --git a/java/res/values-sk/strings.xml b/java/res/values-sk/strings.xml
index d14783e92..569f273a4 100644
--- a/java/res/values-sk/strings.xml
+++ b/java/res/values-sk/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Viac"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pozastaviť"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Čakajte"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Nastavenia"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Medzera"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symboly"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Hlasový vstup"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Symboly zapnuté"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Symboly vypnuté"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift zapnutý"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift vypnutý"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Hlasový vstup"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Pre váš jazyk aktuálne nie je hlasový vstup podporovaný, ale funguje v angličtine."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Hlasový vstup používa rozpoznávanie hlasu Google. Na používanie hlasového vstupu sa vzťahujú "<a href="http://m.google.com/privacy">"Pravidlá ochrany osobných údajov pre mobilné služby"</a>"."</string>
diff --git a/java/res/values-sl/strings.xml b/java/res/values-sl/strings.xml
index 224cb4c68..715e6c567 100644
--- a/java/res/values-sl/strings.xml
+++ b/java/res/values-sl/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Več"</string>
<string name="label_pause_key" msgid="181098308428035340">"Premor"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Čakaj"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Izbriši"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Vračalka"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Nastavitve"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Dvigalka"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Preslednica"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Znaki"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabulatorka"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Glasovni vnos"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Znaki vklopljeni"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Znaki izklopljeni"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Dvigalka vklopljena"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Dvigalka izklopljena"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Glasovni vnos"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Glasovni vnos trenutno ni podprt v vašem jeziku, deluje pa v angleščini."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Glasovni vnos uporablja Googlovo prepoznavanje govora. Zanj velja "<a href="http://m.google.com/privacy">"pravilnik o zasebnosti za mobilne naprave"</a>"."</string>
diff --git a/java/res/values-sr/strings.xml b/java/res/values-sr/strings.xml
index fbcb31a6b..115732779 100644
--- a/java/res/values-sr/strings.xml
+++ b/java/res/values-sr/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Још"</string>
<string name="label_pause_key" msgid="181098308428035340">"Паузирај"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Сачекајте"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Подешавања"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Размак"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Симболи"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Гласовни унос"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Симболи су укључени"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Симболи су искључени"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift је укључен"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift је искључен"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Гласовни унос"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Гласовни унос тренутно није подржан за ваш језик, али функционише на енглеском."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Гласовни унос користи Google-ову функцију за препознавање гласа. Примењује се "<a href="http://m.google.com/privacy">"политика приватности за мобилне уређаје"</a>"."</string>
diff --git a/java/res/values-sv/strings.xml b/java/res/values-sv/strings.xml
index 01cc52c05..b8c62f46e 100644
--- a/java/res/values-sv/strings.xml
+++ b/java/res/values-sv/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Mer"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pausa"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Vänta"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Ta bort"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Retur"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Inställningar"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Skift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Blanksteg"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Symboler"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tabb"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Röstinmatning"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Aktivera symboler"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Inaktivera symboler"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Aktivera Skift"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Inaktivera Skift"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Röstindata"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Röstindata stöds inte på ditt språk än, men tjänsten fungerar på engelska."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Röstinmatning använder sig av Googles tjänst för taligenkänning. "<a href="http://m.google.com/privacy">"Sekretesspolicyn för mobila enheter"</a>" gäller."</string>
diff --git a/java/res/values-th/strings.xml b/java/res/values-th/strings.xml
index 7d4c1e365..836b98724 100644
--- a/java/res/values-th/strings.xml
+++ b/java/res/values-th/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"เพิ่มเติม"</string>
<string name="label_pause_key" msgid="181098308428035340">"หยุดชั่วคราว"</string>
<string name="label_wait_key" msgid="6402152600878093134">"รอ"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"ลบ"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"การตั้งค่า"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Space"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"สัญลักษณ์"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"ป้อนข้อมูลด้วยเสียง"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"สัญลักษณ์เปิดอยู่"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"สัญลักษณ์ปิดอยู่"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift เปิดอยู่"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift ปิดอยู่"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"การป้อนข้อมูลด้วยเสียง"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"ขณะนี้การป้อนข้อมูลด้วยเสียงยังไม่ได้รับการสนับสนุนในภาษาของคุณ แต่ใช้ได้ในภาษาอังกฤษ"</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"ป้อนข้อมูลด้วยเสียงใช้การจดจำคำพูดของ Google "<a href="http://m.google.com/privacy">" นโยบายส่วนบุคคลของมือถือ"</a>"มีผลบังคับใช้"</string>
diff --git a/java/res/values-tl/strings.xml b/java/res/values-tl/strings.xml
index 7707696d8..55f98de10 100644
--- a/java/res/values-tl/strings.xml
+++ b/java/res/values-tl/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Higit pa"</string>
<string name="label_pause_key" msgid="181098308428035340">"Pause"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Intay"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Tanggalin"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Bumalik"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Mga Setting"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Puwang"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Mga Simbolo"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Input ng Boses"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Naka-on ang mga simbolo"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Naka-off ang mga simbolo"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Naka-on ang shift"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Naka-off ang shift"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Pag-input ng boses"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Hindi kasalukuyang suportado ang pag-input ng boses para sa iyong wika, ngunit gumagana sa Ingles."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Gumagamit ang pag-input ng boses ng speech recognition ng Google. Nalalapat "<a href="http://m.google.com/privacy">"Ang Patakaran sa Privacy ng Mobile"</a>"."</string>
diff --git a/java/res/values-tr/strings.xml b/java/res/values-tr/strings.xml
index 8ce04ff3a..71a6215dd 100644
--- a/java/res/values-tr/strings.xml
+++ b/java/res/values-tr/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Diğer"</string>
<string name="label_pause_key" msgid="181098308428035340">"Durkl"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Bekle"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Sil"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Ayarlar"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Üst Karakter"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Boşluk"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Simgeler"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Sekme"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Ses Girişi"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Simgeler açık"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Simgeler kapalı"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Üst Karakter açık"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Üst Karakter kapalı"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Ses girişi"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Ses girişi, şu anda sizin diliniz için desteklenmiyor ama İngilizce dilinde kullanılabilir."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Ses girişi Google\'ın konuşma tanıma işlevini kullanır. "<a href="http://m.google.com/privacy">" Mobil Gizlilik Politikası"</a>" geçerlidir."</string>
diff --git a/java/res/values-uk/strings.xml b/java/res/values-uk/strings.xml
index c662b137b..26906329a 100644
--- a/java/res/values-uk/strings.xml
+++ b/java/res/values-uk/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Більше"</string>
<string name="label_pause_key" msgid="181098308428035340">"Пауза"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Чек."</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Клавіша Delete"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Клавіша Return"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Клавіша Settings"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Клавіша Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Клавіша Space"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Клавіша Symbols"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Клавіша Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Клавіша Voice Input"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Символи ввімкнено"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Символи вимкнено"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift увімкнено"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift вимкнено"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Голос. ввід"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Голос. ввід наразі не підтрим. для вашої мови, але можна користуватися англійською."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Голосовий ввід використовує розпізнавання мовлення Google. Застосовується "<a href="http://m.google.com/privacy">"Політика конфіденційності для мобільних пристроїв"</a>"."</string>
diff --git a/java/res/values-vi/strings.xml b/java/res/values-vi/strings.xml
index 1a141ec2d..70defe3b7 100644
--- a/java/res/values-vi/strings.xml
+++ b/java/res/values-vi/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"Khác"</string>
<string name="label_pause_key" msgid="181098308428035340">"Tạm dừng"</string>
<string name="label_wait_key" msgid="6402152600878093134">"Đợi"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"Xóa"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"Quay lại"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"Cài đặt"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"Dấu cách"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"Biểu tượng"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"Nhập liệu bằng giọng nói"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"Bật biểu tượng"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"Tắt biểu tượng"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Bật Shift"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Tắt Shift"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"Nhập liệu bằng giọng nói"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"Nhập liệu bằng giọng nói hiện không được hỗ trợ cho ngôn ngữ của bạn nhưng hoạt động với ngôn ngữ tiếng Anh."</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"Nhập liệu bằng giọng nói sử dụng nhận dạng giọng nói của Google. Áp dụng "<a href="http://m.google.com/privacy">"Chính sách bảo mật dành cho điện thoại di động"</a>"."</string>
diff --git a/java/res/values-xlarge/config.xml b/java/res/values-xlarge/config.xml
index 40fdce0fd..f075b1b50 100644
--- a/java/res/values-xlarge/config.xml
+++ b/java/res/values-xlarge/config.xml
@@ -32,6 +32,7 @@
<bool name="config_digit_popup_characters_enabled">false</bool>
<!-- Whether or not Popup on key press is enabled by default -->
<bool name="config_default_popup_preview">false</bool>
+ <bool name="config_default_sound_enabled">true</bool>
<bool name="config_use_spacebar_language_switcher">false</bool>
<!-- Showing mini keyboard, just above the touched point if true, aligned to the key if false -->
<bool name="config_show_mini_keyboard_at_touched_point">true</bool>
diff --git a/java/res/values-zh-rCN/strings.xml b/java/res/values-zh-rCN/strings.xml
index dacd93ca5..3b092bfcc 100644
--- a/java/res/values-zh-rCN/strings.xml
+++ b/java/res/values-zh-rCN/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"更多"</string>
<string name="label_pause_key" msgid="181098308428035340">"暂停"</string>
<string name="label_wait_key" msgid="6402152600878093134">"等待"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"删除"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"回车"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"设置"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"空格"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"符号"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"语音输入"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"符号模式已打开"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"符号模式已关闭"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"Shift 模式已打开"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"Shift 模式已关闭"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"语音输入"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"语音输入功能当前还不支持您的语言,您只能输入英语语音。"</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"语音输入采用了 Google 的语音识别技术,因此请遵守"<a href="http://m.google.com/privacy">"“Google 移动”隐私权政策"</a>"。"</string>
diff --git a/java/res/values-zh-rTW/strings.xml b/java/res/values-zh-rTW/strings.xml
index acb1451bf..c9c7ae88a 100644
--- a/java/res/values-zh-rTW/strings.xml
+++ b/java/res/values-zh-rTW/strings.xml
@@ -56,6 +56,18 @@
<string name="label_more_key" msgid="3760239494604948502">"更多"</string>
<string name="label_pause_key" msgid="181098308428035340">"暫停"</string>
<string name="label_wait_key" msgid="6402152600878093134">"等候"</string>
+ <string name="description_delete_key" msgid="5586406298531883960">"刪除"</string>
+ <string name="description_return_key" msgid="8750044000806461678">"返回"</string>
+ <string name="description_settings_key" msgid="7484527796782969219">"設定"</string>
+ <string name="description_shift_key" msgid="346906866277787836">"Shift 鍵"</string>
+ <string name="description_space_key" msgid="8512130111575878517">"空白鍵"</string>
+ <string name="description_switch_alpha_symbol_key" msgid="4537975384274405537">"符號"</string>
+ <string name="description_tab_key" msgid="828186583738307137">"Tab 鍵"</string>
+ <string name="description_voice_key" msgid="3057731675774652754">"語音輸入"</string>
+ <string name="description_symbols_on" msgid="2994366855822840559">"開啟符號"</string>
+ <string name="description_symbols_off" msgid="3209578267079515136">"關閉符號"</string>
+ <string name="description_shift_on" msgid="6983188949895971587">"開啟位移"</string>
+ <string name="description_shift_off" msgid="8553265474523069034">"關閉位移"</string>
<string name="voice_warning_title" msgid="4419354150908395008">"語音輸入"</string>
<string name="voice_warning_locale_not_supported" msgid="637923019716442333">"語音輸入目前不支援您的語言,但是可以辨識英文。"</string>
<string name="voice_warning_may_not_understand" msgid="5596289095878251072">"語音輸入使用 Google 的語音辨識功能,並遵循《"<a href="http://m.google.com/privacy">"行動服務隱私權政策"</a>"》。"</string>
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index 9759e0eb6..f0da2744b 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -140,6 +140,8 @@
<attr name="keyStyle" format="string" />
<!-- Shift key icon for shifted state -->
<attr name="shiftedIcon" format="reference" />
+ <!-- The key is enabled and responds on press. -->
+ <attr name="enabled" format="boolean" />
</declare-styleable>
<declare-styleable name="Keyboard_Row">
@@ -166,10 +168,11 @@
<enum name="web" value="4" />
<enum name="phone" value="5" />
</attr>
+ <attr name="passwordInput" format="boolean" />
<attr name="hasSettingsKey" format="string" />
<attr name="voiceKeyEnabled" format="string" />
<attr name="hasVoiceKey" format="string" />
- <attr name="imeOptions">
+ <attr name="imeAction">
<!-- This should be aligned with EditorInfo.IME_ACTION_* -->
<flag name="actionUnspecified" value="0" />
<flag name="actionNone" value="1" />
@@ -180,6 +183,8 @@
<flag name="actionDone" value="6" />
<flag name="actionPrevious" value="7" />
</attr>
+ <attr name="languageCode" format="string" />
+ <attr name="countryCode" format="string" />
</declare-styleable>
<declare-styleable name="Keyboard_KeyStyle">
diff --git a/java/res/values/config.xml b/java/res/values/config.xml
index ceb4f1252..bdb4409f0 100644
--- a/java/res/values/config.xml
+++ b/java/res/values/config.xml
@@ -20,7 +20,6 @@
<resources>
<bool name="config_swipeDisambiguation">true</bool>
- <bool name="default_recorrection_enabled">true</bool>
<bool name="config_long_press_comma_for_settings_enabled">true</bool>
<bool name="config_enable_show_settings_key_option">true</bool>
<bool name="config_enable_show_subtype_settings">true</bool>
@@ -39,6 +38,8 @@
<!-- Default values for whether quick fixes and bigram suggestions are activated -->
<bool name="config_default_quick_fixes">true</bool>
<bool name="config_default_bigram_suggestions">true</bool>
+ <bool name="config_default_recorrection_enabled">true</bool>
+ <bool name="config_default_sound_enabled">false</bool>
<bool name="config_use_spacebar_language_switcher">true</bool>
<!-- Showing mini keyboard, just above the touched point if true, aligned to the key if false -->
<bool name="config_show_mini_keyboard_at_touched_point">false</bool>
@@ -59,6 +60,7 @@
<integer name="config_long_press_key_timeout">400</integer>
<integer name="config_long_press_shift_key_timeout">1200</integer>
<integer name="config_touch_noise_threshold_millis">40</integer>
+ <integer name="config_double_spaces_turn_into_period_timeout">1100</integer>
<dimen name="config_touch_noise_threshold_distance">2.0mm</dimen>
<!-- This configuration is the index of the array {@link KeyboardSwitcher.KEYBOARD_THEMES}. -->
<string name="config_default_keyboard_theme_id" translatable="false">4</string>
diff --git a/java/res/values/donottranslate-altchars.xml b/java/res/values/donottranslate-altchars.xml
index 4b1a6ae6d..518e74af1 100644
--- a/java/res/values/donottranslate-altchars.xml
+++ b/java/res/values/donottranslate-altchars.xml
@@ -44,6 +44,9 @@
<string name="alternates_for_scandinavia_row2_11"></string>
<string name="alternates_for_cyrillic_e"></string>
<string name="alternates_for_cyrillic_soft_sign"></string>
+ <string name="alternates_for_currency_dollar">¢,£,€,¥,₱</string>
+ <string name="alternates_for_currency_euro">¢,£,$,¥,₱</string>
+ <string name="alternates_for_currency_pound">¢,$,€,¥,₱</string>
<string name="alternates_for_mic">"\@drawable/sym_keyboard_settings|\@integer/key_settings,\@drawable/sym_keyboard_mic|\@integer/key_voice"</string>
<string name="alternates_for_smiley">":-)|:-) ,:-(|:-( ,;-)|;-) ,:-P|:-P ,=-O|=-O ,:-*|:-* ,:O|:O ,B-)|B-) ,:-$|:-$ ,:-!|:-! ,:-[|:-[ ,O:-)|O:-) ,:-\\\\\\\\|:-\\\\\\\\ ,:\'(|:\'( ,:-D|:-D "</string>
<string name="alternates_for_settings_slash">"\@drawable/sym_keyboard_settings|\@integer/key_settings,/"</string>
diff --git a/java/res/values/keycodes.xml b/java/res/values/keycodes.xml
index 6c18cb42a..d6f9bfc28 100644
--- a/java/res/values/keycodes.xml
+++ b/java/res/values/keycodes.xml
@@ -28,4 +28,24 @@
<integer name="key_delete">-5</integer>
<integer name="key_settings">-100</integer>
<integer name="key_voice">-102</integer>
+
+ <!-- Array used for mapping key codes to description strings. -->
+ <array name="key_descriptions">
+ <item>@integer/key_tab</item>
+ <item>@string/description_tab_key</item>
+ <item>@integer/key_return</item>
+ <item>@string/description_return_key</item>
+ <item>@integer/key_space</item>
+ <item>@string/description_space_key</item>
+ <item>@integer/key_shift</item>
+ <item>@string/description_shift_key</item>
+ <item>@integer/key_switch_alpha_symbol</item>
+ <item>@string/description_switch_alpha_symbol_key</item>
+ <item>@integer/key_delete</item>
+ <item>@string/description_delete_key</item>
+ <item>@integer/key_settings</item>
+ <item>@string/description_settings_key</item>
+ <item>@integer/key_voice</item>
+ <item>@string/description_voice_key</item>
+ </array>
</resources>
diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml
index f63d6816c..3c0a9c1a2 100644
--- a/java/res/values/strings.xml
+++ b/java/res/values/strings.xml
@@ -102,6 +102,31 @@
<!-- Label for "Wait" key of phone number keyboard. Must be short to fit on key! [CHAR LIMIT=5]-->
<string name="label_wait_key">Wait</string>
+ <!-- Spoken text description for delete key. -->
+ <string name="description_delete_key">Delete</string>
+ <!-- Spoken text description for return key. -->
+ <string name="description_return_key">Return</string>
+ <!-- Spoken text description for settings key. -->
+ <string name="description_settings_key">Settings</string>
+ <!-- Spoken text description for shift key. -->
+ <string name="description_shift_key">Shift</string>
+ <!-- Spoken text description for space key. -->
+ <string name="description_space_key">Space</string>
+ <!-- Spoken text description for symbols key. -->
+ <string name="description_switch_alpha_symbol_key">Symbols</string>
+ <!-- Spoken text description for tab key. -->
+ <string name="description_tab_key">Tab</string>
+ <!-- Spoken text description for voice input key. -->
+ <string name="description_voice_key">Voice Input</string>
+ <!-- Spoken text description for symbols mode on. -->
+ <string name="description_symbols_on">Symbols on</string>
+ <!-- Spoken text description for symbols mode off. -->
+ <string name="description_symbols_off">Symbols off</string>
+ <!-- Spoken text description for shift mode on. -->
+ <string name="description_shift_on">Shift on</string>
+ <!-- Spoken text description for shift mode off. -->
+ <string name="description_shift_off">Shift off</string>
+
<!-- Voice related labels -->
<!-- Title of the warning dialog that shows when a user initiates voice input for
diff --git a/java/res/values/whitelist.xml b/java/res/values/whitelist.xml
new file mode 100644
index 000000000..ced52e70e
--- /dev/null
+++ b/java/res/values/whitelist.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2011, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <!--
+ An entry of the whitelist word should be:
+ 1. (int)frequency
+ 2. (String)before
+ 3. (String)after
+ -->
+ <string-array name="wordlist_whitelist">
+
+ <item>255</item>
+ <item>ill</item>
+ <item>I\'ll</item>
+
+ <item>255</item>
+ <item>thisd</item>
+ <item>this\'d</item>
+
+ </string-array>
+</resources>
diff --git a/java/res/xml-xlarge/kbd_key_styles.xml b/java/res/xml-xlarge/kbd_key_styles.xml
index d211e5e61..fc06d00fc 100644
--- a/java/res/xml-xlarge/kbd_key_styles.xml
+++ b/java/res/xml-xlarge/kbd_key_styles.xml
@@ -165,4 +165,19 @@
latin:keyOutputText="@string/keylabel_for_popular_domain"
latin:keyHintIcon="@drawable/hint_popup_holo"
latin:popupCharacters="@string/alternates_for_popular_domain" />
+ <switch>
+ <case
+ latin:passwordInput="true"
+ >
+ <key-style
+ latin:styleName="nonPasswordSymbolKeyStyle"
+ latin:enabled="false" />
+ </case>
+ <!-- latin:passwordInput="false" -->
+ <default>
+ <key-style
+ latin:styleName="nonPasswordSymbolKeyStyle"
+ latin:enabled="true" />
+ </default>
+ </switch>
</merge>
diff --git a/java/res/xml-xlarge/kbd_number.xml b/java/res/xml-xlarge/kbd_number.xml
index 875548ba7..012b75115 100644
--- a/java/res/xml-xlarge/kbd_number.xml
+++ b/java/res/xml-xlarge/kbd_number.xml
@@ -31,120 +31,199 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
- <!-- This row is intentionally not marked as a top row -->
- <Row>
- <Key
- latin:keyStyle="tabKeyStyle"
- latin:keyLabelOption="alignLeft"
- latin:keyEdgeFlags="left" />
- <Spacer
- latin:horizontalGap="4.458%p" />
- <Key
- latin:keyLabel="-"
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyLabel="+"
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyLabel="."
- latin:keyWidth="8.042%p" />
- <Spacer
- latin:horizontalGap="4.458%p" />
- <Key
- latin:keyLabel="1" />
- <Key
- latin:keyLabel="2" />
- <Key
- latin:keyLabel="3" />
- <Spacer
- latin:horizontalGap="9.360%p" />
- <Key
- latin:keyStyle="deleteKeyStyle"
- latin:keyWidth="9.804%p"
- latin:keyEdgeFlags="right" />
- </Row>
- <Row>
- <Spacer
- latin:horizontalGap="16.406%p" />
- <Key
- latin:keyLabel="*"
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyLabel="/"
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyLabel=","
- latin:keyWidth="8.042%p" />
- <Spacer
- latin:horizontalGap="4.458%p" />
- <Key
- latin:keyLabel="4" />
- <Key
- latin:keyLabel="5" />
- <Key
- latin:keyLabel="6" />
- <Spacer
- latin:horizontalGap="4.458%p" />
- <Key
- latin:keyStyle="returnKeyStyle"
- latin:keyWidth="14.706%p"
- latin:keyEdgeFlags="right" />
- </Row>
- <Row>
- <!-- There is an empty area bellow the "More" key and left of the "(" key. To ignore
- the touch event on the area, "(" is intentionally not marked as a left edge key. -->
- <Spacer
- latin:horizontalGap="16.406%p" />
- <Key
- latin:keyLabel="("
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyLabel=")"
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyLabel="="
- latin:keyWidth="8.042%p" />
- <Spacer
- latin:horizontalGap="4.458%p" />
- <Key
- latin:keyLabel="7" />
- <Key
- latin:keyLabel="8" />
- <Key
- latin:keyLabel="9" />
- <!-- There is an empty area bellow the "Enter" key and right of the "9" key. To ignore
- the touch event on the area, "9" is intentionally not marked as a right edge key. -->
- </Row>
- <!-- This row is intentionally not marked as a bottom row -->
- <Row>
- <!-- There is an empty area bellow the "More" key and left of the "space" key. To ignore
- the touch event on the area, "space" is intentionally not marked as a left edge key. -->
- <Spacer
- latin:horizontalGap="8.362%p" />
- <Key
- latin:keyStyle="settingsKeyStyle"
- latin:keyWidth="8.042%p" />
- <Key
- latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
- latin:keyWidth="24.127%p" />
- <Spacer
- latin:horizontalGap="4.458%p" />
- <Key
- latin:keyLabel="*" />
- <Key
- latin:keyLabel="0" />
- <Key
- latin:keyLabel="#" />
- <switch>
- <case
- latin:voiceKeyEnabled="true"
- >
- <Key
- latin:keyStyle="micKeyStyle"
+ <include
+ latin:keyboardLayout="@xml/kbd_numkey_styles" />
+ <switch>
+ <case
+ latin:passwordInput="true"
+ >
+ <!-- This row is intentionally not marked as a top row -->
+ <Row>
+ <Spacer
+ latin:horizontalGap="32.076%p" />
+ <Key
+ latin:keyStyle="num1KeyStyle" />
+ <Key
+ latin:keyStyle="num2KeyStyle" />
+ <Key
+ latin:keyStyle="num3KeyStyle" />
+ <Spacer
+ latin:horizontalGap="22.272%p" />
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyWidth="9.804%p"
+ latin:keyEdgeFlags="right" />
+ </Row>
+ <Row>
+ <Spacer
+ latin:horizontalGap="32.076%p" />
+ <Key
+ latin:keyStyle="num4KeyStyle" />
+ <Key
+ latin:keyStyle="num5KeyStyle" />
+ <Key
+ latin:keyStyle="num6KeyStyle" />
+ <Spacer
+ latin:horizontalGap="17.371%p" />
+ <Key
+ latin:keyStyle="returnKeyStyle"
+ latin:keyWidth="14.706%p"
+ latin:keyEdgeFlags="right" />
+ </Row>
+ <Row>
+ <Spacer
+ latin:horizontalGap="32.076%p" />
+ <Key
+ latin:keyStyle="num7KeyStyle" />
+ <Key
+ latin:keyStyle="num8KeyStyle" />
+ <Key
+ latin:keyStyle="num9KeyStyle" />
+ <!-- There is an empty area below the "Enter" key and right of the "9" key. To
+ ignore the touch event on the area, "9" is intentionally not marked as a right
+ edge key. -->
+ </Row>
+ <!-- This row is intentionally not marked as a bottom row -->
+ <Row>
+ <Spacer
+ latin:horizontalGap="44.026%p" />
+ <Key
+ latin:keyStyle="num0KeyStyle" />
+ <!-- There is an empty area below the "Enter" key and right of the "#" key. To
+ ignore the touch event on the area, "#" is intentionally not marked as a right
+ edge key. -->
+ </Row>
+ </case>
+ <!-- latin:passwordInput="false" -->
+ <default>
+ <!-- This row is intentionally not marked as a top row -->
+ <Row>
+ <Key
+ latin:keyStyle="tabKeyStyle"
+ latin:keyLabelOption="alignLeft"
+ latin:keyEdgeFlags="left" />
+ <Spacer
+ latin:horizontalGap="4.458%p" />
+ <Key
+ latin:keyLabel="-"
+ latin:keyWidth="8.042%p" />
+ <Key
+ latin:keyLabel="+"
+ latin:keyWidth="8.042%p" />
+ <Key
+ latin:keyLabel="."
+ latin:keyWidth="8.042%p" />
+ <Spacer
+ latin:horizontalGap="4.458%p" />
+ <Key
+ latin:keyLabel="1" />
+ <Key
+ latin:keyLabel="2" />
+ <Key
+ latin:keyLabel="3" />
+ <Spacer
+ latin:horizontalGap="9.360%p" />
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyWidth="9.804%p"
+ latin:keyEdgeFlags="right" />
+ </Row>
+ <Row>
+ <Spacer
+ latin:horizontalGap="16.406%p" />
+ <Key
+ latin:keyLabel="*"
+ latin:keyWidth="8.042%p" />
+ <Key
+ latin:keyLabel="/"
+ latin:keyWidth="8.042%p" />
+ <Key
+ latin:keyLabel=","
+ latin:keyWidth="8.042%p" />
+ <Spacer
+ latin:horizontalGap="4.458%p" />
+ <Key
+ latin:keyLabel="4" />
+ <Key
+ latin:keyLabel="5" />
+ <Key
+ latin:keyLabel="6" />
+ <Spacer
+ latin:horizontalGap="4.458%p" />
+ <Key
+ latin:keyStyle="returnKeyStyle"
+ latin:keyWidth="14.706%p"
+ latin:keyEdgeFlags="right" />
+ </Row>
+ <Row>
+ <!-- There is an empty area below the "More" key and left of the "(" key. To
+ ignore the touch event on the area, "(" is intentionally not marked as a left
+ edge key. -->
+ <Spacer
+ latin:horizontalGap="16.406%p" />
+ <Key
+ latin:keyLabel="("
latin:keyWidth="8.042%p" />
- </case>
- </switch>
- <!-- There is an empty area bellow the "Enter" key and right of the "#" key. To ignore
- the touch event on the area, "#" is intentionally not marked as a right edge key. -->
- </Row>
+ <Key
+ latin:keyLabel=")"
+ latin:keyWidth="8.042%p" />
+ <Key
+ latin:keyLabel="="
+ latin:keyWidth="8.042%p" />
+ <Spacer
+ latin:horizontalGap="4.458%p" />
+ <Key
+ latin:keyLabel="7" />
+ <Key
+ latin:keyLabel="8" />
+ <Key
+ latin:keyLabel="9" />
+ <!-- There is an empty area below the "Enter" key and right of the "9" key. To
+ ignore the touch event on the area, "9" is intentionally not marked as a right
+ edge key. -->
+ </Row>
+ <!-- This row is intentionally not marked as a bottom row -->
+ <Row>
+ <!-- There is an empty area below the "More" key and left of the "space" key. To
+ ignore the touch event on the area, "space" is intentionally not marked as a
+ left edge key. -->
+ <Spacer
+ latin:horizontalGap="8.362%p" />
+ <switch>
+ <case latin:hasSettingsKey="true">
+ <Key
+ latin:keyStyle="settingsKeyStyle"
+ latin:keyWidth="8.042%p" />
+ </case>
+ <default>
+ <Spacer
+ latin:horizontalGap="8.042%p" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
+ latin:keyWidth="24.127%p" />
+ <Spacer
+ latin:horizontalGap="4.458%p" />
+ <Key
+ latin:keyLabel="*" />
+ <Key
+ latin:keyLabel="0" />
+ <Key
+ latin:keyLabel="#" />
+ <switch>
+ <case
+ latin:voiceKeyEnabled="true"
+ >
+ <Key
+ latin:keyStyle="micKeyStyle"
+ latin:keyWidth="8.042%p" />
+ </case>
+ </switch>
+ <!-- There is an empty area below the "Enter" key and right of the "#" key. To
+ ignore the touch event on the area, "#" is intentionally not marked as a right
+ edge key. -->
+ </Row>
+ </default>
+ </switch>
</Keyboard>
diff --git a/java/res/xml-xlarge/kbd_phone.xml b/java/res/xml-xlarge/kbd_phone.xml
index b9444ad50..9122176a9 100644
--- a/java/res/xml-xlarge/kbd_phone.xml
+++ b/java/res/xml-xlarge/kbd_phone.xml
@@ -129,9 +129,17 @@
the touch event on the area, "space" is intentionally not marked as a left edge key. -->
<Spacer
latin:horizontalGap="12.340%p" />
- <Key
- latin:keyStyle="settingsKeyStyle"
- latin:keyWidth="8.042%p" />
+ <switch>
+ <case latin:hasSettingsKey="true">
+ <Key
+ latin:keyStyle="settingsKeyStyle"
+ latin:keyWidth="8.042%p" />
+ </case>
+ <default>
+ <Spacer
+ latin:horizontalGap="8.042%p" />
+ </default>
+ </switch>
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
latin:keyWidth="16.084%p" />
diff --git a/java/res/xml-xlarge/kbd_phone_symbols.xml b/java/res/xml-xlarge/kbd_phone_symbols.xml
index 690bcde0c..055c14867 100644
--- a/java/res/xml-xlarge/kbd_phone_symbols.xml
+++ b/java/res/xml-xlarge/kbd_phone_symbols.xml
@@ -141,9 +141,17 @@
the touch event on the area, "space" is intentionally not marked as a left edge key. -->
<Spacer
latin:horizontalGap="8.362%p" />
- <Key
- latin:keyStyle="settingsKeyStyle"
- latin:keyWidth="8.042%p" />
+ <switch>
+ <case latin:hasSettingsKey="true">
+ <Key
+ latin:keyStyle="settingsKeyStyle"
+ latin:keyWidth="8.042%p" />
+ </case>
+ <default>
+ <Spacer
+ latin:horizontalGap="8.042%p" />
+ </default>
+ </switch>
<Key
latin:keyStyle="nonSpecialBackgroundSpaceKeyStyle"
latin:keyWidth="24.127%p" />
diff --git a/java/res/xml-xlarge/kbd_qwerty_row4.xml b/java/res/xml-xlarge/kbd_qwerty_row4.xml
index 9d0fd81c7..f36b61fc7 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row4.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row4.xml
@@ -27,29 +27,36 @@
>
<Spacer
latin:horizontalGap="8.362%p" />
- <Key
- latin:keyStyle="settingsKeyStyle" />
<switch>
- <case
- latin:mode="email"
- >
- <Key
- latin:keyStyle="comKeyStyle" />
+ <case latin:hasSettingsKey="true">
<Key
- latin:keyLabel="\@" />
+ latin:keyStyle="settingsKeyStyle" />
</case>
- <!-- TODO: implement logical OR for <case> attribute -->
+ <default>
+ <Spacer
+ latin:horizontalGap="8.042%p" />
+ </default>
+ </switch>
+ <switch>
<case
- latin:mode="url"
+ latin:languageCode="ru"
>
- <Key
- latin:keyStyle="comKeyStyle"
- latin:keyWidth="16.084%p" />
- </case>
- <default>
<switch>
+ <!-- TODO: implement logical OR for <case> attribute -->
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyStyle="comKeyStyle" />
+ </case>
<case
- latin:imeOptions="actionSearch"
+ latin:mode="url"
+ >
+ <Key
+ latin:keyStyle="comKeyStyle" />
+ </case>
+ <case
+ latin:imeAction="actionSearch"
>
<Key
latin:keyLabel=":"
@@ -63,12 +70,84 @@
latin:keyStyle="smileyKeyStyle" />
</default>
</switch>
- <Key
- latin:keyLabel="/"
- latin:manualTemporaryUpperCaseCode="64"
- latin:keyHintIcon="@drawable/key_hint_at_holo"
- latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_at_large_holo"
- latin:popupCharacters="\@" />
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyLabel="\@" />
+ </case>
+ <case
+ latin:mode="url"
+ >
+ <Key
+ latin:keyLabel="-"
+ latin:manualTemporaryUpperCaseCode="95"
+ latin:keyHintIcon="@drawable/key_hint_underline_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
+ latin:popupCharacters="_" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="/"
+ latin:manualTemporaryUpperCaseCode="64"
+ latin:keyHintIcon="@drawable/key_hint_at_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_at_large_holo"
+ latin:popupCharacters="\@" />
+ </default>
+ </switch>
+ </case>
+ <!-- not languageCode="ru" -->
+ <default>
+ <switch>
+ <case
+ latin:mode="url"
+ >
+ <Key
+ latin:keyStyle="comKeyStyle"
+ latin:keyWidth="16.084%p" />
+ </case>
+ <default>
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyStyle="comKeyStyle" />
+ </case>
+ <case
+ latin:imeAction="actionSearch"
+ >
+ <Key
+ latin:keyLabel=":"
+ latin:manualTemporaryUpperCaseCode="43"
+ latin:keyHintIcon="@drawable/key_hint_plus_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_plus_large_holo"
+ latin:popupCharacters="+" />
+ </case>
+ <default>
+ <Key
+ latin:keyStyle="smileyKeyStyle" />
+ </default>
+ </switch>
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyLabel="\@" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="/"
+ latin:manualTemporaryUpperCaseCode="64"
+ latin:keyHintIcon="@drawable/key_hint_at_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_at_large_holo"
+ latin:popupCharacters="\@" />
+ </default>
+ </switch>
+ </default>
+ </switch>
</default>
</switch>
<Key
@@ -76,44 +155,95 @@
latin:keyWidth="37.454%p" />
<switch>
<case
- latin:mode="email"
- >
- <Key
- latin:keyLabel="-" />
- </case>
- <case
- latin:mode="url"
- >
- <Key
- latin:keyLabel="/"
- latin:manualTemporaryUpperCaseCode="58"
- latin:keyHintIcon="@drawable/key_hint_colon_holo"
- latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_colon_large_holo"
- latin:popupCharacters=":" />
- </case>
- <default>
- <Key
- latin:keyLabel="\'"
- latin:manualTemporaryUpperCaseCode="34"
- latin:keyHintIcon="@drawable/key_hint_quote_holo"
- latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_quote_large_holo"
- latin:popupCharacters="&quot;" />
- </default>
- </switch>
- <switch>
- <case
- latin:mode="email"
+ latin:languageCode="ru"
>
- <Key
- latin:keyLabel="_" />
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyLabel="-" />
+ </case>
+ <case
+ latin:mode="url"
+ >
+ <Key
+ latin:keyLabel="/"
+ latin:manualTemporaryUpperCaseCode="58"
+ latin:keyHintIcon="@drawable/key_hint_colon_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_colon_large_holo"
+ latin:popupCharacters=":" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="\?"
+ latin:manualTemporaryUpperCaseCode="95"
+ latin:keyHintIcon="@drawable/key_hint_underline_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
+ latin:popupCharacters="_" />
+ </default>
+ </switch>
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyLabel="_" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="!"
+ latin:manualTemporaryUpperCaseCode="39"
+ latin:keyHintIcon="@drawable/key_hint_quote_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_quote_large_holo"
+ latin:popupCharacters="\'" />
+ </default>
+ </switch>
</case>
+ <!-- not languageCode="ru" -->
<default>
- <Key
- latin:keyLabel="-"
- latin:manualTemporaryUpperCaseCode="95"
- latin:keyHintIcon="@drawable/key_hint_underline_holo"
- latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
- latin:popupCharacters="_" />
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyLabel="-" />
+ </case>
+ <case
+ latin:mode="url"
+ >
+ <Key
+ latin:keyLabel="/"
+ latin:manualTemporaryUpperCaseCode="58"
+ latin:keyHintIcon="@drawable/key_hint_colon_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_colon_large_holo"
+ latin:popupCharacters=":" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="\'"
+ latin:manualTemporaryUpperCaseCode="34"
+ latin:keyHintIcon="@drawable/key_hint_quote_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_quote_large_holo"
+ latin:popupCharacters="&quot;" />
+ </default>
+ </switch>
+ <switch>
+ <case
+ latin:mode="email"
+ >
+ <Key
+ latin:keyLabel="_" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="-"
+ latin:manualTemporaryUpperCaseCode="95"
+ latin:keyHintIcon="@drawable/key_hint_underline_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_underline_large_holo"
+ latin:popupCharacters="_" />
+ </default>
+ </switch>
</default>
</switch>
<switch>
diff --git a/java/res/xml-xlarge/kbd_ru_rows.xml b/java/res/xml-xlarge/kbd_ru_rows.xml
index 008988a84..c5cd04371 100644
--- a/java/res/xml-xlarge/kbd_ru_rows.xml
+++ b/java/res/xml-xlarge/kbd_ru_rows.xml
@@ -105,11 +105,11 @@
latin:keyEdgeFlags="right" />
</Row>
<Row
- latin:keyWidth="8.042%p"
+ latin:keyWidth="7.520%p"
>
<Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="15.192%p"
+ latin:keyWidth="12.400%p"
latin:keyEdgeFlags="left" />
<Key
latin:keyLabel="я" />
@@ -131,8 +131,14 @@
<Key
latin:keyLabel="ю" />
<Key
+ latin:keyLabel="."
+ latin:manualTemporaryUpperCaseCode="44"
+ latin:keyHintIcon="@drawable/key_hint_comma_holo"
+ latin:manualTemporaryUpperCaseHintIcon="@drawable/key_hint_comma_large_holo"
+ latin:popupCharacters="," />
+ <Key
latin:keyStyle="shiftKeyStyle"
- latin:keyWidth="12.530%p"
+ latin:keyWidth="12.400%p"
latin:keyEdgeFlags="right" />
</Row>
<include
diff --git a/java/res/xml-xlarge/kbd_symbols.xml b/java/res/xml-xlarge/kbd_symbols.xml
index e56cc92d2..1061178e0 100644
--- a/java/res/xml-xlarge/kbd_symbols.xml
+++ b/java/res/xml-xlarge/kbd_symbols.xml
@@ -30,6 +30,8 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
+ <include
+ latin:keyboardLayout="@xml/kbd_currency_key_styles" />
<!-- This row is intentionally not marked as a top row -->
<Row
latin:keyWidth="8.272%p"
@@ -82,8 +84,7 @@
<Key
latin:keyLabel="#" />
<Key
- latin:keyLabel="$"
- latin:popupCharacters="¢,£,€,¥,₣,₤,₱" />
+ latin:keyStyle="currencyKeyStyle" />
<Key
latin:keyLabel="%"
latin:popupCharacters="‰" />
@@ -125,20 +126,53 @@
<Key
latin:keyLabel="="
latin:popupCharacters="≠,≈" />
- <Key
- latin:keyLabel=":" />
+ <switch>
+ <case
+ latin:languageCode="ru"
+ >
+ <Key
+ latin:keyLabel=":" />
+ </case>
+ <case
+ latin:mode="url"
+ >
+ <Key
+ latin:keyLabel="\'" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel=":" />
+ </default>
+ </switch>
<Key
latin:keyLabel=";" />
- <Key
- latin:keyLabel="," />
- <Key
- latin:keyLabel="." />
- <Key
- latin:keyLabel="!"
- latin:popupCharacters="¡" />
- <Key
- latin:keyLabel="\?"
- latin:popupCharacters="¿" />
+ <switch>
+ <case
+ latin:languageCode="ru"
+ >
+ <Key
+ latin:keyLabel="\'" />
+ <Key
+ latin:keyLabel="&quot;"
+ latin:popupCharacters="“,”,«,»,˝" />
+ <Key
+ latin:keyLabel="." />
+ <Key
+ latin:keyLabel="," />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="," />
+ <Key
+ latin:keyLabel="." />
+ <Key
+ latin:keyLabel="!"
+ latin:popupCharacters="¡" />
+ <Key
+ latin:keyLabel="\?"
+ latin:popupCharacters="¿" />
+ </default>
+ </switch>
<Key
latin:keyStyle="moreKeyStyle"
latin:keyWidth="12.530%p"
@@ -150,8 +184,16 @@
>
<Spacer
latin:horizontalGap="8.362%p" />
- <Key
- latin:keyStyle="settingsKeyStyle" />
+ <switch>
+ <case latin:hasSettingsKey="true">
+ <Key
+ latin:keyStyle="settingsKeyStyle" />
+ </case>
+ <default>
+ <Spacer
+ latin:horizontalGap="8.042%p" />
+ </default>
+ </switch>
<Key
latin:keyLabel="/" />
<Key
@@ -159,11 +201,23 @@
<Key
latin:keyStyle="spaceKeyStyle"
latin:keyWidth="37.454%p" />
- <Key
- latin:keyLabel="&quot;"
- latin:popupCharacters="“,”,«,»,˝" />
- <Key
- latin:keyLabel="_" />
+ <switch>
+ <case
+ latin:languageCode="ru"
+ >
+ <Key
+ latin:keyLabel="_" />
+ <Key
+ latin:keyLabel="-" />
+ </case>
+ <default>
+ <Key
+ latin:keyLabel="&quot;"
+ latin:popupCharacters="“,”,«,»,˝" />
+ <Key
+ latin:keyLabel="_" />
+ </default>
+ </switch>
<switch>
<case
latin:voiceKeyEnabled="true"
diff --git a/java/res/xml-xlarge/kbd_symbols_shift.xml b/java/res/xml-xlarge/kbd_symbols_shift.xml
index f7cf24a3f..8359b7571 100644
--- a/java/res/xml-xlarge/kbd_symbols_shift.xml
+++ b/java/res/xml-xlarge/kbd_symbols_shift.xml
@@ -46,21 +46,28 @@
<Key
latin:keyLabel="|" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="•"
latin:popupCharacters="♪,♥,♠,♦,♣" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="√" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="π"
latin:popupCharacters="Π" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="÷" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="×" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="§"
latin:popupCharacters="¶" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="Δ" />
<Key
latin:keyStyle="deleteKeyStyle"
@@ -76,19 +83,25 @@
latin:keyWidth="11.167%p"
latin:keyEdgeFlags="left" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="£" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="¢" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="€" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="¥" />
<Key
latin:keyLabel="^"
latin:popupCharacters="↑,↓,←,→" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="°" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="±"
latin:popupCharacters="∞" />
<Key
@@ -110,20 +123,26 @@
<Key
latin:keyLabel="\\" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="©" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="®" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="™" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="℅" />
<Key
latin:keyLabel="[" />
<Key
latin:keyLabel="]" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="¡" />
<Key
+ latin:keyStyle="nonPasswordSymbolKeyStyle"
latin:keyLabel="¿" />
<Key
latin:keyStyle="moreKeyStyle"
@@ -136,8 +155,16 @@
>
<Spacer
latin:horizontalGap="24.446%p" />
- <Key
- latin:keyStyle="settingsKeyStyle" />
+ <switch>
+ <case latin:hasSettingsKey="true">
+ <Key
+ latin:keyStyle="settingsKeyStyle" />
+ </case>
+ <default>
+ <Spacer
+ latin:horizontalGap="8.042%p" />
+ </default>
+ </switch>
<Key
latin:keyStyle="spaceKeyStyle"
latin:keyWidth="37.454%p" />
diff --git a/java/res/xml/kbd_currency_key_styles.xml b/java/res/xml/kbd_currency_key_styles.xml
new file mode 100644
index 000000000..b30dd6451
--- /dev/null
+++ b/java/res/xml/kbd_currency_key_styles.xml
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2011, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<merge
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <switch>
+ <case
+ latin:passwordInput="true"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="$"
+ latin:popupCharacters="@string/alternates_for_currency_dollar" />
+ </case>
+ <!-- Countries using Euro currency, 23 countries as for January 2011. -->
+ <!-- 1. Andorra (ca_AD, ca_ES) -->
+ <case
+ latin:languageCode="ca"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 2. Austria (de_AT) -->
+<!-- <case-->
+<!-- latin:countryCode="AT"-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- 3. Belgium (nl_BE, fr_BE, de_BE) -->
+<!-- <case-->
+<!-- latin:countryCode="BE"-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- 4. Cyprus (el_CY, tr_CY) -->
+ <case
+ latin:countryCode="CY"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 5. Estonia (et_EE) -->
+<!-- <case-->
+<!-- latin:languageCode="et"-->
+<!-- latin:countryCode=""-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- 6. Finland (fi_FI, sv_FI) -->
+ <case
+ latin:languageCode="fi"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 7. France (fr_FR) -->
+ <case
+ latin:languageCode="fr"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 8. Germany (de_DE) -->
+ <case
+ latin:languageCode="de"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 9. Greece (el_GR) -->
+ <case
+ latin:languageCode="el"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 10. Ireland (ga_IE, en_IE) -->
+ <case
+ latin:countryCode="IE"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 11. Italy (it_IT) -->
+ <case
+ latin:languageCode="it"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 12. Kosovo -->
+<!-- <case-->
+<!-- latin:countryCode="XK"-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- 13. Luxembourg (lb_LU, fr_LU, de_LU) -->
+ <case
+ latin:countryCode="LU"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 14. Malta (mt_MT, en_MT) -->
+ <case
+ latin:countryCode="MT"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 15. Monaco (fr_MO) -->
+<!-- <case-->
+<!-- latin:countryCode="MO"-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- 16. Montenegro (sla_ME) -->
+ <case
+ latin:countryCode="ME"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 17. Netherlands (nl_NL) -->
+ <case
+ latin:languageCode="nl"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 18. Portugal (pt_PT) -->
+ <case
+ latin:languageCode="pt"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 19. San Marino (it_SM) -->
+<!-- <case-->
+<!-- latin:countryCode="SM"-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- 20. Slovakia (sk_SK) -->
+ <case
+ latin:languageCode="sk"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 21. Slovenia (sl_SI) -->
+ <case
+ latin:languageCode="sl"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 22. Spain (es_ES, ca_ES) -->
+ <case
+ latin:languageCode="es"
+ latin:countryCode=""
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="€"
+ latin:popupCharacters="@string/alternates_for_currency_euro" />
+ </case>
+ <!-- 23. Vatican City (it_VA) -->
+<!-- <case-->
+<!-- latin:countryCode="VA"-->
+<!-- >-->
+<!-- <key-style-->
+<!-- latin:styleName="currencyKeyStyle"-->
+<!-- latin:keyLabel="€"-->
+<!-- latin:popupCharacters="@string/alternates_for_currency_euro" />-->
+<!-- </case>-->
+ <!-- United Kingdom -->
+ <case
+ latin:countryCode="GB"
+ >
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="£"
+ latin:popupCharacters="@string/alternates_for_currency_pound" />
+ </case>
+ <default>
+ <key-style
+ latin:styleName="currencyKeyStyle"
+ latin:keyLabel="$"
+ latin:popupCharacters="@string/alternates_for_currency_dollar" />
+ </default>
+ </switch>
+</merge> \ No newline at end of file
diff --git a/java/res/xml/kbd_key_styles.xml b/java/res/xml/kbd_key_styles.xml
index 3b35f3560..473510ec4 100644
--- a/java/res/xml/kbd_key_styles.xml
+++ b/java/res/xml/kbd_key_styles.xml
@@ -182,7 +182,7 @@
<!-- Return key style -->
<switch>
<case
- latin:imeOptions="actionGo"
+ latin:imeAction="actionGo"
>
<key-style
latin:styleName="returnKeyStyle"
@@ -191,7 +191,7 @@
latin:parentStyle="functionalKeyStyle" />
</case>
<case
- latin:imeOptions="actionNext"
+ latin:imeAction="actionNext"
>
<key-style
latin:styleName="returnKeyStyle"
@@ -200,7 +200,7 @@
latin:parentStyle="functionalKeyStyle" />
</case>
<case
- latin:imeOptions="actionDone"
+ latin:imeAction="actionDone"
>
<key-style
latin:styleName="returnKeyStyle"
@@ -209,7 +209,7 @@
latin:parentStyle="functionalKeyStyle" />
</case>
<case
- latin:imeOptions="actionSend"
+ latin:imeAction="actionSend"
>
<key-style
latin:styleName="returnKeyStyle"
@@ -218,7 +218,7 @@
latin:parentStyle="functionalKeyStyle" />
</case>
<case
- latin:imeOptions="actionSearch"
+ latin:imeAction="actionSearch"
>
<switch>
<case
diff --git a/java/res/xml/kbd_number.xml b/java/res/xml/kbd_number.xml
index f4fe8401a..7bd679bce 100644
--- a/java/res/xml/kbd_number.xml
+++ b/java/res/xml/kbd_number.xml
@@ -31,6 +31,7 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
+ <!-- TODO: Should add number password layout just like the xlarge layout does. -->
<switch>
<case
latin:colorScheme="white"
diff --git a/java/res/xml/kbd_symbols.xml b/java/res/xml/kbd_symbols.xml
index 5d62deaa4..b3b3f4ebd 100644
--- a/java/res/xml/kbd_symbols.xml
+++ b/java/res/xml/kbd_symbols.xml
@@ -31,6 +31,8 @@
>
<include
latin:keyboardLayout="@xml/kbd_key_styles" />
+ <include
+ latin:keyboardLayout="@xml/kbd_currency_key_styles" />
<Row
latin:rowEdgeFlags="top"
>
@@ -71,8 +73,7 @@
<Key
latin:keyLabel="\#" />
<Key
- latin:keyLabel="$"
- latin:popupCharacters="¢,£,€,¥,₣,₤,₱" />
+ latin:keyStyle="currencyKeyStyle" />
<Key
latin:keyLabel="%"
latin:popupCharacters="‰" />
diff --git a/java/res/xml/method.xml b/java/res/xml/method.xml
index b1f737903..8dec7abec 100644
--- a/java/res/xml/method.xml
+++ b/java/res/xml/method.xml
@@ -65,6 +65,7 @@
android:label="@string/subtype_mode_de_keyboard"
android:imeSubtypeLocale="de"
android:imeSubtypeMode="keyboard"
+ android:imeSubtypeExtraValue="requiresGermanUmlautProcessing"
/>
<subtype android:icon="@drawable/ic_subtype_mic"
android:label="@string/subtype_mode_de_voice"
diff --git a/java/res/xml/prefs.xml b/java/res/xml/prefs.xml
index 9ea801ef7..d031415d7 100644
--- a/java/res/xml/prefs.xml
+++ b/java/res/xml/prefs.xml
@@ -38,6 +38,7 @@
<CheckBoxPreference
android:key="sound_on"
android:title="@string/sound_on_keypress"
+ android:defaultValue="@bool/config_default_sound_enabled"
android:persistent="true"
/>
@@ -53,7 +54,7 @@
android:title="@string/prefs_enable_recorrection"
android:summary="@string/prefs_enable_recorrection_summary"
android:persistent="true"
- android:defaultValue="@bool/default_recorrection_enabled"
+ android:defaultValue="@bool/config_default_recorrection_enabled"
/>
<ListPreference