aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/res/values-bg/strings.xml34
-rw-r--r--java/res/values-ca/strings.xml26
-rw-r--r--java/res/values-cs/strings.xml6
-rw-r--r--java/res/values-da/strings.xml4
-rw-r--r--java/res/values-el/strings.xml4
-rw-r--r--java/res/values-es/strings.xml12
-rw-r--r--java/res/values-fi/strings.xml6
-rw-r--r--java/res/values-gu-rIN/strings.xml2
-rw-r--r--java/res/values-hr/strings.xml22
-rw-r--r--java/res/values-hu/strings.xml2
-rw-r--r--java/res/values-in/strings.xml2
-rw-r--r--java/res/values-iw/strings.xml8
-rw-r--r--java/res/values-ja/strings-config-important-notice.xml2
-rw-r--r--java/res/values-ja/strings.xml4
-rw-r--r--java/res/values-kk-rKZ/strings.xml16
-rw-r--r--java/res/values-km-rKH/strings-emoji-descriptions.xml44
-rw-r--r--java/res/values-km-rKH/strings-letter-descriptions.xml358
-rw-r--r--java/res/values-km-rKH/strings-talkback-descriptions.xml6
-rw-r--r--java/res/values-kn-rIN/strings.xml8
-rw-r--r--java/res/values-lt/strings-emoji-descriptions.xml2
-rw-r--r--java/res/values-lt/strings-talkback-descriptions.xml2
-rw-r--r--java/res/values-ml-rIN/strings.xml14
-rw-r--r--java/res/values-ms-rMY/strings.xml2
-rw-r--r--java/res/values-nb/strings.xml10
-rw-r--r--java/res/values-nl/strings.xml10
-rw-r--r--java/res/values-pl/strings-config-important-notice.xml2
-rw-r--r--java/res/values-pl/strings.xml10
-rw-r--r--java/res/values-ro/strings.xml2
-rw-r--r--java/res/values-sk/strings.xml48
-rw-r--r--java/res/values-sq-rAL/strings.xml6
-rw-r--r--java/res/values-sr/strings.xml14
-rw-r--r--java/res/values-ta-rIN/strings.xml6
-rw-r--r--java/res/values-te-rIN/strings.xml2
-rw-r--r--java/res/values-th/strings.xml6
-rw-r--r--java/res/values-tr/strings.xml8
-rw-r--r--java/res/values-uk/strings.xml18
-rw-r--r--java/res/values-ur-rPK/strings.xml2
-rw-r--r--java/res/values-uz-rUZ/strings-emoji-descriptions.xml2
-rw-r--r--java/res/values-uz-rUZ/strings.xml66
-rw-r--r--java/res/values-vi/strings.xml6
-rw-r--r--java/src/com/android/inputmethod/dictionarypack/ActionBatch.java10
-rw-r--r--java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java2
-rw-r--r--java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java39
-rw-r--r--java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java49
-rw-r--r--java/src/com/android/inputmethod/latin/DictionaryFacilitator.java21
-rw-r--r--java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java64
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java2
-rw-r--r--java/src/com/android/inputmethod/latin/SystemBroadcastReceiver.java21
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java5
-rw-r--r--java/src/com/android/inputmethod/latin/settings/AdvancedSettingsFragment.java3
-rw-r--r--java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerSession.java3
-rw-r--r--java/src/com/android/inputmethod/latin/spellcheck/AndroidWordLevelSpellCheckerSession.java32
-rw-r--r--java/src/com/android/inputmethod/latin/utils/DictionaryInfoUtils.java60
53 files changed, 622 insertions, 493 deletions
diff --git a/java/res/values-bg/strings.xml b/java/res/values-bg/strings.xml
index ee612595b..7388a7a25 100644
--- a/java/res/values-bg/strings.xml
+++ b/java/res/values-bg/strings.xml
@@ -24,8 +24,8 @@
<string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"Търсене на имена"</string>
<string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"За проверка на правописа се ползват записи от списъка с контакти"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"Да вибрира при натискане на клавиш"</string>
- <string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натискане на клавиш"</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"Изскачащ прозорец при натискане на клавиш"</string>
+ <string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натиск. на клавиш"</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"Изск. прозорец при натискане на клавиш"</string>
<string name="settings_screen_preferences" msgid="2696713156722014624">"Предпочитания"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"Профили и поверителност"</string>
<string name="settings_screen_appearance" msgid="7358046399111611615">"Облик и оформления"</string>
@@ -51,7 +51,7 @@
<string name="show_language_switch_key" msgid="5915478828318774384">"Клавиш за превкл. на езика"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Показване при няколко активирани езика за въвеждане"</string>
<string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Отхвърляне на подсказката"</string>
- <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Без задържане"</string>
+ <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Без забавяне"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"По подразбиране"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> милисек"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Станд. за системата"</string>
@@ -61,12 +61,12 @@
<string name="enable_metrics_logging" msgid="5506372337118822837">"Подобряване на <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"Точка чрез двоен интервал"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"Двукр. докосване на клав. за интервал вмъква точка, следвана от интервал"</string>
- <string name="auto_cap" msgid="1719746674854628252">"Автоматично поставяне на главни букви"</string>
+ <string name="auto_cap" msgid="1719746674854628252">"Авт. поставяне на главни букви"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Правене на първата дума от всяко изречение главна"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Личен речник"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Добавени речници"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Основен речник"</string>
- <string name="prefs_show_suggestions" msgid="8026799663445531637">"Показване на предложения за поправка"</string>
+ <string name="prefs_show_suggestions" msgid="8026799663445531637">"Показване на предложения"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Показване на предложения, докато пишете"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Блокиране на обидни думи"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Без потенциално обидни думи"</string>
@@ -76,16 +76,16 @@
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умерено"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Агресивно"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Много агресивно"</string>
- <string name="bigram_prediction" msgid="1084449187723948550">"Предложения за следващата дума"</string>
+ <string name="bigram_prediction" msgid="1084449187723948550">"Предл. за следваща дума"</string>
<string name="bigram_prediction_summary" msgid="3896362682751109677">"Използване на предишната дума при даване на предложения"</string>
- <string name="gesture_input" msgid="826951152254563827">"Активиране на въвеждането чрез жест"</string>
+ <string name="gesture_input" msgid="826951152254563827">"Актив. на въвеждане чрез жест"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Въвеждане на дума чрез плъзгане на пръст през буквите"</string>
- <string name="gesture_preview_trail" msgid="3802333369335722221">"Следа на жестовете: Показване"</string>
- <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Динамична плаваща визуализация"</string>
+ <string name="gesture_preview_trail" msgid="3802333369335722221">"Следа на жестовете"</string>
+ <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Динам. плаваща визуализ."</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Преглед на предложената дума при използване на жестове"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Жест за фрази"</string>
<string name="gesture_space_aware_summary" msgid="4371385818348528538">"При жестове въвеждaйте интервали чрез плъзгане през съотв. клавиш"</string>
- <string name="voice_input" msgid="3583258583521397548">"Клавиш за гласово въвеждане"</string>
+ <string name="voice_input" msgid="3583258583521397548">"Клавиш за глас. въвеждане"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"Няма активирани методи на гласово въвеждане. Проверете настройките за език и въвеждане."</string>
<string name="configure_input_method" msgid="373356270290742459">"Конфигуриране на въвеждането"</string>
<string name="language_selection_title" msgid="3666971864764478269">"Езици"</string>
@@ -115,12 +115,12 @@
<string name="subtype_generic_traditional" msgid="8584594350973800586">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (традиционна клавиатура)"</string>
<string name="subtype_generic_compact" msgid="3353673321203202922">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (компактна)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Без език (латиница)"</string>
- <string name="subtype_no_language_qwerty" msgid="244337630616742604">"Латиница (QWERTY)"</string>
- <string name="subtype_no_language_qwertz" msgid="443066912507547976">"Латиница (QWERTZ)"</string>
- <string name="subtype_no_language_azerty" msgid="8144348527575640087">"Латиница (AZERTY)"</string>
- <string name="subtype_no_language_dvorak" msgid="1564494667584718094">"Латиница (Дворак)"</string>
- <string name="subtype_no_language_colemak" msgid="5837418400010302623">"Латиница (Коулмак)"</string>
- <string name="subtype_no_language_pcqwerty" msgid="5354918232046200018">"Латиница (PC)"</string>
+ <string name="subtype_no_language_qwerty" msgid="244337630616742604">"латиница (QWERTY)"</string>
+ <string name="subtype_no_language_qwertz" msgid="443066912507547976">"латиница (QWERTZ)"</string>
+ <string name="subtype_no_language_azerty" msgid="8144348527575640087">"латиница (AZERTY)"</string>
+ <string name="subtype_no_language_dvorak" msgid="1564494667584718094">"латиница (Дворак)"</string>
+ <string name="subtype_no_language_colemak" msgid="5837418400010302623">"латиница (Коулмак)"</string>
+ <string name="subtype_no_language_pcqwerty" msgid="5354918232046200018">"латиница (PC)"</string>
<string name="subtype_emoji" msgid="7483586578074549196">"Емотикони"</string>
<string name="keyboard_theme" msgid="4909551808526178852">"Тема на клавиатурата"</string>
<string name="custom_input_styles_title" msgid="8429952441821251512">"Персон. стилове за въвежд."</string>
@@ -137,7 +137,7 @@
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Продълж. на вибриране при натискане"</string>
<string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Сила на звука при натиск. на клавиш"</string>
<string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Забавяне при продълж. натискане"</string>
- <string name="button_default" msgid="3988017840431881491">"Стандартни"</string>
+ <string name="button_default" msgid="3988017840431881491">"Стандартно"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Добре дошли в/ъв <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"с въвеждане чрез жест"</string>
<string name="setup_start_action" msgid="8936036460897347708">"Първи стъпки"</string>
diff --git a/java/res/values-ca/strings.xml b/java/res/values-ca/strings.xml
index c9b51a785..f9686b7c2 100644
--- a/java/res/values-ca/strings.xml
+++ b/java/res/values-ca/strings.xml
@@ -47,7 +47,7 @@
<string name="add_account_to_enable_sync" msgid="7836932571852055265">"Afegeix un compte de Google al dispositiu per activar la funció"</string>
<string name="cloud_sync_summary_disabled_work_profile" msgid="1381770407303129164">"Sincron. no disponible per a disps. amb comptes de Google Apps for Business"</string>
<string name="include_other_imes_in_language_switch_list" msgid="4533689960308565519">"Altres mètodes d\'introducció"</string>
- <string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"La tecla de canvi d\'idioma serveix també per a altres mètodes d\'entrada"</string>
+ <string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"La tecla de canvi d\'idioma serveix també per a altres mètodes"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Tecla de canvi d\'idioma"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Mostra-la quan hi hagi diversos idiomes d\'introducció activats"</string>
<string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Retard en ampliar tecla"</string>
@@ -57,10 +57,10 @@
<string name="settings_system_default" msgid="6268225104743331821">"Predeterm. del sist."</string>
<string name="use_contacts_dict" msgid="4435317977804180815">"Suggereix noms de contactes"</string>
<string name="use_contacts_dict_summary" msgid="6599983334507879959">"Utilitza els noms de contactes per fer suggeriments i correccions"</string>
- <string name="use_personalized_dicts" msgid="5167396352105467626">"Suggeriments personalitz."</string>
+ <string name="use_personalized_dicts" msgid="5167396352105467626">"Suggeriments personalitzats"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"Millora <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"Punt amb doble espai"</string>
- <string name="use_double_space_period_summary" msgid="6532892187247952799">"Picar dues vegades la barra d\'espai insereix punt i espai blanc"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"Doble espai per punt"</string>
+ <string name="use_double_space_period_summary" msgid="6532892187247952799">"Fer dos tocs a la barra d\'espai insereix punt seguit d\'un espai"</string>
<string name="auto_cap" msgid="1719746674854628252">"Majúscules automàtiques"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Posa en majúscula la primera paraula de cada frase"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Diccionari personal"</string>
@@ -71,23 +71,23 @@
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Bloqueja paraules ofensives"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"No suggereixis paraules potencialment ofensives"</string>
<string name="auto_correction" msgid="7630720885194996950">"Correcció automàtica"</string>
- <string name="auto_correction_summary" msgid="5625751551134658006">"Prémer tecla d\'espai o punt. per corregir errors"</string>
+ <string name="auto_correction_summary" msgid="5625751551134658006">"Tecla d\'espai i signes de puntuació corregeixen paraules amb errors"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desactiva"</string>
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderada"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Agressiu"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Molt agressiu"</string>
- <string name="bigram_prediction" msgid="1084449187723948550">"Suggeriments de paraula següent"</string>
- <string name="bigram_prediction_summary" msgid="3896362682751109677">"Utilitza la paraula anterior a l\'hora de fer suggeriments"</string>
+ <string name="bigram_prediction" msgid="1084449187723948550">"Suggeriments paraula següent"</string>
+ <string name="bigram_prediction_summary" msgid="3896362682751109677">"Utilitza la paraula anterior per fer suggeriments"</string>
<string name="gesture_input" msgid="826951152254563827">"Activa l\'escriptura gestual"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Escriu una paraula fent lliscar el dit per les lletres"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Mostra el recorregut del gest"</string>
- <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Visualitz. prèvia dinàmica flotant"</string>
- <string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Consulta la paraula suggerida mentre fas el gest"</string>
- <string name="gesture_space_aware" msgid="2078291600664682496">"Formula el gest"</string>
- <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Per afegir espais als gestos, apropa el dit a la tecla d\'espai."</string>
+ <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Previsualització dinàmica flotant"</string>
+ <string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Mostra la paraula suggerida en fer els gestos"</string>
+ <string name="gesture_space_aware" msgid="2078291600664682496">"Gest de frase"</string>
+ <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Per afegir espais als gestos, apropa el dit a la tecla d\'espai"</string>
<string name="voice_input" msgid="3583258583521397548">"Tecla d\'entrada de veu"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"No hi ha cap mètode d\'introducció activat. Comprova la configuració d\'Idioma i introducció de text."</string>
- <string name="configure_input_method" msgid="373356270290742459">"Configura mètodes d\'entrada"</string>
+ <string name="configure_input_method" msgid="373356270290742459">"Configura mètodes d\'introducció"</string>
<string name="language_selection_title" msgid="3666971864764478269">"Idiomes"</string>
<string name="help_and_feedback" msgid="5328219371839879161">"Ajuda i suggeriments"</string>
<string name="select_language" msgid="5709487854987078367">"Idiomes"</string>
@@ -135,7 +135,7 @@
<string name="not_now" msgid="6172462888202790482">"Ara no"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Ja existeix aquest estil d\'entrada: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Durada vibració en prémer"</string>
- <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Volum del so en prémer tecles"</string>
+ <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Volum so en prémer tecla"</string>
<string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Retard en mantenir premut"</string>
<string name="button_default" msgid="3988017840431881491">"Predeterminat"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Et donem la benvinguda a <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml
index fcc1e67d4..a9bfb8695 100644
--- a/java/res/values-cs/strings.xml
+++ b/java/res/values-cs/strings.xml
@@ -50,7 +50,7 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Klávesa pro přepínání jazyka ovládá i další metody zadávání"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Klávesa přepínání jazyka"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Zobrazit, když je aktivováno více vstupních jazyků"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Prodleva vysk. okna klávesnice"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Prodleva detailu znaku"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Bez prodlevy"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Výchozí"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
@@ -134,7 +134,7 @@
<string name="enable" msgid="5031294444630523247">"Povolit"</string>
<string name="not_now" msgid="6172462888202790482">"Teď ne"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Tento styl zadávání již existuje: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
- <string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Délka vibrace u stisku klávesy"</string>
+ <string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Délka vibrace při stisknutí klávesy"</string>
<string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Hlasitost stisknutí klávesy"</string>
<string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Prodleva dlouhého stisknutí"</string>
<string name="button_default" msgid="3988017840431881491">"Výchozí"</string>
@@ -197,7 +197,7 @@
<string name="user_dict_settings_add_word_option_name" msgid="6665558053408962865">"Slovo:"</string>
<string name="user_dict_settings_add_shortcut_option_name" msgid="3094731590655523777">"Zkratka:"</string>
<string name="user_dict_settings_add_locale_option_name" msgid="4738643440987277705">"Jazyk:"</string>
- <string name="user_dict_settings_add_word_hint" msgid="4902434148985906707">"Napište slovo."</string>
+ <string name="user_dict_settings_add_word_hint" msgid="4902434148985906707">"Napište slovo"</string>
<string name="user_dict_settings_add_shortcut_hint" msgid="2265453012555060178">"Volitelná zkratka"</string>
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"Upravit slovo"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Upravit"</string>
diff --git a/java/res/values-da/strings.xml b/java/res/values-da/strings.xml
index 31e2c1028..6230127b9 100644
--- a/java/res/values-da/strings.xml
+++ b/java/res/values-da/strings.xml
@@ -50,8 +50,8 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Tasten til sprogskift gælder også for andre inputmetoder"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Knap til sprogskift"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Vis, når der er aktiveret flere inputsprog"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Forsink. afvis. af taste-pop op"</string>
- <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Ingen forsink."</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Forsinkelse ved afvisning af taste-pop op"</string>
+ <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Ingen forsinkelse"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Standard"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Systemstandard"</string>
diff --git a/java/res/values-el/strings.xml b/java/res/values-el/strings.xml
index 457e1006a..b0f123479 100644
--- a/java/res/values-el/strings.xml
+++ b/java/res/values-el/strings.xml
@@ -102,8 +102,8 @@
<string name="account_select_cancel" msgid="5181012062618504340">"Ακύρωση"</string>
<string name="account_select_sign_out" msgid="3299651159390187933">"Έξοδος"</string>
<string name="account_select_title" msgid="6279711684772922649">"Επιλέξτε λογαριασμό για χρήση"</string>
- <string name="subtype_en_GB" msgid="88170601942311355">"Αγγλικά (Η.Β.)"</string>
- <string name="subtype_en_US" msgid="6160452336634534239">"Αγγλικά (Η.Π.Α)"</string>
+ <string name="subtype_en_GB" msgid="88170601942311355">"Αγγλικά (ΗΒ)"</string>
+ <string name="subtype_en_US" msgid="6160452336634534239">"Αγγλικά (ΗΠΑ)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Ισπανικά (ΗΠΑ)"</string>
<string name="subtype_hi_ZZ" msgid="8860448146262798623">"Hinglish"</string>
<string name="subtype_sr_ZZ" msgid="9059219552986034343">"Σερβικά (Λατινικά)"</string>
diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml
index 8a267ddf0..83f3ca2d1 100644
--- a/java/res/values-es/strings.xml
+++ b/java/res/values-es/strings.xml
@@ -62,12 +62,12 @@
<string name="use_double_space_period" msgid="8781529969425082860">"Punto y espacio"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"Si tocas dos veces el espacio, se inserta un punto seguido de un espacio"</string>
<string name="auto_cap" msgid="1719746674854628252">"Mayúsculas automáticas"</string>
- <string name="auto_cap_summary" msgid="7934452761022946874">"Escribir la primera letra de cada palabra en mayúscula"</string>
+ <string name="auto_cap_summary" msgid="7934452761022946874">"Escribir la primera letra de cada frase en mayúscula"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Diccionario personal"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Diccionarios complementarios"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Diccionario principal"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"Sugerencias de correcciones"</string>
- <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Muestra las palabras sugeridas mientras se escribe."</string>
+ <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Mostrar las palabras sugeridas mientras se escribe"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Bloquear palabras ofensivas"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"No sugerir palabras potencialmente ofensivas"</string>
<string name="auto_correction" msgid="7630720885194996950">"Autocorrección"</string>
@@ -134,9 +134,9 @@
<string name="enable" msgid="5031294444630523247">"Habilitar"</string>
<string name="not_now" msgid="6172462888202790482">"Ahora no"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Ya existe el estilo de entrada <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>."</string>
- <string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Duración de vibración al pulsar"</string>
- <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Volumen sonido al pulsar tecla"</string>
- <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Retraso de pulsación prolongada"</string>
+ <string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Duración de la vibración al pulsar"</string>
+ <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Volumen de sonido al pulsar tecla"</string>
+ <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Retraso al mantener pulsado"</string>
<string name="button_default" msgid="3988017840431881491">"Predeterminado"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Te damos la bienvenida a <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"con escritura gestual"</string>
@@ -203,7 +203,7 @@
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Editar"</string>
<string name="user_dict_settings_context_menu_delete_title" msgid="8142932447689461181">"Eliminar"</string>
<string name="user_dict_settings_empty_text" msgid="558499587532668203">"No tienes ninguna palabra en el diccionario del usuario. Toca el botón Añadir (+) para añadir una palabra."</string>
- <string name="user_dict_settings_all_languages" msgid="8276126583216298886">"Para todos los idiomas"</string>
+ <string name="user_dict_settings_all_languages" msgid="8276126583216298886">"Todos los idiomas"</string>
<string name="user_dict_settings_more_languages" msgid="7131268499685180461">"Más idiomas…"</string>
<string name="user_dict_settings_delete" msgid="110413335187193859">"Eliminar"</string>
<string name="user_dict_fast_scroll_alphabet" msgid="5431919401558285473">" ABCDEFGHIJKLMNÑOPQRSTUVWXYZ"</string>
diff --git a/java/res/values-fi/strings.xml b/java/res/values-fi/strings.xml
index da3439ada..fb5560756 100644
--- a/java/res/values-fi/strings.xml
+++ b/java/res/values-fi/strings.xml
@@ -84,7 +84,7 @@
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dynaaminen kelluva esikatselu"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Näytä ehdotettu sana piirron aikana"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Ilmausele"</string>
- <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Lisää välilyöntejä eleiden aikana liukumalla välilyöntinäppäim."</string>
+ <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Lisää välilyöntejä eleiden aikana liukumalla välilyöntinäppäimelle"</string>
<string name="voice_input" msgid="3583258583521397548">"Äänisyötenäppäin"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"Äänen syöttötapoja ei ole otettu käyttöön. Tarkista Kieli ja syöttötapa -asetukset."</string>
<string name="configure_input_method" msgid="373356270290742459">"Määritä syöttötavat"</string>
@@ -115,7 +115,7 @@
<string name="subtype_generic_traditional" msgid="8584594350973800586">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (perinteinen)"</string>
<string name="subtype_generic_compact" msgid="3353673321203202922">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tiivis)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Ei kieltä (aakkoset)"</string>
- <string name="subtype_no_language_qwerty" msgid="244337630616742604">"Aakkoset (QWERTY)"</string>
+ <string name="subtype_no_language_qwerty" msgid="244337630616742604">"aakkoset (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Aakkoset (QWERTZ)"</string>
<string name="subtype_no_language_azerty" msgid="8144348527575640087">"Aakkoset (AZERTY)"</string>
<string name="subtype_no_language_dvorak" msgid="1564494667584718094">"Aakkoset (Dvorak)"</string>
@@ -135,7 +135,7 @@
<string name="not_now" msgid="6172462888202790482">"Ei nyt"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Syöttötyyli on jo olemassa: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Painalluksen värinän kesto"</string>
- <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Näppäinpainalluksen äänenvoim."</string>
+ <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Näppäinpainalluksen äänenvoimakkuus"</string>
<string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Pitkän painalluksen viive"</string>
<string name="button_default" msgid="3988017840431881491">"Oletusarvot"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Tervetuloa käyttämään sovellusta <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
diff --git a/java/res/values-gu-rIN/strings.xml b/java/res/values-gu-rIN/strings.xml
index 550460d07..25da7d4c8 100644
--- a/java/res/values-gu-rIN/strings.xml
+++ b/java/res/values-gu-rIN/strings.xml
@@ -43,7 +43,7 @@
<string name="clear_sync_data_confirmation" msgid="2811931135574727678">"મેઘમાંથી તમારો સમન્વયિત ડેટા કાઢી નાખવામાં આવશે. શું તમે ખરેખર આ કરવા માંગો છો?"</string>
<string name="clear_sync_data_ok" msgid="613104067705915132">"કાઢી નાખો"</string>
<string name="cloud_sync_cancel" msgid="5877481252150919037">"રદ કરો"</string>
- <string name="cloud_sync_opt_in_text" msgid="9176039655776298248">"તમારો વ્યક્તિગત શબ્દકોશનો Google સર્વર્સ પર બેક અપ લેવાશે અને સમન્વયિત કરવામાં આવશે. અમારા ઉત્પાદનોને બહેતર બનાવવામાં સહાય માટે શબ્દ આવૃત્તિની આંકડાકીય માહિતી ભેગી કરવામાં આવી શકે છે. બધી માહિતીનો સંગ્રહ અને ઉપયોગ "<a href="https://www.google.com/policies/privacy">"Google ની ગોપનીયતા નીતિ"</a>"ની સાથે સંસંગત હશે."</string>
+ <string name="cloud_sync_opt_in_text" msgid="9176039655776298248">"તમારો વ્યક્તિગત શબ્દકોશનો Google સર્વર્સ પર બેક અપ લેવાશે અને સમન્વયિત કરવામાં આવશે. અમારા ઉત્પાદનોને બહેતર બનાવવામાં સહાય માટે શબ્દ આવૃત્તિની આંકડાકીય માહિતી ભેગી કરવામાં આવી શકે છે. બધી માહિતીનો સંગ્રહ અને ઉપયોગ "<a href="https://www.google.com/policies/privacy">"Google ની ગોપનીયતા નીતિ"</a>"ની સાથે સુસંગત હશે."</string>
<string name="add_account_to_enable_sync" msgid="7836932571852055265">"કૃપા કરીને આ સુવિધા સક્ષમ કરવા માટે આ ઉપકરણ પર Google એકાઉન્ટ ઉમેરો"</string>
<string name="cloud_sync_summary_disabled_work_profile" msgid="1381770407303129164">"વ્યવસાય એકાઉન્ટ્સ માટે Google Apps સાથેના ઉપકરણો માટે સમન્વયન ઉપલબ્ધ નથી"</string>
<string name="include_other_imes_in_language_switch_list" msgid="4533689960308565519">"અન્ય ઇનપુટ પદ્ધતિઓ પર સ્વિચ કરો"</string>
diff --git a/java/res/values-hr/strings.xml b/java/res/values-hr/strings.xml
index db4c24ee6..c98ed6689 100644
--- a/java/res/values-hr/strings.xml
+++ b/java/res/values-hr/strings.xml
@@ -25,7 +25,7 @@
<string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Provjera pravopisa upotrebljava unose iz vašeg popisa kontakata"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibracija pri pritisku na tipku"</string>
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk pri pritisku tipke"</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"Povećanja na pritisak tipke"</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"Povećani font na pritisak tipke"</string>
<string name="settings_screen_preferences" msgid="2696713156722014624">"Postavke"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"Računi i privatnost"</string>
<string name="settings_screen_appearance" msgid="7358046399111611615">"Izgled i rasporedi"</string>
@@ -50,13 +50,13 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Tipka za prebacivanje jezika pokriva i druge načine unosa"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Tipka za izmjenjivanje jezika"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Prikaži kada je omogućen unos na više jezika"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Odgoda prikaza tipki"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Odgoda odbac. poveć. fonta"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Bez odgode"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Zadano"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Zadano sustavom"</string>
<string name="use_contacts_dict" msgid="4435317977804180815">"Predlaži imena kontakata"</string>
- <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Upotreba imena iz Kontakata za prijedloge i ispravke"</string>
+ <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Koristi imena iz Kontakata za prijedloge i ispravke"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Prilagođeni prijedlozi"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"Poboljšaj aplikaciju <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"Točka s dva razmaka"</string>
@@ -64,7 +64,7 @@
<string name="auto_cap" msgid="1719746674854628252">"Automatsko pisanje velikih slova"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Napiši velikim slovom prvu riječ svake rečenice"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Osobni rječnik"</string>
- <string name="configure_dictionaries_title" msgid="4238652338556902049">"Rječnici-dodaci"</string>
+ <string name="configure_dictionaries_title" msgid="4238652338556902049">"Rječnici kao dodaci"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Glavni rječnik"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"Pokaži prijedloge ispravka"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Prikazivanje predloženih riječi prilikom upisivanja"</string>
@@ -83,8 +83,8 @@
<string name="gesture_preview_trail" msgid="3802333369335722221">"Prikaži trag pokreta"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dinamički plutajući pregled"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Vidi predloženu riječ tijekom pokreta"</string>
- <string name="gesture_space_aware" msgid="2078291600664682496">"Pokret fraze"</string>
- <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Umećite razmake tijekom izvođenja pokreta klizeći do razmaknice"</string>
+ <string name="gesture_space_aware" msgid="2078291600664682496">"Unos izraza kretnjom"</string>
+ <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Umećite razmake tijekom izvođenja kretnji kliznuvši prema razmaknici"</string>
<string name="voice_input" msgid="3583258583521397548">"Tipka za glasovni unos"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"Nije omogućen nijedan način glasovnog unosa. Provjerite postavke jezika i unosa."</string>
<string name="configure_input_method" msgid="373356270290742459">"Konfiguriraj načine ulaza"</string>
@@ -115,9 +115,9 @@
<string name="subtype_generic_traditional" msgid="8584594350973800586">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicionalni)"</string>
<string name="subtype_generic_compact" msgid="3353673321203202922">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (kompaktna)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Nema jezika (abeceda)"</string>
- <string name="subtype_no_language_qwerty" msgid="244337630616742604">"Abeceda (QWERTY)"</string>
- <string name="subtype_no_language_qwertz" msgid="443066912507547976">"Abeceda (QWERTZ)"</string>
- <string name="subtype_no_language_azerty" msgid="8144348527575640087">"Abeceda (AZERTY)"</string>
+ <string name="subtype_no_language_qwerty" msgid="244337630616742604">"abeceda (QWERTY)"</string>
+ <string name="subtype_no_language_qwertz" msgid="443066912507547976">"abeceda (QWERTZ)"</string>
+ <string name="subtype_no_language_azerty" msgid="8144348527575640087">"abeceda (AZERTY)"</string>
<string name="subtype_no_language_dvorak" msgid="1564494667584718094">"Abeceda (Dvorak)"</string>
<string name="subtype_no_language_colemak" msgid="5837418400010302623">"Abeceda (Colemak)"</string>
<string name="subtype_no_language_pcqwerty" msgid="5354918232046200018">"Abeceda (PC)"</string>
@@ -160,7 +160,7 @@
<string name="dictionary_provider_name" msgid="3027315045397363079">"Davatelj rječnika"</string>
<string name="dictionary_service_name" msgid="6237472350693511448">"Usluga rječnika"</string>
<string name="download_description" msgid="6014835283119198591">"Ažurirane informacije rječnika"</string>
- <string name="dictionary_settings_title" msgid="8091417676045693313">"Rječnici dodaci"</string>
+ <string name="dictionary_settings_title" msgid="8091417676045693313">"Rječnici kao dodaci"</string>
<string name="dictionary_install_over_metered_network_prompt" msgid="3587517870006332980">"Dostupan je rječnik"</string>
<string name="dictionary_settings_summary" msgid="5305694987799824349">"Postavke za rječnike"</string>
<string name="user_dictionaries" msgid="3582332055892252845">"Korisnički rječnici"</string>
@@ -202,7 +202,7 @@
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"Uređivanje riječi"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Uređivanje"</string>
<string name="user_dict_settings_context_menu_delete_title" msgid="8142932447689461181">"Brisanje"</string>
- <string name="user_dict_settings_empty_text" msgid="558499587532668203">"Nemate nijednu riječ u korisničkom rječniku. Riječ možete dodati dodirom na gumb Dodaj (+)."</string>
+ <string name="user_dict_settings_empty_text" msgid="558499587532668203">"Nemate nijednu riječ u korisničkom rječniku. Riječ možete dodati tako da dodirnete Dodaj (+)."</string>
<string name="user_dict_settings_all_languages" msgid="8276126583216298886">"Za sve jezike"</string>
<string name="user_dict_settings_more_languages" msgid="7131268499685180461">"Više jezika…"</string>
<string name="user_dict_settings_delete" msgid="110413335187193859">"Izbriši"</string>
diff --git a/java/res/values-hu/strings.xml b/java/res/values-hu/strings.xml
index ae2fa476f..14c51bf99 100644
--- a/java/res/values-hu/strings.xml
+++ b/java/res/values-hu/strings.xml
@@ -71,7 +71,7 @@
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Sértő szavak kizárása"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Ne javasoljon esetlegesen sértő szavakat"</string>
<string name="auto_correction" msgid="7630720885194996950">"Automatikus javítás"</string>
- <string name="auto_correction_summary" msgid="5625751551134658006">"Szóköz és központozás automatikusan javítja az elgépelést"</string>
+ <string name="auto_correction_summary" msgid="5625751551134658006">"A szóköz és központozás automatikusan javítja az elgépelést"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Ki"</string>
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mérsékelt"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Agresszív"</string>
diff --git a/java/res/values-in/strings.xml b/java/res/values-in/strings.xml
index f1ea8a421..099f58022 100644
--- a/java/res/values-in/strings.xml
+++ b/java/res/values-in/strings.xml
@@ -34,7 +34,7 @@
<string name="settings_screen_advanced" msgid="7472408607625972994">"Lanjutan"</string>
<string name="settings_screen_theme" msgid="2137262503543943871">"Tema"</string>
<string name="enable_split_keyboard" msgid="4177264923999493614">"Aktifkan keyboard terpisah"</string>
- <string name="cloud_sync_title" msgid="8579271074443847055">"Sinkronisasi Keyboard Google"</string>
+ <string name="cloud_sync_title" msgid="8579271074443847055">"Sinkronisasi Google Keyboard"</string>
<string name="cloud_sync_summary" msgid="7684887161145650857">"Sinkronisasi diaktifkan"</string>
<string name="cloud_sync_summary_disabled" msgid="4553338970382825796">"Menyinkronkan kamus pribadi di perangkat"</string>
<string name="sync_now_title" msgid="3088838136743277721">"Sinkronkan sekarang"</string>
diff --git a/java/res/values-iw/strings.xml b/java/res/values-iw/strings.xml
index eb84024bf..d5d77778e 100644
--- a/java/res/values-iw/strings.xml
+++ b/java/res/values-iw/strings.xml
@@ -61,14 +61,14 @@
<string name="enable_metrics_logging" msgid="5506372337118822837">"שפר את <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"רווח כפול לנקודה"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"הקשה פעמיים על מקש הרווח מזינה נקודה ואחריה רווח"</string>
- <string name="auto_cap" msgid="1719746674854628252">"הפיכת אותיות לרישיות באופן אוטומטי"</string>
+ <string name="auto_cap" msgid="1719746674854628252">"אותיות רישיות באופן אוטומטי"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"השתמש באות גדולה במילה הראשונה של כל משפט"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"מילון אישי"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"תוספי מילונים"</string>
<string name="main_dictionary" msgid="4798763781818361168">"מילון ראשי"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"הצג הצעות לתיקונים"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"הצג הצעות למילים בעת הקלדה"</string>
- <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"חסום מילים פוגעניות"</string>
+ <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"חסימת מילים פוגעניות"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"אל תציע מילים שעלולות להיות פוגעניות"</string>
<string name="auto_correction" msgid="7630720885194996950">"תיקון אוטומטי"</string>
<string name="auto_correction_summary" msgid="5625751551134658006">"מקש הרווח ופיסוק מתקנים אוטומטית שגיאות הקלדה"</string>
@@ -80,7 +80,7 @@
<string name="bigram_prediction_summary" msgid="3896362682751109677">"השתמש במילה הקודמת ביצירת הצעות"</string>
<string name="gesture_input" msgid="826951152254563827">"אפשר הקלדה ללא הרמת אצבע"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"הזן מילה על ידי החלקת האצבע מאות לאות"</string>
- <string name="gesture_preview_trail" msgid="3802333369335722221">"הצג שובל תנועות"</string>
+ <string name="gesture_preview_trail" msgid="3802333369335722221">"הצגת שובל תנועות"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"תצוגה צפה דינמית"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"ראה את המילה המוצעת תוך כדי הזזת האצבע"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"הקלדת משפט בהחלקה"</string>
@@ -130,7 +130,7 @@
<string name="save" msgid="7646738597196767214">"שמור"</string>
<string name="subtype_locale" msgid="8576443440738143764">"שפה"</string>
<string name="keyboard_layout_set" msgid="4309233698194565609">"פריסה"</string>
- <string name="custom_input_style_note_message" msgid="8826731320846363423">"יש להפעיל את סגנון הקלט המותאם אישית לפני שתוכל להשתמש בו. האם אתה רוצה להפעיל אותו עכשיו?"</string>
+ <string name="custom_input_style_note_message" msgid="8826731320846363423">"יש להפעיל את סגנון הקלט המותאם אישית לפני שתוכל להשתמש בו. האם ברצונך להפעיל אותו עכשיו?"</string>
<string name="enable" msgid="5031294444630523247">"הפעל"</string>
<string name="not_now" msgid="6172462888202790482">"לא עכשיו"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"סגנון קלט זהה כבר קיים: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
diff --git a/java/res/values-ja/strings-config-important-notice.xml b/java/res/values-ja/strings-config-important-notice.xml
index 03c1f48e9..200719cbd 100644
--- a/java/res/values-ja/strings-config-important-notice.xml
+++ b/java/res/values-ja/strings-config-important-notice.xml
@@ -20,5 +20,5 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="use_personalized_dicts_summary" msgid="590432261305469627">"メッセージなどのやり取りや入力したデータから入力候補を予測します"</string>
+ <string name="use_personalized_dicts_summary" msgid="590432261305469627">"メッセージなどのやり取りや入力したデータから入力候補を予測する"</string>
</resources>
diff --git a/java/res/values-ja/strings.xml b/java/res/values-ja/strings.xml
index 275e345d3..5567399a8 100644
--- a/java/res/values-ja/strings.xml
+++ b/java/res/values-ja/strings.xml
@@ -56,7 +56,7 @@
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g>ミリ秒"</string>
<string name="settings_system_default" msgid="6268225104743331821">"システムのデフォルト"</string>
<string name="use_contacts_dict" msgid="4435317977804180815">"連絡先の名前を候補に表示"</string>
- <string name="use_contacts_dict_summary" msgid="6599983334507879959">"連絡先の名前を使用して候補表示や自動修正を行います"</string>
+ <string name="use_contacts_dict_summary" msgid="6599983334507879959">"連絡先の名前を使用して候補表示や自動修正を行う"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"入力候補のカスタマイズ"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"<xliff:g id="APPLICATION_NAME">%s</xliff:g>を改善"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"ダブルスペースピリオド"</string>
@@ -77,7 +77,7 @@
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"強"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"最も強い"</string>
<string name="bigram_prediction" msgid="1084449187723948550">"次の入力候補"</string>
- <string name="bigram_prediction_summary" msgid="3896362682751109677">"前の単語に基づいて入力候補を表示します"</string>
+ <string name="bigram_prediction_summary" msgid="3896362682751109677">"前の単語に基づいて入力候補を表示する"</string>
<string name="gesture_input" msgid="826951152254563827">"ジェスチャー入力を有効にする"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"文字間をスライドして単語を入力できます"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"ジェスチャートレイルを表示"</string>
diff --git a/java/res/values-kk-rKZ/strings.xml b/java/res/values-kk-rKZ/strings.xml
index 273074493..6d47bff72 100644
--- a/java/res/values-kk-rKZ/strings.xml
+++ b/java/res/values-kk-rKZ/strings.xml
@@ -25,7 +25,7 @@
<string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Емлені тексеру құралы контактілер тізімінің жазбаларын пайдаланады"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"Пернені басқан кездегі діріл"</string>
<string name="sound_on_keypress" msgid="6093592297198243644">"Пернені басу кезіндегі дыбыс"</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"Пернені басқан кездегі ашылмалы мәзір"</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"Басылған пернені үлкейтіп көрсету"</string>
<string name="settings_screen_preferences" msgid="2696713156722014624">"Қалауларыңыз"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"Есептік жазбалар және құпиялық"</string>
<string name="settings_screen_appearance" msgid="7358046399111611615">"Сыртқы түр және орналасулар"</string>
@@ -50,7 +50,7 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Тілді ауыстыру пернесі басқа енгізу әдістерін де қамтиды"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Тілді ауыстыру пернесі"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Бірнеше енгізу тілдері қосылған кезде көрсету"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Перненің ашылмалы мәзірі кідірісті жояды"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Перненің ұлғайған кескінін жабу"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Кідіріс жоқ"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Әдепкі"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g>мс"</string>
@@ -59,8 +59,8 @@
<string name="use_contacts_dict_summary" msgid="6599983334507879959">"Ұсыныстар мен түзетулер үшін контакт аттарын пайдалану"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Жекелендірілген ұсыныстар"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> жақсарту"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"Қос бос орын кезеңі"</string>
- <string name="use_double_space_period_summary" msgid="6532892187247952799">"Бос орынға екі рет түрту бос орыннан кейінгі кезеңді енгізеді"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"Нүкте мен бос орын қою"</string>
+ <string name="use_double_space_period_summary" msgid="6532892187247952799">"Бос орын пернесін екі рет түртсе, нүкте мен бос орын қойылады"</string>
<string name="auto_cap" msgid="1719746674854628252">"Авто бас әріптерге түрлендіру"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Әрбір сөйлемнің бірінші әріпін бас әріпке түрлендіру"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Жеке сөздік"</string>
@@ -68,7 +68,7 @@
<string name="main_dictionary" msgid="4798763781818361168">"Негізгі сөздік"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"Түзету ұсыныстарын көрсету"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Теру кезінде ұсынылған сөздерді көрсету"</string>
- <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Қорлаушы сөздерді құлыптамау"</string>
+ <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Қорлаушы сөздерді тыю"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Қорлаушы сөздерді ұсынбау"</string>
<string name="auto_correction" msgid="7630720885194996950">"Авто түзету"</string>
<string name="auto_correction_summary" msgid="5625751551134658006">"Бос орын және тыныс белгі автоматты түрде қателерді түзетеді"</string>
@@ -77,7 +77,7 @@
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Белсенді"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Өте белсенді"</string>
<string name="bigram_prediction" msgid="1084449187723948550">"Келесі сөз ұсыныстары"</string>
- <string name="bigram_prediction_summary" msgid="3896362682751109677">"Ұсыныстар жасауда бастапқы сөзді пайдалану"</string>
+ <string name="bigram_prediction_summary" msgid="3896362682751109677">"Ұсыныстар жасауда алдыңғы сөзді пайдалану"</string>
<string name="gesture_input" msgid="826951152254563827">"Қимылмен теруді қосу"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Әріптерді жанап өту арқылы сөзді енгізу"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Қимыл қадамын көрсету"</string>
@@ -126,10 +126,10 @@
<string name="custom_input_styles_title" msgid="8429952441821251512">"Реттелетін енгізу стильдері"</string>
<string name="add_style" msgid="6163126614514489951">"Стиль қосу"</string>
<string name="add" msgid="8299699805688017798">"Қосу"</string>
- <string name="remove" msgid="4486081658752944606">"Аластау"</string>
+ <string name="remove" msgid="4486081658752944606">"Өшіру"</string>
<string name="save" msgid="7646738597196767214">"Сақтау"</string>
<string name="subtype_locale" msgid="8576443440738143764">"Тіл"</string>
- <string name="keyboard_layout_set" msgid="4309233698194565609">"Пішім"</string>
+ <string name="keyboard_layout_set" msgid="4309233698194565609">"Орналасу"</string>
<string name="custom_input_style_note_message" msgid="8826731320846363423">"Реттелетін енгізу стилі пайдалануды бастамас бұрын қосылуы қажет. Оны қазір қосу қажет пе?"</string>
<string name="enable" msgid="5031294444630523247">"Қосу"</string>
<string name="not_now" msgid="6172462888202790482">"Қазір емес"</string>
diff --git a/java/res/values-km-rKH/strings-emoji-descriptions.xml b/java/res/values-km-rKH/strings-emoji-descriptions.xml
index e9b8780a5..00343751e 100644
--- a/java/res/values-km-rKH/strings-emoji-descriptions.xml
+++ b/java/res/values-km-rKH/strings-emoji-descriptions.xml
@@ -92,7 +92,7 @@
<string name="spoken_emoji_26BE" msgid="8959760533076498209">"បាល់បោះ"</string>
<string name="spoken_emoji_26C4" msgid="3045791757044255626">"អ្នកលេង​ព្រិល​ដោយ​គ្មាន​ព្រិល"</string>
<string name="spoken_emoji_26C5" msgid="5580129409712578639">"ព្រះអាទិត្យ​នៅ​​ក្រោយ​ពពក"</string>
- <string name="spoken_emoji_26CE" msgid="8963656417276062998">"សញ្ញា (⛎)"</string>
+ <string name="spoken_emoji_26CE" msgid="8963656417276062998">"សញ្ញាអាព្យូឈូស"</string>
<string name="spoken_emoji_26D4" msgid="2231451988209604130">"ហាមចូល"</string>
<string name="spoken_emoji_26EA" msgid="7513319636103804907">"វិហារ​សាសនា"</string>
<string name="spoken_emoji_26F2" msgid="7134115206158891037">"បាញ់​ទឹក"</string>
@@ -114,7 +114,7 @@
<string name="spoken_emoji_2728" msgid="5650330815808691881">"បញ្ចេញ​ពន្លឺ"</string>
<string name="spoken_emoji_2733" msgid="8915809595141157327">"ផ្កាយ​ប្រាំ​បី​ជ្រុង"</string>
<string name="spoken_emoji_2734" msgid="4846583547980754332">"ផ្កាយ​ប្រាំ​បី​ជ្រុង​ដិត"</string>
- <string name="spoken_emoji_2744" msgid="4350636647760161042">"សញ្ញា (❄)"</string>
+ <string name="spoken_emoji_2744" msgid="4350636647760161042">"ផ្កាព្រិល"</string>
<string name="spoken_emoji_2747" msgid="3718282973916474455">"បញ្ចេញ​ពន្លឺ"</string>
<string name="spoken_emoji_274C" msgid="2752145886733295314">"សញ្ញា​​ខ្វែង"</string>
<string name="spoken_emoji_274E" msgid="4262918689871098338">"សញ្ញា​ខ្វែង​ក្នុង​ប្រអប់"</string>
@@ -139,11 +139,11 @@
<string name="spoken_emoji_2B50" msgid="3850845519526950524">"​ផ្កាយ​​មធ្យម​ពណ៌ស"</string>
<string name="spoken_emoji_2B55" msgid="9137882158811541824">"រង្វង់​ធំ​​ដិត"</string>
<string name="spoken_emoji_3030" msgid="4609172241893565639">"សញ្ញា​​រលក​ដិត"</string>
- <string name="spoken_emoji_303D" msgid="2545833934975907505">"សញ្ញា (〽)"</string>
- <string name="spoken_emoji_3297" msgid="928912923628973800">"សញ្ញា (㊗)"</string>
- <string name="spoken_emoji_3299" msgid="3930347573693668426">"សញ្ញា (㊙)"</string>
- <string name="spoken_emoji_1F004" msgid="1705216181345894600">"សញ្ញា (🀄)"</string>
- <string name="spoken_emoji_1F0CF" msgid="7601493592085987866">"សញ្ញា (🃏)"</string>
+ <string name="spoken_emoji_303D" msgid="2545833934975907505">"សញ្ញាចាប់ផ្តើមចម្រៀង"</string>
+ <string name="spoken_emoji_3297" msgid="928912923628973800">"សញ្ញាអបអរសាទរមូល"</string>
+ <string name="spoken_emoji_3299" msgid="3930347573693668426">"សញ្ញាសម្ងាត់មូល"</string>
+ <string name="spoken_emoji_1F004" msgid="1705216181345894600">"សញ្ញានាគក្រហមម៉ាចុង"</string>
+ <string name="spoken_emoji_1F0CF" msgid="7601493592085987866">"រូបតុក្កតាបៀពណ៌ខ្មៅ"</string>
<string name="spoken_emoji_1F170" msgid="3817698686602826773">"ឈាម​ប្រភេទ A"</string>
<string name="spoken_emoji_1F171" msgid="3684218589626650242">"ឈាម​ប្រភេទ B"</string>
<string name="spoken_emoji_1F17E" msgid="2978809190364779029">"ឈាម​ប្រភេទ O"</string>
@@ -159,21 +159,21 @@
<string name="spoken_emoji_1F198" msgid="7020298909426960622">"ប្រអប់ SOS"</string>
<string name="spoken_emoji_1F199" msgid="5971252667136235630">"ប្រអប់ up!"</string>
<string name="spoken_emoji_1F19A" msgid="4557270135899843959">"ប្រអប់ vs"</string>
- <string name="spoken_emoji_1F201" msgid="7000490044681139002">"សញ្ញា (🈁)"</string>
- <string name="spoken_emoji_1F202" msgid="8560906958695043947">"សញ្ញា (🈂)"</string>
- <string name="spoken_emoji_1F21A" msgid="1496435317324514033">"សញ្ញា (🈚)"</string>
- <string name="spoken_emoji_1F22F" msgid="609797148862445402">"សញ្ញា (🈯)"</string>
- <string name="spoken_emoji_1F232" msgid="8125716331632035820">"សញ្ញា (🈲)"</string>
- <string name="spoken_emoji_1F233" msgid="8749401090457355028">"សញ្ញា (🈳)"</string>
- <string name="spoken_emoji_1F234" msgid="3546951604285970768">"សញ្ញា (🈴)"</string>
- <string name="spoken_emoji_1F235" msgid="5320186982841793711">"សញ្ញា (🈵)"</string>
- <string name="spoken_emoji_1F236" msgid="879755752069393034">"សញ្ញា (🈶)"</string>
- <string name="spoken_emoji_1F237" msgid="6741807001205851437">"សញ្ញា (🈷)"</string>
- <string name="spoken_emoji_1F238" msgid="5504414186438196912">"សញ្ញា (🈸)"</string>
- <string name="spoken_emoji_1F239" msgid="1634067311597618959">"សញ្ញា (🈹)"</string>
- <string name="spoken_emoji_1F23A" msgid="3107862957630169536">"សញ្ញា (🈺)"</string>
- <string name="spoken_emoji_1F250" msgid="6586943922806727907">"សញ្ញា (🉐)"</string>
- <string name="spoken_emoji_1F251" msgid="9099032855993346948">"សញ្ញា (🉑)"</string>
+ <string name="spoken_emoji_1F201" msgid="7000490044681139002">"សញ្ញានៅទីនេះកាតាកាណាជ្រុង"</string>
+ <string name="spoken_emoji_1F202" msgid="8560906958695043947">"សញ្ញាសេវាកម្មកាតាកាណាជ្រុង"</string>
+ <string name="spoken_emoji_1F21A" msgid="1496435317324514033">"សញ្ញាឥតគិតថ្លៃជ្រុង"</string>
+ <string name="spoken_emoji_1F22F" msgid="609797148862445402">"សញ្ញាកន្លែងកក់រួចជ្រុង"</string>
+ <string name="spoken_emoji_1F232" msgid="8125716331632035820">"សញ្ញាហាមឃាត់ជ្រុង"</string>
+ <string name="spoken_emoji_1F233" msgid="8749401090457355028">"សញ្ញាកន្លែងទំនេរជ្រុង"</string>
+ <string name="spoken_emoji_1F234" msgid="3546951604285970768">"សញ្ញាព្រមទទួលជ្រុង"</string>
+ <string name="spoken_emoji_1F235" msgid="5320186982841793711">"សញ្ញាជួលពេញជ្រុង"</string>
+ <string name="spoken_emoji_1F236" msgid="879755752069393034">"សញ្ញាមានផ្តល់ជូនជ្រុង"</string>
+ <string name="spoken_emoji_1F237" msgid="6741807001205851437">"សញ្ញាប្រចាំខែជ្រុង"</string>
+ <string name="spoken_emoji_1F238" msgid="5504414186438196912">"សញ្ញាកម្មវិធីជ្រុង"</string>
+ <string name="spoken_emoji_1F239" msgid="1634067311597618959">"សញ្ញាបញ្ចុះតម្លៃជ្រុង"</string>
+ <string name="spoken_emoji_1F23A" msgid="3107862957630169536">"សញ្ញាដំណើរការអាជីវកម្មជ្រុង"</string>
+ <string name="spoken_emoji_1F250" msgid="6586943922806727907">"សញ្ញាអត្ថប្រយោជន៍មូល"</string>
+ <string name="spoken_emoji_1F251" msgid="9099032855993346948">"សញ្ញាយល់ព្រមមូល"</string>
<string name="spoken_emoji_1F300" msgid="4720098285295840383">"ស៊ីក្លូន"</string>
<string name="spoken_emoji_1F301" msgid="3601962477653752974">"អ័ភ្រ"</string>
<string name="spoken_emoji_1F302" msgid="3404357123421753593">"ឆត្រ​បិទ"</string>
diff --git a/java/res/values-km-rKH/strings-letter-descriptions.xml b/java/res/values-km-rKH/strings-letter-descriptions.xml
index f58eff4d1..b33d5d1d6 100644
--- a/java/res/values-km-rKH/strings-letter-descriptions.xml
+++ b/java/res/values-km-rKH/strings-letter-descriptions.xml
@@ -26,183 +26,183 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="spoken_accented_letter_00AA" msgid="4374325261868451570">"សញ្ញា ª"</string>
- <string name="spoken_accented_letter_00B5" msgid="9031387673828823891">"សញ្ញា µ"</string>
- <string name="spoken_accented_letter_00BA" msgid="5045198452071207437">"សញ្ញា º"</string>
- <string name="spoken_accented_letter_00DF" msgid="2260098367028134281">"សញ្ញា ß"</string>
- <string name="spoken_accented_letter_00E0" msgid="2234515772182387086">"សញ្ញា à"</string>
- <string name="spoken_accented_letter_00E1" msgid="7780174500802535063">"សញ្ញា á"</string>
- <string name="spoken_accented_letter_00E2" msgid="7054108480488102631">"សញ្ញា â"</string>
- <string name="spoken_accented_letter_00E3" msgid="8252569677935693343">"សញ្ញា ã"</string>
- <string name="spoken_accented_letter_00E4" msgid="6610118430986969466">"សញ្ញា ä"</string>
- <string name="spoken_accented_letter_00E5" msgid="7630449270070348394">"សញ្ញា å"</string>
- <string name="spoken_accented_letter_00E6" msgid="701838036007000032">"សញ្ញា æ"</string>
- <string name="spoken_accented_letter_00E7" msgid="2991289211702135310">"សញ្ញា ç"</string>
- <string name="spoken_accented_letter_00E8" msgid="2080035251848179782">"សញ្ញា è"</string>
- <string name="spoken_accented_letter_00E9" msgid="2708473976407506968">"សញ្ញា é"</string>
- <string name="spoken_accented_letter_00EA" msgid="1898848081635119449">"សញ្ញា ê"</string>
- <string name="spoken_accented_letter_00EB" msgid="8318942663983499634">"សញ្ញា ë"</string>
- <string name="spoken_accented_letter_00EC" msgid="7643810590358306098">"សញ្ញា ì"</string>
- <string name="spoken_accented_letter_00ED" msgid="8288035355103120759">"សញ្ញា í"</string>
- <string name="spoken_accented_letter_00EE" msgid="1137417730211688894">"សញ្ញា î"</string>
- <string name="spoken_accented_letter_00EF" msgid="8993714322731956785">"សញ្ញា ï"</string>
- <string name="spoken_accented_letter_00F0" msgid="3427567511221967857">"សញ្ញា ð"</string>
- <string name="spoken_accented_letter_00F1" msgid="6983294908255378605">"សញ្ញា ñ"</string>
- <string name="spoken_accented_letter_00F2" msgid="2623804069332183695">"សញ្ញា ò"</string>
- <string name="spoken_accented_letter_00F3" msgid="8945987631729216917">"សញ្ញា ó"</string>
- <string name="spoken_accented_letter_00F4" msgid="2415494299699717276">"សញ្ញា ô"</string>
- <string name="spoken_accented_letter_00F5" msgid="7320512716652765243">"សញ្ញា õ"</string>
- <string name="spoken_accented_letter_00F6" msgid="9101179351242478555">"សញ្ញា ö"</string>
- <string name="spoken_accented_letter_00F8" msgid="1488324280918884122">"សញ្ញា ø"</string>
- <string name="spoken_accented_letter_00F9" msgid="2823570256527173278">"សញ្ញា ù"</string>
- <string name="spoken_accented_letter_00FA" msgid="6883092085077298608">"សញ្ញា ú"</string>
- <string name="spoken_accented_letter_00FB" msgid="4948239400399514418">"សញ្ញា û"</string>
- <string name="spoken_accented_letter_00FC" msgid="2496066211694000442">"សញ្ញា ü"</string>
- <string name="spoken_accented_letter_00FD" msgid="2400529610834233890">"សញ្ញា ý"</string>
- <string name="spoken_accented_letter_00FE" msgid="8788160115017853040">"សញ្ញា þ"</string>
- <string name="spoken_accented_letter_00FF" msgid="5225610161025124830">"សញ្ញា ÿ"</string>
- <string name="spoken_accented_letter_0101" msgid="5573209280917268157">"សញ្ញា ā"</string>
- <string name="spoken_accented_letter_0103" msgid="2469151120095164730">"សញ្ញា ă"</string>
- <string name="spoken_accented_letter_0105" msgid="8312689789855786427">"សញ្ញា ą"</string>
- <string name="spoken_accented_letter_0107" msgid="5708507895287798642">"សញ្ញា ć"</string>
- <string name="spoken_accented_letter_0109" msgid="7008112603489583335">"សញ្ញា ĉ"</string>
- <string name="spoken_accented_letter_010B" msgid="5641359473019753216">"សញ្ញា ċ"</string>
- <string name="spoken_accented_letter_010D" msgid="1048661826408437168">"សញ្ញា č"</string>
- <string name="spoken_accented_letter_010F" msgid="603374318657992205">"សញ្ញា ď"</string>
- <string name="spoken_accented_letter_0111" msgid="5517997642285938260">"សញ្ញា đ"</string>
- <string name="spoken_accented_letter_0113" msgid="2326009009311798997">"សញ្ញា ē"</string>
- <string name="spoken_accented_letter_0115" msgid="3964545407091037747">"សញ្ញា ĕ"</string>
- <string name="spoken_accented_letter_0117" msgid="8799753183781089777">"សញ្ញា ė"</string>
- <string name="spoken_accented_letter_0119" msgid="3772451226935709136">"សញ្ញា ę"</string>
- <string name="spoken_accented_letter_011B" msgid="7663481332351461288">"សញ្ញា ě"</string>
- <string name="spoken_accented_letter_011D" msgid="1181326600595482369">"សញ្ញា ĝ"</string>
- <string name="spoken_accented_letter_011F" msgid="6843415389823096647">"សញ្ញា ğ"</string>
- <string name="spoken_accented_letter_0121" msgid="6205288708713306903">"សញ្ញា ġ"</string>
- <string name="spoken_accented_letter_0123" msgid="2394277128105386261">"សញ្ញា ģ"</string>
- <string name="spoken_accented_letter_0125" msgid="6575866461277751345">"សញ្ញា ĥ"</string>
- <string name="spoken_accented_letter_0127" msgid="1316971762214091641">"សញ្ញា ħ"</string>
- <string name="spoken_accented_letter_0129" msgid="7824912405885325754">"សញ្ញា ĩ"</string>
- <string name="spoken_accented_letter_012B" msgid="6772690258769905270">"សញ្ញា ī"</string>
- <string name="spoken_accented_letter_012D" msgid="2933871131556503448">"សញ្ញា ĭ"</string>
- <string name="spoken_accented_letter_012F" msgid="1340511254985181663">"សញ្ញា į"</string>
- <string name="spoken_accented_letter_0131" msgid="5635600720566083969">"សញ្ញា ı"</string>
- <string name="spoken_accented_letter_0133" msgid="7593704176516791941">"សញ្ញា ij"</string>
- <string name="spoken_accented_letter_0135" msgid="4521109674238248436">"សញ្ញា ĵ"</string>
- <string name="spoken_accented_letter_0137" msgid="5886444641003852175">"សញ្ញា ķ"</string>
- <string name="spoken_accented_letter_0138" msgid="4200294389170924853">"សញ្ញា ĸ"</string>
- <string name="spoken_accented_letter_013A" msgid="3558015385412543517">"សញ្ញា ĺ"</string>
- <string name="spoken_accented_letter_013C" msgid="1853639924813858734">"សញ្ញា ļ"</string>
- <string name="spoken_accented_letter_013E" msgid="7489345561739421886">"សញ្ញា ľ"</string>
- <string name="spoken_accented_letter_0140" msgid="7946718707268270589">"សញ្ញា ŀ"</string>
- <string name="spoken_accented_letter_0142" msgid="752931798111122240">"សញ្ញា ł"</string>
- <string name="spoken_accented_letter_0144" msgid="201843550323875352">"សញ្ញា ń"</string>
- <string name="spoken_accented_letter_0146" msgid="3403847152606051818">"សញ្ញា ņ"</string>
- <string name="spoken_accented_letter_0148" msgid="9215300786722209338">"សញ្ញា ň"</string>
- <string name="spoken_accented_letter_0149" msgid="3191850286630154063">"សញ្ញា ʼn"</string>
- <string name="spoken_accented_letter_014B" msgid="8503022408522837410">"សញ្ញា ŋ"</string>
- <string name="spoken_accented_letter_014D" msgid="4452323602550610641">"សញ្ញា ō"</string>
- <string name="spoken_accented_letter_014F" msgid="2795957717094385336">"សញ្ញា ŏ"</string>
- <string name="spoken_accented_letter_0151" msgid="8013704745216410244">"សញ្ញា ő"</string>
- <string name="spoken_accented_letter_0153" msgid="8410582495993285221">"សញ្ញា œ"</string>
- <string name="spoken_accented_letter_0155" msgid="7601517174689798560">"សញ្ញា ŕ"</string>
- <string name="spoken_accented_letter_0157" msgid="9071455715455643810">"សញ្ញា ŗ"</string>
- <string name="spoken_accented_letter_0159" msgid="7726911392381543439">"សញ្ញា ř"</string>
- <string name="spoken_accented_letter_015B" msgid="1854129531164494117">"សញ្ញា ś"</string>
- <string name="spoken_accented_letter_015D" msgid="4743571603550582530">"សញ្ញា ŝ"</string>
- <string name="spoken_accented_letter_015F" msgid="1519945638631588761">"សញ្ញា ş"</string>
- <string name="spoken_accented_letter_0161" msgid="7493478552029144246">"សញ្ញា š"</string>
- <string name="spoken_accented_letter_0163" msgid="9103547637928833069">"សញ្ញា ţ"</string>
- <string name="spoken_accented_letter_0165" msgid="7306159398214872062">"សញ្ញា ť"</string>
- <string name="spoken_accented_letter_0167" msgid="5578767705098672443">"សញ្ញា ŧ"</string>
- <string name="spoken_accented_letter_0169" msgid="413046581387735371">"សញ្ញា ũ"</string>
- <string name="spoken_accented_letter_016B" msgid="3209778874978859441">"សញ្ញា ū"</string>
- <string name="spoken_accented_letter_016D" msgid="2983326533258602840">"សញ្ញា ŭ"</string>
- <string name="spoken_accented_letter_016F" msgid="4416532499516387231">"សញ្ញា ů"</string>
- <string name="spoken_accented_letter_0171" msgid="3435171971353200807">"សញ្ញា ű"</string>
- <string name="spoken_accented_letter_0173" msgid="4494154432483553480">"សញ្ញា ų"</string>
- <string name="spoken_accented_letter_0175" msgid="2154545579611918513">"សញ្ញា ŵ"</string>
- <string name="spoken_accented_letter_0177" msgid="4034463827306904781">"សញ្ញា ŷ"</string>
- <string name="spoken_accented_letter_017A" msgid="3368292232292925369">"សញ្ញា ź"</string>
- <string name="spoken_accented_letter_017C" msgid="2834484584505860430">"សញ្ញា ż"</string>
- <string name="spoken_accented_letter_017E" msgid="1209240442434887098">"សញ្ញា ž"</string>
- <string name="spoken_accented_letter_017F" msgid="317501463253362415">"សញ្ញា ſ"</string>
- <string name="spoken_accented_letter_01A1" msgid="630186564859044196">"សញ្ញា ơ"</string>
- <string name="spoken_accented_letter_01B0" msgid="8544012177684640443">"សញ្ញា ư"</string>
- <string name="spoken_accented_letter_0219" msgid="1960371842020076066">"សញ្ញា ș"</string>
- <string name="spoken_accented_letter_021B" msgid="1398418662032919032">"សញ្ញា ț"</string>
- <string name="spoken_accented_letter_0259" msgid="2464085263158415898">"សញ្ញា ə"</string>
- <string name="spoken_accented_letter_1EA1" msgid="688124877202887630">"សញ្ញា ạ"</string>
- <string name="spoken_accented_letter_1EA3" msgid="327960130366386256">"សញ្ញា ả"</string>
- <string name="spoken_accented_letter_1EA5" msgid="637406363453769610">"សញ្ញា ấ"</string>
- <string name="spoken_accented_letter_1EA7" msgid="1419591804181615409">"សញ្ញា ầ"</string>
- <string name="spoken_accented_letter_1EA9" msgid="6068887382734896756">"សញ្ញា ẩ"</string>
- <string name="spoken_accented_letter_1EAB" msgid="7236523151662538333">"សញ្ញា ẫ"</string>
- <string name="spoken_accented_letter_1EAD" msgid="2363364864106332076">"សញ្ញា ậ"</string>
- <string name="spoken_accented_letter_1EAF" msgid="1576329511464272935">"សញ្ញា ắ"</string>
- <string name="spoken_accented_letter_1EB1" msgid="4634735072816076592">"សញ្ញា ằ"</string>
- <string name="spoken_accented_letter_1EB3" msgid="2325245849038771534">"សញ្ញា ẳ"</string>
- <string name="spoken_accented_letter_1EB5" msgid="3720427596242746295">"សញ្ញា ẵ"</string>
- <string name="spoken_accented_letter_1EB7" msgid="700415535653646695">"សញ្ញា ặ"</string>
- <string name="spoken_accented_letter_1EB9" msgid="3901338692305890487">"សញ្ញា ẹ"</string>
- <string name="spoken_accented_letter_1EBB" msgid="4028688699415417302">"សញ្ញា ẻ"</string>
- <string name="spoken_accented_letter_1EBD" msgid="181253633045931897">"សញ្ញា ẽ"</string>
- <string name="spoken_accented_letter_1EBF" msgid="3309618845007944963">"សញ្ញា ế"</string>
- <string name="spoken_accented_letter_1EC1" msgid="8139046749226332542">"សញ្ញា ề"</string>
- <string name="spoken_accented_letter_1EC3" msgid="3239674223053133383">"សញ្ញា ể"</string>
- <string name="spoken_accented_letter_1EC5" msgid="2216559244705714587">"សញ្ញា ễ"</string>
- <string name="spoken_accented_letter_1EC7" msgid="9012731468253986792">"សញ្ញា ệ"</string>
- <string name="spoken_accented_letter_1EC9" msgid="2901917620195717034">"សញ្ញា ỉ"</string>
- <string name="spoken_accented_letter_1ECB" msgid="5470387489820034621">"សញ្ញា ị"</string>
- <string name="spoken_accented_letter_1ECD" msgid="1340122876914839806">"សញ្ញា ọ"</string>
- <string name="spoken_accented_letter_1ECF" msgid="2326921263882559755">"សញ្ញា ỏ"</string>
- <string name="spoken_accented_letter_1ED1" msgid="2885683296042774958">"សញ្ញា ố"</string>
- <string name="spoken_accented_letter_1ED3" msgid="6857664926477376178">"សញ្ញា ồ"</string>
- <string name="spoken_accented_letter_1ED5" msgid="2015209467290624062">"សញ្ញា ổ"</string>
- <string name="spoken_accented_letter_1ED7" msgid="7924481354960306389">"សញ្ញា ỗ"</string>
- <string name="spoken_accented_letter_1ED9" msgid="7023315590332365554">"សញ្ញា ộ"</string>
- <string name="spoken_accented_letter_1EDB" msgid="2379438944917634496">"សញ្ញា ớ"</string>
- <string name="spoken_accented_letter_1EDD" msgid="8107077534204404085">"សញ្ញា ờ"</string>
- <string name="spoken_accented_letter_1EDF" msgid="1846880105528347966">"សញ្ញា ở"</string>
- <string name="spoken_accented_letter_1EE1" msgid="1520037313389776718">"សញ្ញា ỡ"</string>
- <string name="spoken_accented_letter_1EE3" msgid="907964027171008963">"សញ្ញា ợ"</string>
- <string name="spoken_accented_letter_1EE5" msgid="1522024630360038700">"សញ្ញា ụ"</string>
- <string name="spoken_accented_letter_1EE7" msgid="7815412228302952637">"សញ្ញា ủ"</string>
- <string name="spoken_accented_letter_1EE9" msgid="4219119671251485651">"សញ្ញា ứ"</string>
- <string name="spoken_accented_letter_1EEB" msgid="4086009841269002231">"សញ្ញា ừ"</string>
- <string name="spoken_accented_letter_1EED" msgid="3528151733528719847">"សញ្ញា ử"</string>
- <string name="spoken_accented_letter_1EEF" msgid="3508548229409072119">"សញ្ញា ữ"</string>
- <string name="spoken_accented_letter_1EF1" msgid="1912816350401931115">"សញ្ញា ự"</string>
- <string name="spoken_accented_letter_1EF3" msgid="7211760439435946494">"សញ្ញា ỳ"</string>
- <string name="spoken_accented_letter_1EF5" msgid="8998864482764007384">"សញ្ញា ỵ"</string>
- <string name="spoken_accented_letter_1EF7" msgid="922043627252869200">"សញ្ញា ỷ"</string>
- <string name="spoken_accented_letter_1EF9" msgid="6213977100552260366">"សញ្ញា ỹ"</string>
- <string name="spoken_symbol_00A1" msgid="4281758332905123408">"សញ្ញា ¡"</string>
- <string name="spoken_symbol_00AB" msgid="4093069643313064892">"សញ្ញា «"</string>
- <string name="spoken_symbol_00B7" msgid="2447718728927874920">"សញ្ញា ·"</string>
- <string name="spoken_symbol_00B9" msgid="8026257165451461231">"សញ្ញា ¹"</string>
- <string name="spoken_symbol_00BB" msgid="1102740075655373928">"សញ្ញា »"</string>
- <string name="spoken_symbol_00BF" msgid="6233794752573788098">"សញ្ញា ¿"</string>
- <string name="spoken_symbol_2018" msgid="4886476295598930225">"សញ្ញា ‘"</string>
- <string name="spoken_symbol_2019" msgid="8892530161598134083">"សញ្ញា ’"</string>
- <string name="spoken_symbol_201A" msgid="2072987157683446644">"សញ្ញា ‚"</string>
- <string name="spoken_symbol_201C" msgid="4588048378803665427">"សញ្ញា “"</string>
- <string name="spoken_symbol_201D" msgid="1642776849495925895">"សញ្ញា ”"</string>
- <string name="spoken_symbol_2020" msgid="9084628638189344431">"សញ្ញា †"</string>
- <string name="spoken_symbol_2021" msgid="5081396468559426475">"សញ្ញា ‡"</string>
- <string name="spoken_symbol_2030" msgid="9068837172419431755">"សញ្ញា ‰"</string>
- <string name="spoken_symbol_2032" msgid="3014506329156664396">"សញ្ញា ′"</string>
- <string name="spoken_symbol_2033" msgid="1251022699713475088">"សញ្ញា ″"</string>
- <string name="spoken_symbol_2039" msgid="6989616457213775957">"សញ្ញា ‹"</string>
- <string name="spoken_symbol_203A" msgid="31245095449823701">"សញ្ញា ›"</string>
- <string name="spoken_symbol_2074" msgid="2116717717093306894">"សញ្ញា ⁴"</string>
- <string name="spoken_symbol_207F" msgid="1706731172134246659">"សញ្ញា ⁿ"</string>
- <string name="spoken_symbol_20B1" msgid="2159994270622444689">"សញ្ញា ₱"</string>
- <string name="spoken_symbol_2105" msgid="7289404939366976829">"សញ្ញា ℅"</string>
- <string name="spoken_symbol_2192" msgid="827804523596125414">"សញ្ញា →"</string>
- <string name="spoken_symbol_2193" msgid="2659541693445985717">"សញ្ញា ↓"</string>
- <string name="spoken_symbol_2205" msgid="4457188084269117343">"សញ្ញា ∅"</string>
- <string name="spoken_symbol_2206" msgid="4856786565708380687">"សញ្ញា ∆"</string>
- <string name="spoken_symbol_2264" msgid="5092061257745123554">"សញ្ញា ≤"</string>
- <string name="spoken_symbol_2265" msgid="1907966479878036357">"សញ្ញា ≥"</string>
- <string name="spoken_symbol_2605" msgid="5202920479405857753">"សញ្ញា ★"</string>
+ <string name="spoken_accented_letter_00AA" msgid="4374325261868451570">"សញ្ញាលេខលំដាប់បញ្ជាក់ភេទស្រី"</string>
+ <string name="spoken_accented_letter_00B5" msgid="9031387673828823891">"សញ្ញាម៉ុយ"</string>
+ <string name="spoken_accented_letter_00BA" msgid="5045198452071207437">"សញ្ញាលេខលំដាប់ភេទបញ្ជាក់ប្រុស"</string>
+ <string name="spoken_accented_letter_00DF" msgid="2260098367028134281">"S ស្រួច"</string>
+ <string name="spoken_accented_letter_00E0" msgid="2234515772182387086">"A បន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_00E1" msgid="7780174500802535063">"A បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_00E2" msgid="7054108480488102631">"A សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_00E3" msgid="8252569677935693343">"A សក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_00E4" msgid="6610118430986969466">"A សក់ចុចពីរ"</string>
+ <string name="spoken_accented_letter_00E5" msgid="7630449270070348394">"A រង្វង់ពីលើ"</string>
+ <string name="spoken_accented_letter_00E6" msgid="701838036007000032">"សញ្ញា A និង E ជាប់គ្នា"</string>
+ <string name="spoken_accented_letter_00E7" msgid="2991289211702135310">"C ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_00E8" msgid="2080035251848179782">"E បន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_00E9" msgid="2708473976407506968">"E បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_00EA" msgid="1898848081635119449">"E សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_00EB" msgid="8318942663983499634">"E សក់ចុចពីរ"</string>
+ <string name="spoken_accented_letter_00EC" msgid="7643810590358306098">"I បន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_00ED" msgid="8288035355103120759">"I បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_00EE" msgid="1137417730211688894">"I សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_00EF" msgid="8993714322731956785">"I សក់ចុចពីរ"</string>
+ <string name="spoken_accented_letter_00F0" msgid="3427567511221967857">"សញ្ញាអ៊េដ"</string>
+ <string name="spoken_accented_letter_00F1" msgid="6983294908255378605">"N សក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_00F2" msgid="2623804069332183695">"O បន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_00F3" msgid="8945987631729216917">"O បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_00F4" msgid="2415494299699717276">"O សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_00F5" msgid="7320512716652765243">"O សក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_00F6" msgid="9101179351242478555">"O សក់ចុចពីរ"</string>
+ <string name="spoken_accented_letter_00F8" msgid="1488324280918884122">"O ឆូត"</string>
+ <string name="spoken_accented_letter_00F9" msgid="2823570256527173278">"U បន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_00FA" msgid="6883092085077298608">"U បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_00FB" msgid="4948239400399514418">"U សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_00FC" msgid="2496066211694000442">"U សក់ចុចពីរ"</string>
+ <string name="spoken_accented_letter_00FD" msgid="2400529610834233890">"Y បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_00FE" msgid="8788160115017853040">"សញ្ញាសន"</string>
+ <string name="spoken_accented_letter_00FF" msgid="5225610161025124830">"Y សក់ចុចពីរ"</string>
+ <string name="spoken_accented_letter_0101" msgid="5573209280917268157">"A សក់ឆូត"</string>
+ <string name="spoken_accented_letter_0103" msgid="2469151120095164730">"A សក់អក្សរយូ"</string>
+ <string name="spoken_accented_letter_0105" msgid="8312689789855786427">"A ជើងកណ្តៀវ"</string>
+ <string name="spoken_accented_letter_0107" msgid="5708507895287798642">"C បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_0109" msgid="7008112603489583335">"C សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_010B" msgid="5641359473019753216">"C ចុចពីលើ"</string>
+ <string name="spoken_accented_letter_010D" msgid="1048661826408437168">"C សក់អក្សរវី"</string>
+ <string name="spoken_accented_letter_010F" msgid="603374318657992205">"D មានវណ្ណយុត្តិ"</string>
+ <string name="spoken_accented_letter_0111" msgid="5517997642285938260">"D ឆូត"</string>
+ <string name="spoken_accented_letter_0113" msgid="2326009009311798997">"E សក់ឆូត"</string>
+ <string name="spoken_accented_letter_0115" msgid="3964545407091037747">"E សក់អក្សរយូ"</string>
+ <string name="spoken_accented_letter_0117" msgid="8799753183781089777">"E ចុចពីលើ"</string>
+ <string name="spoken_accented_letter_0119" msgid="3772451226935709136">"E ជើងកណ្តៀវ"</string>
+ <string name="spoken_accented_letter_011B" msgid="7663481332351461288">"E សក់អក្សរវី"</string>
+ <string name="spoken_accented_letter_011D" msgid="1181326600595482369">"G សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_011F" msgid="6843415389823096647">"G សក់អក្សរយូ"</string>
+ <string name="spoken_accented_letter_0121" msgid="6205288708713306903">"G ចុចពីលើ"</string>
+ <string name="spoken_accented_letter_0123" msgid="2394277128105386261">"G ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_0125" msgid="6575866461277751345">"H សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_0127" msgid="1316971762214091641">"H ឆូត"</string>
+ <string name="spoken_accented_letter_0129" msgid="7824912405885325754">"I សក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_012B" msgid="6772690258769905270">"I សក់ឆូត"</string>
+ <string name="spoken_accented_letter_012D" msgid="2933871131556503448">"I សក់អក្សរយូ"</string>
+ <string name="spoken_accented_letter_012F" msgid="1340511254985181663">"I ជើងកណ្តៀវ"</string>
+ <string name="spoken_accented_letter_0131" msgid="5635600720566083969">"I អត់ចុចពីលើ"</string>
+ <string name="spoken_accented_letter_0133" msgid="7593704176516791941">"សញ្ញា IJ"</string>
+ <string name="spoken_accented_letter_0135" msgid="4521109674238248436">"J សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_0137" msgid="5886444641003852175">"K ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_0138" msgid="4200294389170924853">"អក្សរក្រា"</string>
+ <string name="spoken_accented_letter_013A" msgid="3558015385412543517">"L បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_013C" msgid="1853639924813858734">"L ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_013E" msgid="7489345561739421886">"L មានវណ្ណយុត្តិ"</string>
+ <string name="spoken_accented_letter_0140" msgid="7946718707268270589">"L ចុចកណ្តាល"</string>
+ <string name="spoken_accented_letter_0142" msgid="752931798111122240">"L ឆូត"</string>
+ <string name="spoken_accented_letter_0144" msgid="201843550323875352">"N បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_0146" msgid="3403847152606051818">"N ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_0148" msgid="9215300786722209338">"N សក់អក្សរវី"</string>
+ <string name="spoken_accented_letter_0149" msgid="3191850286630154063">"N មានសញ្ញាវណ្ណយុត្តិនៅខាងមុខ"</string>
+ <string name="spoken_accented_letter_014B" msgid="8503022408522837410">"សញ្ញាអ៊ីង"</string>
+ <string name="spoken_accented_letter_014D" msgid="4452323602550610641">"O សក់ឆូត"</string>
+ <string name="spoken_accented_letter_014F" msgid="2795957717094385336">"O សក់អក្សរយូ"</string>
+ <string name="spoken_accented_letter_0151" msgid="8013704745216410244">"O បន្តក់បញ្ឆិតស្តាំទ្វេ"</string>
+ <string name="spoken_accented_letter_0153" msgid="8410582495993285221">"សញ្ញា O និង E ជាប់គ្នា"</string>
+ <string name="spoken_accented_letter_0155" msgid="7601517174689798560">"R បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_0157" msgid="9071455715455643810">"R ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_0159" msgid="7726911392381543439">"R សក់អក្សរវី"</string>
+ <string name="spoken_accented_letter_015B" msgid="1854129531164494117">"S បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_015D" msgid="4743571603550582530">"S សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_015F" msgid="1519945638631588761">"S ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_0161" msgid="7493478552029144246">"S សក់អក្សរវី"</string>
+ <string name="spoken_accented_letter_0163" msgid="9103547637928833069">"T ស៊ីឌីឡា"</string>
+ <string name="spoken_accented_letter_0165" msgid="7306159398214872062">"T មានវណ្ណយុត្តិ"</string>
+ <string name="spoken_accented_letter_0167" msgid="5578767705098672443">"T ឆូត"</string>
+ <string name="spoken_accented_letter_0169" msgid="413046581387735371">"U សក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_016B" msgid="3209778874978859441">"U សក់ឆូត"</string>
+ <string name="spoken_accented_letter_016D" msgid="2983326533258602840">"U សក់អក្សរយូ"</string>
+ <string name="spoken_accented_letter_016F" msgid="4416532499516387231">"U រង្វង់ពីលើ"</string>
+ <string name="spoken_accented_letter_0171" msgid="3435171971353200807">"U បន្តក់បញ្ឆិតស្តាំទ្វេ"</string>
+ <string name="spoken_accented_letter_0173" msgid="4494154432483553480">"U ជើងកណ្តៀវ"</string>
+ <string name="spoken_accented_letter_0175" msgid="2154545579611918513">"W សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_0177" msgid="4034463827306904781">"Y សក់ព្រួញ"</string>
+ <string name="spoken_accented_letter_017A" msgid="3368292232292925369">"Z បន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_017C" msgid="2834484584505860430">"Z ចុចពីលើ"</string>
+ <string name="spoken_accented_letter_017E" msgid="1209240442434887098">"Z សក់អក្សរវី"</string>
+ <string name="spoken_accented_letter_017F" msgid="317501463253362415">"S វែង"</string>
+ <string name="spoken_accented_letter_01A1" msgid="630186564859044196">"O មានស្នែង"</string>
+ <string name="spoken_accented_letter_01B0" msgid="8544012177684640443">"U មានស្នែង"</string>
+ <string name="spoken_accented_letter_0219" msgid="1960371842020076066">"S មានក្បៀសខាងក្រោម"</string>
+ <string name="spoken_accented_letter_021B" msgid="1398418662032919032">"T មានក្បៀសខាងក្រោម"</string>
+ <string name="spoken_accented_letter_0259" msgid="2464085263158415898">"អក្សរអ៊ីបញ្ច្រាស"</string>
+ <string name="spoken_accented_letter_1EA1" msgid="688124877202887630">"A ចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EA3" msgid="327960130366386256">"A ទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EA5" msgid="637406363453769610">"A សក់ព្រួញ និងបន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_1EA7" msgid="1419591804181615409">"A សក់ព្រួញ និងបន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1EA9" msgid="6068887382734896756">"A សក់ព្រួញ និងទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EAB" msgid="7236523151662538333">"A សក់ព្រួញ និងទឹករលក"</string>
+ <string name="spoken_accented_letter_1EAD" msgid="2363364864106332076">"A សក់ព្រួញ និងចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EAF" msgid="1576329511464272935">"A សក់អក្សរយូ និងបន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_1EB1" msgid="4634735072816076592">"A សក់អក្សរយូ និងបន្តប់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1EB3" msgid="2325245849038771534">"A សក់អក្សរយូរ និងទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EB5" msgid="3720427596242746295">"A សក់អក្សរយូរ និងទឹករលក"</string>
+ <string name="spoken_accented_letter_1EB7" msgid="700415535653646695">"A សក់អក្សរយូ និងចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EB9" msgid="3901338692305890487">"E ចុចពីក្រោម"</string>
+ <string name="spoken_accented_letter_1EBB" msgid="4028688699415417302">"E ទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EBD" msgid="181253633045931897">"E សក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_1EBF" msgid="3309618845007944963">"E សក់ព្រួញ និងបន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_1EC1" msgid="8139046749226332542">"E សក់ព្រួញ និងបន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1EC3" msgid="3239674223053133383">"E សក់ព្រួញ និងទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EC5" msgid="2216559244705714587">"E សក់ព្រួញ និងទឹករលក"</string>
+ <string name="spoken_accented_letter_1EC7" msgid="9012731468253986792">"E សក់ព្រួញ និងចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EC9" msgid="2901917620195717034">"I ទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1ECB" msgid="5470387489820034621">"I ចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1ECD" msgid="1340122876914839806">"O ចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1ECF" msgid="2326921263882559755">"O ទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1ED1" msgid="2885683296042774958">"O សក់ព្រួញ និងបន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_1ED3" msgid="6857664926477376178">"O សក់ព្រួញ និងបន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1ED5" msgid="2015209467290624062">"O សក់ព្រួញ និងទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1ED7" msgid="7924481354960306389">"O សក់ព្រួញ និងទឹករលក"</string>
+ <string name="spoken_accented_letter_1ED9" msgid="7023315590332365554">"O សក់ព្រួញ និងចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EDB" msgid="2379438944917634496">"O មានស្នែង និងបន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_1EDD" msgid="8107077534204404085">"O មានស្នែង និងបន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1EDF" msgid="1846880105528347966">"O មានស្នែង និងទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EE1" msgid="1520037313389776718">"O មានស្នែង និងសក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_1EE3" msgid="907964027171008963">"O មានស្នែង និងចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EE5" msgid="1522024630360038700">"U ចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EE7" msgid="7815412228302952637">"U ទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EE9" msgid="4219119671251485651">"U មានស្នែង និងបន្តក់បញ្ឆិតស្តាំ"</string>
+ <string name="spoken_accented_letter_1EEB" msgid="4086009841269002231">"U មានស្នែង និងបន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1EED" msgid="3528151733528719847">"U មានស្នែង និងទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EEF" msgid="3508548229409072119">"U មានស្នែង និងសក់ទឹករលក"</string>
+ <string name="spoken_accented_letter_1EF1" msgid="1912816350401931115">"U មានស្នែង និងចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EF3" msgid="7211760439435946494">"Y បន្តក់បញ្ឆិតឆ្វេង"</string>
+ <string name="spoken_accented_letter_1EF5" msgid="8998864482764007384">"Y ចុចខាងក្រោម"</string>
+ <string name="spoken_accented_letter_1EF7" msgid="922043627252869200">"Y ទំពក់ពីលើ"</string>
+ <string name="spoken_accented_letter_1EF9" msgid="6213977100552260366">"Y សក់ទឹករលក"</string>
+ <string name="spoken_symbol_00A1" msgid="4281758332905123408">"សញ្ញាឧទានបញ្ច្រាស"</string>
+ <string name="spoken_symbol_00AB" msgid="4093069643313064892">"សញ្ញាសម្រង់ទ្វេចង្អុលមកឆ្វេង"</string>
+ <string name="spoken_symbol_00B7" msgid="2447718728927874920">"ចំណុចកណ្តាល"</string>
+ <string name="spoken_symbol_00B9" msgid="8026257165451461231">"ស្វ័យគុណមួយ"</string>
+ <string name="spoken_symbol_00BB" msgid="1102740075655373928">"សញ្ញាសម្រង់ទ្វេចង្អុលមកស្តាំ"</string>
+ <string name="spoken_symbol_00BF" msgid="6233794752573788098">"សញ្ញាសួរបញ្ច្រាស"</string>
+ <string name="spoken_symbol_2018" msgid="4886476295598930225">"សញ្ញាសម្រង់ទោលខាងឆ្វេង"</string>
+ <string name="spoken_symbol_2019" msgid="8892530161598134083">"សញ្ញាសម្រង់ទោលខាងស្តាំ"</string>
+ <string name="spoken_symbol_201A" msgid="2072987157683446644">"សញ្ញាសម្រង់ខាងក្រោមទោល"</string>
+ <string name="spoken_symbol_201C" msgid="4588048378803665427">"សញ្ញាសម្រង់ទ្វេខាងឆ្វេង"</string>
+ <string name="spoken_symbol_201D" msgid="1642776849495925895">"សញ្ញាសម្រង់ទ្វេខាងស្តាំ"</string>
+ <string name="spoken_symbol_2020" msgid="9084628638189344431">"ឈើឆ្កាង"</string>
+ <string name="spoken_symbol_2021" msgid="5081396468559426475">"ឈើឆ្កាងទ្វេ"</string>
+ <string name="spoken_symbol_2030" msgid="9068837172419431755">"សញ្ញាក្នុងមួយម៉ាយ៍"</string>
+ <string name="spoken_symbol_2032" msgid="3014506329156664396">"បន្តក់រង្វាស់"</string>
+ <string name="spoken_symbol_2033" msgid="1251022699713475088">"បន្តក់រង្វាស់ទ្វេ"</string>
+ <string name="spoken_symbol_2039" msgid="6989616457213775957">"សញ្ញាសម្រង់ទោលចង្អុលមកឆ្វេង"</string>
+ <string name="spoken_symbol_203A" msgid="31245095449823701">"សញ្ញាសម្រង់ទោលចង្អុលមកស្តាំ"</string>
+ <string name="spoken_symbol_2074" msgid="2116717717093306894">"ស្វ័យគុណបួន"</string>
+ <string name="spoken_symbol_207F" msgid="1706731172134246659">"ស្វ័យគុណ n"</string>
+ <string name="spoken_symbol_20B1" msgid="2159994270622444689">"សញ្ញាប៉េសូ"</string>
+ <string name="spoken_symbol_2105" msgid="7289404939366976829">"សញ្ញា Care of"</string>
+ <string name="spoken_symbol_2192" msgid="827804523596125414">"ព្រួញទៅស្តាំ"</string>
+ <string name="spoken_symbol_2193" msgid="2659541693445985717">"ព្រួញចុះក្រោម"</string>
+ <string name="spoken_symbol_2205" msgid="4457188084269117343">"សំណុំទទេ"</string>
+ <string name="spoken_symbol_2206" msgid="4856786565708380687">"បន្ថែម"</string>
+ <string name="spoken_symbol_2264" msgid="5092061257745123554">"តូចជាង ឬស្មើ"</string>
+ <string name="spoken_symbol_2265" msgid="1907966479878036357">"ធំជាង ឬស្មើ"</string>
+ <string name="spoken_symbol_2605" msgid="5202920479405857753">"ផ្កាយខ្មៅ"</string>
</resources>
diff --git a/java/res/values-km-rKH/strings-talkback-descriptions.xml b/java/res/values-km-rKH/strings-talkback-descriptions.xml
index 5e99209db..a1e49933c 100644
--- a/java/res/values-km-rKH/strings-talkback-descriptions.xml
+++ b/java/res/values-km-rKH/strings-talkback-descriptions.xml
@@ -43,7 +43,7 @@
<string name="spoken_description_emoji" msgid="7990051553008088470">"សញ្ញា​អារម្មណ៍"</string>
<string name="spoken_description_return" msgid="3183692287397645708">"Return"</string>
<string name="spoken_description_search" msgid="5099937658231911288">"ស្វែងរក"</string>
- <string name="spoken_description_dot" msgid="5644176501632325560">"សញ្ញា(.)"</string>
+ <string name="spoken_description_dot" msgid="5644176501632325560">"ចំណុច"</string>
<string name="spoken_description_language_switch" msgid="6818666779313544553">"ប្ដូរ​​ភាសា"</string>
<string name="spoken_description_action_next" msgid="431761808119616962">"បន្ទាប់"</string>
<string name="spoken_description_action_previous" msgid="2919072174697865110">"មុន"</string>
@@ -73,8 +73,8 @@
<string name="spoken_descrption_emoji_category_symbols" msgid="474680659024880601">"និមិត្តសញ្ញា"</string>
<string name="spoken_descrption_emoji_category_emoticons" msgid="456737544787823539">"សញ្ញា​អារម្មណ៍"</string>
<string name="spoken_description_upper_case" msgid="4904835255229433916">"អក្សរ​ធំ <xliff:g id="LOWER_LETTER">%s</xliff:g>"</string>
- <string name="spoken_letter_0049" msgid="4743162182646977944">"សញ្ញា I"</string>
- <string name="spoken_letter_0130" msgid="4766619646231612274">"សញ្ញា İ"</string>
+ <string name="spoken_letter_0049" msgid="4743162182646977944">"I ធំ"</string>
+ <string name="spoken_letter_0130" msgid="4766619646231612274">"I ធំមានចំណុចពីលើ"</string>
<string name="spoken_symbol_unknown" msgid="717298227061173706">"មិន​ស្គាល់​និមិត្តសញ្ញា"</string>
<string name="spoken_emoji_unknown" msgid="5981009928135394306">"មិន​ស្គាល់​សញ្ញា​អារម្មណ៍"</string>
<string name="spoken_emoticon_3A_2D_21_20" msgid="2410905667389534573">"មុខ​អផ្សុក"</string>
diff --git a/java/res/values-kn-rIN/strings.xml b/java/res/values-kn-rIN/strings.xml
index e14d92da9..8ab404759 100644
--- a/java/res/values-kn-rIN/strings.xml
+++ b/java/res/values-kn-rIN/strings.xml
@@ -24,9 +24,9 @@
<string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"ಸಂಪರ್ಕ ಹೆಸರುಗಳನ್ನು ಹುಡುಕು"</string>
<string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"ಕಾಗುಣಿತ ಪರೀಕ್ಷಕವು ನಿಮ್ಮ ಸಂಪರ್ಕ ಪಟ್ಟಿಯ ಮಾಹಿತಿಯನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತದೆ"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"ಕೀಲಿಯನ್ನು ಒತ್ತಿದಾಗ ವೈಬ್ರೇಷನ್‌"</string>
- <string name="sound_on_keypress" msgid="6093592297198243644">"ಕೀಲಿಯನ್ನು ಒತ್ತಿದಾಗ ಶಬ್ದಮಾಡು"</string>
+ <string name="sound_on_keypress" msgid="6093592297198243644">"ಕೀ ಒತ್ತಿದಾಗ ಶಬ್ದಮಾಡು"</string>
<string name="popup_on_keypress" msgid="123894815723512944">"ಕೀ ಒತ್ತಿದಾಗ ಪಾಪ್ ಅಪ್‌ ಮಾಡು"</string>
- <string name="settings_screen_preferences" msgid="2696713156722014624">"ಆದ್ಯತೆಗಳು"</string>
+ <string name="settings_screen_preferences" msgid="2696713156722014624">"ಪ್ರಾಶಸ್ತ್ಯಗಳು"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"ಖಾತೆಗಳ ಗೌಪ್ಯತೆ"</string>
<string name="settings_screen_appearance" msgid="7358046399111611615">"ಗೋಚರತೆಯ ಲೇಔಟ್‌ಗಳ"</string>
<string name="settings_screen_gesture" msgid="8826372746901183556">"ಗೆಸ್ಚರ್ ಟೈಪಿಂಗ್"</string>
@@ -37,7 +37,7 @@
<string name="cloud_sync_title" msgid="8579271074443847055">"Google ಕೀಬೋರ್ಡ್‌ ಸಿಂಕ್‌"</string>
<string name="cloud_sync_summary" msgid="7684887161145650857">"ಸಿಂಕ್‌ ಆನ್‌ ಆಗಿದೆ"</string>
<string name="cloud_sync_summary_disabled" msgid="4553338970382825796">"ನಿಮ್ಮ ವೈಯಕ್ತಿಕ ನಿಘಂಟನ್ನು ಸಾಧನಗಳಲ್ಲಿ ಸಿಂಕ್ ಮಾಡಿ"</string>
- <string name="sync_now_title" msgid="3088838136743277721">"ಇದೀಗ ಸಿಂಕ್ ಮಾಡಿ"</string>
+ <string name="sync_now_title" msgid="3088838136743277721">"ಈಗ ಸಿಂಕ್ ಮಾಡು"</string>
<string name="clear_sync_data_title" msgid="8582001557037069154">"ಮೇಘ ಡೇಟಾವನ್ನು ಅಳಿಸಿ"</string>
<string name="clear_sync_data_summary" msgid="993477139012576584">"Google ನಿಂದ ನಿಮ್ಮ ಸಿಂಕ್ ಮಾಡಲಾದ ಡೇಟಾವನ್ನು ಅಳಿಸುತ್ತದೆ"</string>
<string name="clear_sync_data_confirmation" msgid="2811931135574727678">"ನಿಮ್ಮ ಸಿಂಕ್‌ ಮಾಡಲಾದ ಡೇಟಾವನ್ನು ಮೇಘದಿಂದ ಅಳಿಸಲಾಗುತ್ತದೆ. ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?"</string>
@@ -160,7 +160,7 @@
<string name="app_name" msgid="6320102637491234792">"ನಿಘಂಟು ಪೂರೈಕೆದಾರರು"</string>
<string name="dictionary_provider_name" msgid="3027315045397363079">"ನಿಘಂಟು ಪೂರೈಕೆದಾರರು"</string>
<string name="dictionary_service_name" msgid="6237472350693511448">"ನಿಘಂಟು ಸೇವೆ"</string>
- <string name="download_description" msgid="6014835283119198591">"ನಿಘಂಟು ನವೀಕರಣ ಮಾಹಿತಿ"</string>
+ <string name="download_description" msgid="6014835283119198591">"ನಿಘಂಟು ಅಪ್‌ಡೇಟ್‌‌ ಮಾಹಿತಿ"</string>
<string name="dictionary_settings_title" msgid="8091417676045693313">"ಆಡ್-ಆನ್ ನಿಘಂಟುಗಳು"</string>
<string name="dictionary_install_over_metered_network_prompt" msgid="3587517870006332980">"ನಿಘಂಟು ಲಭ್ಯವಿದೆ"</string>
<string name="dictionary_settings_summary" msgid="5305694987799824349">"ನಿಘಂಟುಗಳಿಗಾಗಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
diff --git a/java/res/values-lt/strings-emoji-descriptions.xml b/java/res/values-lt/strings-emoji-descriptions.xml
index afe9ac0e6..f6465f01f 100644
--- a/java/res/values-lt/strings-emoji-descriptions.xml
+++ b/java/res/values-lt/strings-emoji-descriptions.xml
@@ -59,7 +59,7 @@
<string name="spoken_emoji_2600" msgid="2272722634618990413">"Juoda saulė su spinduliais"</string>
<string name="spoken_emoji_2601" msgid="6205136889311537150">"Debesis"</string>
<string name="spoken_emoji_260E" msgid="8670395193046424238">"Juodas telefonas"</string>
- <string name="spoken_emoji_2611" msgid="4530550203347054611">"Apklausos langelis su varnele"</string>
+ <string name="spoken_emoji_2611" msgid="4530550203347054611">"Apklausos laukelis su varnele"</string>
<string name="spoken_emoji_2614" msgid="1612791247861229500">"Skėtis su lietaus lašais"</string>
<string name="spoken_emoji_2615" msgid="3320562382424018588">"Karštas gėrimas"</string>
<string name="spoken_emoji_261D" msgid="4690554173549768467">"Baltas į viršų rodantis pirštas"</string>
diff --git a/java/res/values-lt/strings-talkback-descriptions.xml b/java/res/values-lt/strings-talkback-descriptions.xml
index d2a97dd16..ba5124965 100644
--- a/java/res/values-lt/strings-talkback-descriptions.xml
+++ b/java/res/values-lt/strings-talkback-descriptions.xml
@@ -59,7 +59,7 @@
<string name="keyboard_mode_date" msgid="6597407244976713364">"datos"</string>
<string name="keyboard_mode_date_time" msgid="3642804408726668808">"datos ir laiko"</string>
<string name="keyboard_mode_email" msgid="1239682082047693644">"el. pašto"</string>
- <string name="keyboard_mode_im" msgid="3812086215529493501">"susirašinėjimo pranešimais"</string>
+ <string name="keyboard_mode_im" msgid="3812086215529493501">"Susirašinėjimas"</string>
<string name="keyboard_mode_number" msgid="5395042245837996809">"skaičių"</string>
<string name="keyboard_mode_phone" msgid="2486230278064523665">"telefonų numerių"</string>
<string name="keyboard_mode_text" msgid="9138789594969187494">"teksto"</string>
diff --git a/java/res/values-ml-rIN/strings.xml b/java/res/values-ml-rIN/strings.xml
index bed9e50ed..3e6ada080 100644
--- a/java/res/values-ml-rIN/strings.xml
+++ b/java/res/values-ml-rIN/strings.xml
@@ -24,14 +24,14 @@
<string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"കോൺടാക്‌റ്റ് പേരുകൾ തിരയുക"</string>
<string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"അക്ഷരത്തെറ്റ് പരിശോധന, നിങ്ങളുടെ കോൺടാക്‌റ്റ് ലിസ്‌റ്റിൽ നിന്നുള്ള എൻട്രികൾ ഉപയോഗിക്കുന്നു"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"കീ അമർത്തുമ്പോൾ വൈബ്രേറ്റുചെയ്യുക"</string>
- <string name="sound_on_keypress" msgid="6093592297198243644">"കീ അമർത്തുമ്പോഴുള്ള ശബ്‌ദമുണ്ടാക്കുക"</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"കീ അമർത്തുമ്പോൾ പോപ്പ്അപ്പ് ചെയ്യുക"</string>
+ <string name="sound_on_keypress" msgid="6093592297198243644">"കീയമർത്തുമ്പോൾ ശബ്ദം"</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"കീയമർത്തുമ്പോൾ പോപ്പപ്പ്"</string>
<string name="settings_screen_preferences" msgid="2696713156722014624">"മുൻഗണനകൾ"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"അക്കൗണ്ടുകളും സമന്വയവും"</string>
<string name="settings_screen_appearance" msgid="7358046399111611615">"രൂപഭാവവും ലേഔട്ടുകളും"</string>
<string name="settings_screen_gesture" msgid="8826372746901183556">"ഗെസ്ചർ ടൈപ്പിംഗ്"</string>
<string name="settings_screen_correction" msgid="1616818407747682955">"വാചകം തിരുത്തൽ"</string>
- <string name="settings_screen_advanced" msgid="7472408607625972994">"വിപുലമായ"</string>
+ <string name="settings_screen_advanced" msgid="7472408607625972994">"വിപുലം"</string>
<string name="settings_screen_theme" msgid="2137262503543943871">"തീം"</string>
<string name="enable_split_keyboard" msgid="4177264923999493614">"സ്‌പ്‌ലിറ്റ് കീബോർഡ് പ്രവർത്തനക്ഷമമാക്കുക"</string>
<string name="cloud_sync_title" msgid="8579271074443847055">"Google കീബോർഡ് സമന്വയം"</string>
@@ -55,18 +55,18 @@
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"സ്ഥിരമായത്"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g>മി.സെ"</string>
<string name="settings_system_default" msgid="6268225104743331821">"സ്ഥിരമായ സിസ്റ്റം"</string>
- <string name="use_contacts_dict" msgid="4435317977804180815">"കോൺടാക്‌റ്റ് പേരുകൾ നിർദ്ദേശിക്കുക"</string>
+ <string name="use_contacts_dict" msgid="4435317977804180815">"കോൺടാക്‌റ്റ് പേര് നിർദ്ദേശിക്കൂ"</string>
<string name="use_contacts_dict_summary" msgid="6599983334507879959">"നിർദ്ദേശങ്ങൾക്കും തിരുത്തലുകൾക്കുമായി കോൺടാക്‌റ്റുകളിൽ നിന്നുള്ള പേരുകൾ ഉപയോഗിക്കുക"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"വ്യക്തിഗതമാക്കിയ നിർദ്ദേശങ്ങൾ"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> മെച്ചപ്പെടുത്തുക"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"ഇരട്ട-സ്പെയ്സ് വിരാമം"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"സ്‌പെയ്‌സ് ബാറിൽ ഇരട്ട ടാപ്പുചെയ്യുന്നത്, ഒരു സ്‌പെയ്‌സിന് മുമ്പായി വിരാമം ഇടുന്നു"</string>
- <string name="auto_cap" msgid="1719746674854628252">"യാന്ത്രികമായി വലിയക്ഷരമാക്കൽ"</string>
+ <string name="auto_cap" msgid="1719746674854628252">"സ്വയം വലിയക്ഷരമാക്കുക"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"ഓരോ വാക്യത്തിന്റെയും ആദ്യ പദം വലിയക്ഷരമാക്കുക"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"വ്യക്തിഗത നിഘണ്ടു"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"ആഡ്-ഓൺ നിഘണ്ടുക്കൾ"</string>
<string name="main_dictionary" msgid="4798763781818361168">"പ്രധാന നിഘണ്ടു"</string>
- <string name="prefs_show_suggestions" msgid="8026799663445531637">"തിരുത്തൽ നിർദ്ദേശങ്ങൾ വായിക്കുക"</string>
+ <string name="prefs_show_suggestions" msgid="8026799663445531637">"തിരുത്തലുകൾ കാണിക്കുക"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"ടൈപ്പുചെയ്യുമ്പോൾ നിർദ്ദേശിച്ച വാക്കുകൾ പ്രദർശിപ്പിക്കുക"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"നിന്ദ്യമായ വാക്കുകൾ തടയുക"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"നിന്ദ്യമാകാനിടയുള്ള വാക്കുകൾ നിർദ്ദേശിക്കരുത്"</string>
@@ -78,7 +78,7 @@
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"വളരെ നിർബന്ധിതമായി"</string>
<string name="bigram_prediction" msgid="1084449187723948550">"അടുത്ത-പദ നിർദ്ദേശങ്ങൾ"</string>
<string name="bigram_prediction_summary" msgid="3896362682751109677">"നിർദ്ദേശങ്ങൾ സൃഷ്‌ടിക്കാൻ മുമ്പത്തെ പദം ഉപയോഗിക്കുക"</string>
- <string name="gesture_input" msgid="826951152254563827">"ജെസ്റ്റർ ടൈപ്പുചെയ്യൽ പ്രവർത്തനക്ഷമമാക്കുക"</string>
+ <string name="gesture_input" msgid="826951152254563827">"ജെസ്റ്റർടൈപ്പിംഗ് സജീവമാക്കൂ"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"അക്ഷരങ്ങളിലൂടെ സ്ലൈഡ് ചെയ്‌തുകൊണ്ട് ഒരു പദം ടൈപ്പുചെയ്യുക"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"ജെസ്റ്റർ ട്രെയിൽ കാണിക്കുക"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"ചലനാത്മക ഫ്ലോട്ടിംഗ് പ്രിവ്യൂ"</string>
diff --git a/java/res/values-ms-rMY/strings.xml b/java/res/values-ms-rMY/strings.xml
index 9f4c509c9..1df94276e 100644
--- a/java/res/values-ms-rMY/strings.xml
+++ b/java/res/values-ms-rMY/strings.xml
@@ -136,7 +136,7 @@
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"The same input style already exists: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Tempoh getaran tekan kekunci"</string>
<string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Kelantangan bunyi tekan kekunci"</string>
- <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Kelewatan tekan lama kekunci"</string>
+ <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Lengah tekan lama kekunci"</string>
<string name="button_default" msgid="3988017840431881491">"Lalai"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Selamat datang ke <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"dengan Taipan Gerak Isyarat"</string>
diff --git a/java/res/values-nb/strings.xml b/java/res/values-nb/strings.xml
index 705bada9c..581a3d6ff 100644
--- a/java/res/values-nb/strings.xml
+++ b/java/res/values-nb/strings.xml
@@ -51,7 +51,7 @@
<string name="show_language_switch_key" msgid="5915478828318774384">"Nøkkel for språkskifte"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Vis når flere inndataspråk er aktivert"</string>
<string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Tregt tastevindu"</string>
- <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"U/ forsinkelse"</string>
+ <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Uten forsinkelse"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Standard"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Systemstandard"</string>
@@ -71,7 +71,7 @@
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Blokkér støtende ord"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Ikke foreslå potensielt støtende ord"</string>
<string name="auto_correction" msgid="7630720885194996950">"Autokorrektur"</string>
- <string name="auto_correction_summary" msgid="5625751551134658006">"Mellomromstast og skilletegn retter automat. feilstavede ord"</string>
+ <string name="auto_correction_summary" msgid="5625751551134658006">"Mellomromstast og skilletegn retter automatisk feilstavede ord"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Av"</string>
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderat"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Omfattende"</string>
@@ -81,7 +81,7 @@
<string name="gesture_input" msgid="826951152254563827">"Aktiver ordføring"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Skriv inn et ord ved å sveipe langsmed bokstavene"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Vis bevegelsesspor"</string>
- <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dynamisk flytende forhåndsvsn."</string>
+ <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dynamiske flytende forslag"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Se det foreslåtte ordet mens du utfører bevegelser"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Frasebevegelse"</string>
<string name="gesture_space_aware_summary" msgid="4371385818348528538">"Sett inn mellomrom ved å dra fingeren til mellomromstasten"</string>
@@ -131,7 +131,7 @@
<string name="subtype_locale" msgid="8576443440738143764">"Språk"</string>
<string name="keyboard_layout_set" msgid="4309233698194565609">"Oppsett"</string>
<string name="custom_input_style_note_message" msgid="8826731320846363423">"Tilpasset inndatastil må aktiveres før bruk. Vil du aktivere nå?"</string>
- <string name="enable" msgid="5031294444630523247">"Aktiver"</string>
+ <string name="enable" msgid="5031294444630523247">"Slå på"</string>
<string name="not_now" msgid="6172462888202790482">"Ikke nå"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Inndatastilen finnes allerede: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Vibrasjonstid ved tastetrykk"</string>
@@ -143,7 +143,7 @@
<string name="setup_start_action" msgid="8936036460897347708">"Startveiledning"</string>
<string name="setup_next_action" msgid="371821437915144603">"Neste trinn"</string>
<string name="setup_steps_title" msgid="6400373034871816182">"Konfigurerer <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
- <string name="setup_step1_title" msgid="3147967630253462315">"Aktiver <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
+ <string name="setup_step1_title" msgid="3147967630253462315">"Slå på <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_step1_instruction" msgid="2578631936624637241">"Sjekk <xliff:g id="APPLICATION_NAME">%s</xliff:g> i Språk og inndata-innstillingene dine. Dette tillater appen å kjøre på enheten."</string>
<string name="setup_step1_finished_instruction" msgid="10761482004957994">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> er allerede aktivert i Språk og inndata-innstillingene dine, så dette trinnet er fullført. Gå til neste trinn!"</string>
<string name="setup_step1_action" msgid="4366513534999901728">"Aktiver i Innstillinger"</string>
diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml
index 2087a62a6..c0ff5377d 100644
--- a/java/res/values-nl/strings.xml
+++ b/java/res/values-nl/strings.xml
@@ -50,7 +50,7 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Schakelknop voor taal ook van toepassing op andere invoermethoden"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Schakelknop voor taal"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Weergeven wanneer meerdere invoertalen zijn geselecteerd"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Vertr.sluiten toetspop-up"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Pop-up vertraagd sluiten"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Geen vertraging"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Standaard"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
@@ -78,13 +78,13 @@
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Zeer agressief"</string>
<string name="bigram_prediction" msgid="1084449187723948550">"Suggesties voor volgend woord"</string>
<string name="bigram_prediction_summary" msgid="3896362682751109677">"Het vorige woord gebruiken bij het doen van suggesties"</string>
- <string name="gesture_input" msgid="826951152254563827">"Typen via tekenen inschakelen"</string>
- <string name="gesture_input_summary" msgid="9180350639305731231">"Voer een woord in door van letter naar letter te schuiven"</string>
+ <string name="gesture_input" msgid="826951152254563827">"Bewegingsinvoer inschakelen"</string>
+ <string name="gesture_input_summary" msgid="9180350639305731231">"Voer een woord in door van letter naar letter te bewegen"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Gebarenspoor weergeven"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dynamisch zwevend voorbeeld"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Het voorgestelde woord weergeven tijdens het tekenen"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Gebaar voor woordgroep"</string>
- <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Spaties invoeren bij gebaren door naar de spatietoets te bewegen"</string>
+ <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Spaties invoeren door naar de spatietoets te bewegen"</string>
<string name="voice_input" msgid="3583258583521397548">"Toets voor spraakinvoer"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"Geen spraakinvoermethoden ingeschakeld. Ga naar \'Instellingen voor taal en invoer\'."</string>
<string name="configure_input_method" msgid="373356270290742459">"Invoermethoden configureren"</string>
@@ -136,7 +136,7 @@
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Dezelfde invoerstijl bestaat al: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Trilingsduur bij toetsgebruik"</string>
<string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Geluidsvolume bij toetsgebruik"</string>
- <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Vertraging toets lang indrukkn"</string>
+ <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Lengte toetsinvoer"</string>
<string name="button_default" msgid="3988017840431881491">"Standaard"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Welkom bij <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"met Invoer met bewegingen"</string>
diff --git a/java/res/values-pl/strings-config-important-notice.xml b/java/res/values-pl/strings-config-important-notice.xml
index 315a61bc2..3d7af4108 100644
--- a/java/res/values-pl/strings-config-important-notice.xml
+++ b/java/res/values-pl/strings-config-important-notice.xml
@@ -20,5 +20,5 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="use_personalized_dicts_summary" msgid="590432261305469627">"Analizuj wiadomości i wpisywane dane, by ulepszać podpowiedzi"</string>
+ <string name="use_personalized_dicts_summary" msgid="590432261305469627">"Analizuj wiadomości i wpisywane dane, by otrzymywać lepsze podpowiedzi"</string>
</resources>
diff --git a/java/res/values-pl/strings.xml b/java/res/values-pl/strings.xml
index 9669502d5..a4818699e 100644
--- a/java/res/values-pl/strings.xml
+++ b/java/res/values-pl/strings.xml
@@ -56,7 +56,7 @@
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Ustawienie domyślne"</string>
<string name="use_contacts_dict" msgid="4435317977804180815">"Proponuj osoby z kontaktów"</string>
- <string name="use_contacts_dict_summary" msgid="6599983334507879959">"W propozycjach i poprawkach użyj nazwisk z kontaktów"</string>
+ <string name="use_contacts_dict_summary" msgid="6599983334507879959">"W podpowiedziach i poprawkach używaj nazwisk z kontaktów"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Spersonalizowane sugestie"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"Popraw aplikację <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"Szybka kropka ze spacją"</string>
@@ -67,7 +67,7 @@
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Dodatkowe słowniki"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Słownik główny"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"Pokazuj propozycje poprawek"</string>
- <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Wyświetl proponowane słowa podczas wpisywania"</string>
+ <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Wyświetlaj proponowane słowa podczas wpisywania"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Blokuj obraźliwe słowa"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Nie proponuj słów potencjalnie obraźliwych"</string>
<string name="auto_correction" msgid="7630720885194996950">"Autokorekta"</string>
@@ -76,13 +76,13 @@
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Umiarkowana"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Agresywna"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Bardzo agresywna"</string>
- <string name="bigram_prediction" msgid="1084449187723948550">"Podpowiadanie kolejnego słowa"</string>
+ <string name="bigram_prediction" msgid="1084449187723948550">"Podpowiadaj kolejne słowo"</string>
<string name="bigram_prediction_summary" msgid="3896362682751109677">"Pokazuj podpowiedzi na podstawie poprzedniego słowa"</string>
<string name="gesture_input" msgid="826951152254563827">"Włącz pisanie gestami"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Wpisz słowo, przesuwając palcem po literach"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Pokazuj ślad gestu"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dynamiczny podgląd słowa"</string>
- <string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Podczas gestykulacji będzie widoczne podpowiadane słowo"</string>
+ <string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Podczas pisania gestami zobaczysz podpowiadane słowo"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Gest wyrażenia"</string>
<string name="gesture_space_aware_summary" msgid="4371385818348528538">"Wpisuj spacje podczas gestów, przesuwając palec do klawisza spacji"</string>
<string name="voice_input" msgid="3583258583521397548">"Klawisz rozpoznawania mowy"</string>
@@ -186,7 +186,7 @@
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Pobierz przez Wi-Fi"</string>
<string name="dict_available_notification_title" msgid="4583842811218581658">"Dostępny jest słownik <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Naciśnij, by sprawdzić i pobrać"</string>
- <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Pobieranie – wkrótce będą dostępne sugestie w tym języku: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>."</string>
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Pobieranie – podpowiedzi w tym języku (<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>) będą dostępne wkrótce"</string>
<string name="version_text" msgid="2715354215568469385">"Wersja <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Dodaj"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Dodaj do słownika"</string>
diff --git a/java/res/values-ro/strings.xml b/java/res/values-ro/strings.xml
index ba01080ab..b72e5f5a9 100644
--- a/java/res/values-ro/strings.xml
+++ b/java/res/values-ro/strings.xml
@@ -67,7 +67,7 @@
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Dicţionare suplimentare"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Dicţionar principal"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"Afişaţi sugestii de corectare"</string>
- <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Afişaţi sugestii de cuvinte în timpul introducerii textului"</string>
+ <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Afișează sugestii de cuvinte în timpul introducerii textului"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Blocați cuvintele jignitoare"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Nu se sugerează cuvinte potențial jignitoare"</string>
<string name="auto_correction" msgid="7630720885194996950">"Autocorectare"</string>
diff --git a/java/res/values-sk/strings.xml b/java/res/values-sk/strings.xml
index 9b1de1136..2e0086ced 100644
--- a/java/res/values-sk/strings.xml
+++ b/java/res/values-sk/strings.xml
@@ -21,14 +21,14 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="english_ime_input_options" msgid="3909945612939668554">"Možnosti zadávania textu a údajov"</string>
- <string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"Vyhľadať kontakty"</string>
+ <string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"Hľadať mená kontaktov"</string>
<string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Kontrola pravopisu používa záznamy z vášho zoznamu kontaktov"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"Pri stlačení klávesu vibrovať"</string>
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk pri stlačení klávesu"</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"Zobraziť znaky pri stlačení klávesu"</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"Detail znaku pri stlačení"</string>
<string name="settings_screen_preferences" msgid="2696713156722014624">"Predvoľby"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"Účty a ochrana osobných údajov"</string>
- <string name="settings_screen_appearance" msgid="7358046399111611615">"Vzhľad a rozloženia"</string>
+ <string name="settings_screen_appearance" msgid="7358046399111611615">"Vzhľad a rozloženie"</string>
<string name="settings_screen_gesture" msgid="8826372746901183556">"Písanie gestami"</string>
<string name="settings_screen_correction" msgid="1616818407747682955">"Oprava textu"</string>
<string name="settings_screen_advanced" msgid="7472408607625972994">"Rozšírené"</string>
@@ -50,42 +50,42 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Kláves na prepnutie jazyka pokrýva aj ďalšie metódy vstupu"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Kľúč na prepínanie jazyka"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Zobraziť, keď je povolených viac jazykov vstupu"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Onesk. zrušenia kľúč. kon. okna"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Oneskorenie detailu znaku"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Bez oneskorenia"</string>
- <string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Predvolená"</string>
+ <string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Predvolené"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
- <string name="settings_system_default" msgid="6268225104743331821">"Predvolené nastav."</string>
- <string name="use_contacts_dict" msgid="4435317977804180815">"Navrhnúť mená kontaktov"</string>
- <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Používať mená z Kontaktov na návrhy a opravy"</string>
+ <string name="settings_system_default" msgid="6268225104743331821">"Predvolené"</string>
+ <string name="use_contacts_dict" msgid="4435317977804180815">"Navrhovať mená kontaktov"</string>
+ <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Používať mená z kontaktov na návrhy a opravy"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Prispôsobené návrhy"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"Zlepšiť aplikáciu <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"Bodka s medzerou"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"Bodka dvojitým medzerníkom"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"Dvojitým klepnutím na medzerník vložíte bodku a medzeru."</string>
<string name="auto_cap" msgid="1719746674854628252">"Veľké písmená automaticky"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Písanie prvého slova v každej vete veľkým písmenom"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Osobný slovník"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Doplnkové slovníky"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Hlavný slovník"</string>
- <string name="prefs_show_suggestions" msgid="8026799663445531637">"Zobraziť návrhy opráv"</string>
+ <string name="prefs_show_suggestions" msgid="8026799663445531637">"Zobrazovať návrhy opráv"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Zobrazovať navrhované slová počas písania"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Blokovať urážlivé slová"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Nenavrhovať potenciálne urážlivé slová"</string>
<string name="auto_correction" msgid="7630720885194996950">"Automatické opravy"</string>
- <string name="auto_correction_summary" msgid="5625751551134658006">"Stlačením medzerníka a interpunkcie sa aut. opravia chybné slová"</string>
+ <string name="auto_correction_summary" msgid="5625751551134658006">"Medzerník s klávesom interpunkcie automaticky opraví chybné slovo"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Vypnuté"</string>
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mierne"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Agresívne"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Veľmi agresívne"</string>
- <string name="bigram_prediction" msgid="1084449187723948550">"Návrhy ďalšieho slova"</string>
+ <string name="bigram_prediction" msgid="1084449187723948550">"Navrhovať ďalšie slovo"</string>
<string name="bigram_prediction_summary" msgid="3896362682751109677">"Návrhy podľa predchádzajúceho slova"</string>
<string name="gesture_input" msgid="826951152254563827">"Povoliť písanie gestami"</string>
- <string name="gesture_input_summary" msgid="9180350639305731231">"Vkladanie slov prejdením prstom po písmenách"</string>
+ <string name="gesture_input_summary" msgid="9180350639305731231">"Zadávanie slov prejdením prstom po písmenách"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Zobrazovať stopu gesta"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"Dynamická plávajúca ukážka"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Zobrazenie navrhovaného slova pri písaní gestami"</string>
- <string name="gesture_space_aware" msgid="2078291600664682496">"Frázové gesto"</string>
- <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Medzery medzi gestá vložíte prejdením po klávese medzerníka"</string>
- <string name="voice_input" msgid="3583258583521397548">"Kľúč hlasového vstupu"</string>
+ <string name="gesture_space_aware" msgid="2078291600664682496">"Frázové gestá"</string>
+ <string name="gesture_space_aware_summary" msgid="4371385818348528538">"Zadávanie medzier prechádzaním cez kláves medzerníka"</string>
+ <string name="voice_input" msgid="3583258583521397548">"Kláves hlasového vstupu"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"Nie sú povolené žiadne metódy hlasového vstupu. Skontrolujte nastavenia položky Jazyk a vstup."</string>
<string name="configure_input_method" msgid="373356270290742459">"Konfigurovať metódy vstupu"</string>
<string name="language_selection_title" msgid="3666971864764478269">"Jazyky"</string>
@@ -102,8 +102,8 @@
<string name="account_select_cancel" msgid="5181012062618504340">"Zrušiť"</string>
<string name="account_select_sign_out" msgid="3299651159390187933">"Odhlásiť sa"</string>
<string name="account_select_title" msgid="6279711684772922649">"Výber účtu, ktorý chcete použiť"</string>
- <string name="subtype_en_GB" msgid="88170601942311355">"Anglická klávesnica (UK)"</string>
- <string name="subtype_en_US" msgid="6160452336634534239">"Anglická klávesnica (US)"</string>
+ <string name="subtype_en_GB" msgid="88170601942311355">"angličtina (Veľká Británia)"</string>
+ <string name="subtype_en_US" msgid="6160452336634534239">"angličtina (USA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"španielčina (USA)"</string>
<string name="subtype_hi_ZZ" msgid="8860448146262798623">"Hinglish"</string>
<string name="subtype_sr_ZZ" msgid="9059219552986034343">"srbčina (latinka)"</string>
@@ -115,7 +115,7 @@
<string name="subtype_generic_traditional" msgid="8584594350973800586">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradičná)"</string>
<string name="subtype_generic_compact" msgid="3353673321203202922">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (kompaktná)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Žiadny jazyk (latinka)"</string>
- <string name="subtype_no_language_qwerty" msgid="244337630616742604">"Latinka (QWERTY)"</string>
+ <string name="subtype_no_language_qwerty" msgid="244337630616742604">"latinka (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Latinka (QWERTZ)"</string>
<string name="subtype_no_language_azerty" msgid="8144348527575640087">"Latinka (AZERTY)"</string>
<string name="subtype_no_language_dvorak" msgid="1564494667584718094">"Latinka (Dvorak)"</string>
@@ -134,9 +134,9 @@
<string name="enable" msgid="5031294444630523247">"Povoliť"</string>
<string name="not_now" msgid="6172462888202790482">"Teraz nie"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Rovnaký štýl vstupu už existuje: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
- <string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Trvanie vibrov. pri stlač. kl."</string>
- <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Hlasitosť pri stlačení klávesu"</string>
- <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Oneskor. pri stlač. a podržaní"</string>
+ <string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Dĺžka vibrácie klávesu"</string>
+ <string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Hlasitosť stlačenia klávesu"</string>
+ <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Oneskorenie dlhého stlačenia"</string>
<string name="button_default" msgid="3988017840431881491">"Predvolené"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Vitajte v aplikácii <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"s funkciou Písanie gestami"</string>
@@ -202,8 +202,8 @@
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"Upraviť slovo"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Upraviť"</string>
<string name="user_dict_settings_context_menu_delete_title" msgid="8142932447689461181">"Odstrániť"</string>
- <string name="user_dict_settings_empty_text" msgid="558499587532668203">"V používateľskom slovníku nie sú žiadne slová. Slovo pridáte dotknutím sa tlačidla Pridať (+)."</string>
- <string name="user_dict_settings_all_languages" msgid="8276126583216298886">"Pre všetky jazyky"</string>
+ <string name="user_dict_settings_empty_text" msgid="558499587532668203">"V používateľskom slovníku nie sú žiadne slová. Slovo pridáte klepnutím na tlačidlo Pridať (+)."</string>
+ <string name="user_dict_settings_all_languages" msgid="8276126583216298886">"pre všetky jazyky"</string>
<string name="user_dict_settings_more_languages" msgid="7131268499685180461">"Ďalšie jazyky…"</string>
<string name="user_dict_settings_delete" msgid="110413335187193859">"Odstrániť"</string>
<string name="user_dict_fast_scroll_alphabet" msgid="5431919401558285473">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
diff --git a/java/res/values-sq-rAL/strings.xml b/java/res/values-sq-rAL/strings.xml
index 19546ae7b..17620b1ac 100644
--- a/java/res/values-sq-rAL/strings.xml
+++ b/java/res/values-sq-rAL/strings.xml
@@ -43,9 +43,9 @@
<string name="clear_sync_data_confirmation" msgid="2811931135574727678">"Të dhënat e tua të sinkronizuara do të fshihen nga reja kompjuterike. Je i sigurt?"</string>
<string name="clear_sync_data_ok" msgid="613104067705915132">"Fshi"</string>
<string name="cloud_sync_cancel" msgid="5877481252150919037">"Anulo"</string>
- <string name="cloud_sync_opt_in_text" msgid="9176039655776298248">"Fjalori yt personal do të sinkronizohet dhe do të rezervohet në serverët e Google. Informacionet statistikore të frekuencës së fjalëve mund të mblidhen për të ndihmuar në përmirësimin e produkteve tona. Mbledhja dhe përdorimi i të gjitha informacioneve do të jetë në përputhje me "<a href="https://www.google.com/policies/privacy">"Politikën e privatësisë së Google"</a>"."</string>
+ <string name="cloud_sync_opt_in_text" msgid="9176039655776298248">"Fjalori yt personal do të sinkronizohet dhe do të rezervohet në serverët e Google. Informacionet statistikore të frekuencës së fjalëve mund të mblidhen për të ndihmuar në përmirësimin e produkteve tona. Mbledhja dhe përdorimi i të gjitha informacioneve do të jetë në përputhje me "<a href="https://www.google.com/policies/privacy">"\"Politikën e privatësisë së Google\""</a>"."</string>
<string name="add_account_to_enable_sync" msgid="7836932571852055265">"Shto një llogari të Google në këtë pajisje për të aktivizuar këtë funksion"</string>
- <string name="cloud_sync_summary_disabled_work_profile" msgid="1381770407303129164">"Sinkronizimi është i papërdorshëm për pajisjet me llogari të \"Aplikacioneve të Google për biznesin\""</string>
+ <string name="cloud_sync_summary_disabled_work_profile" msgid="1381770407303129164">"Sinkronizimi nuk mundësohet për pajisjet me llogari të \"Aplikacioneve të Google për biznesin\""</string>
<string name="include_other_imes_in_language_switch_list" msgid="4533689960308565519">"Kalo në metoda të tjera hyrjeje"</string>
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Tasti i ndryshimit të gjuhës mbulon edhe metoda të tjera hyrjeje"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Tasti i ndryshimit të gjuhës"</string>
@@ -182,7 +182,7 @@
<string name="cancel_download_dict" msgid="7843340278507019303">"Anulo"</string>
<string name="delete_dict" msgid="756853268088330054">"Fshi"</string>
<string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Gjuha e përzgjedhur në pajisjen tënde celulare mund të përdorë një fjalor.&lt;br/&gt; Rekomandojmë &lt;b&gt;shkarkimin&lt;/b&gt; e fjalorit <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> për të përmirësuar përvojën tënde të të shkruarit.&lt;br/&gt; &lt;br/&gt; Shkarkimi mund të zgjasë një ose dy minuta përmes rrjetit 3G. Mund të aplikohen tarifa nëse nuk ke një &lt;b&gt;plan të dhënash të pakufizuara&lt;/b&gt;.&lt;br/&gt; Nëse nuk je i sigurt se cilin plan të dhënash ke, rekomandojmë të gjesh një lidhje Wi-Fi për të filluar automatikisht shkarkimin.&lt;br/&gt; &lt;br/&gt; Këshillë! Mund të shkarkosh dhe heqësh fjalorë duke shkuar te menyja &lt;b&gt;\"Cilësimet e gjuhës dhe hyrjeve\"&lt;/b&gt; të pajisjes tënde celulare."</string>
- <string name="download_over_metered" msgid="1643065851159409546">"Shkarko tani (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> megabajt)"</string>
+ <string name="download_over_metered" msgid="1643065851159409546">"Shkarko tani (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Shkarko nga Wi-Fi"</string>
<string name="dict_available_notification_title" msgid="4583842811218581658">"Mund të përdoret një fjalor për <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Shtyp për të rishikuar dhe shkarkuar"</string>
diff --git a/java/res/values-sr/strings.xml b/java/res/values-sr/strings.xml
index ca3c84156..b19443b22 100644
--- a/java/res/values-sr/strings.xml
+++ b/java/res/values-sr/strings.xml
@@ -50,7 +50,7 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Тастер за пребацивање језика обухвата и друге методе уноса"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Тастер за пребацивање језика"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Прикажи када је омогућено више језика уноса"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Одложи одбац. иск. прозора тастера"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Одложи одбацивање искачућег прозора тастера"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Без одлагања"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Подразумевано"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
@@ -115,12 +115,12 @@
<string name="subtype_generic_traditional" msgid="8584594350973800586">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (традиционални)"</string>
<string name="subtype_generic_compact" msgid="3353673321203202922">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (компактна)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Нема језика (абецеда)"</string>
- <string name="subtype_no_language_qwerty" msgid="244337630616742604">"Абецеда (QWERTY)"</string>
- <string name="subtype_no_language_qwertz" msgid="443066912507547976">"Абецеда (QWERTZ)"</string>
- <string name="subtype_no_language_azerty" msgid="8144348527575640087">"Абецеда (AZERTY)"</string>
- <string name="subtype_no_language_dvorak" msgid="1564494667584718094">"Абецеда (Dvorak)"</string>
- <string name="subtype_no_language_colemak" msgid="5837418400010302623">"Абецеда (Colemak)"</string>
- <string name="subtype_no_language_pcqwerty" msgid="5354918232046200018">"Абецеда (PC)"</string>
+ <string name="subtype_no_language_qwerty" msgid="244337630616742604">"абецеда (QWERTY)"</string>
+ <string name="subtype_no_language_qwertz" msgid="443066912507547976">"абецеда (QWERTZ)"</string>
+ <string name="subtype_no_language_azerty" msgid="8144348527575640087">"абецеда (AZERTY)"</string>
+ <string name="subtype_no_language_dvorak" msgid="1564494667584718094">"абецеда (Dvorak)"</string>
+ <string name="subtype_no_language_colemak" msgid="5837418400010302623">"абецеда (Colemak)"</string>
+ <string name="subtype_no_language_pcqwerty" msgid="5354918232046200018">"абецеда (PC)"</string>
<string name="subtype_emoji" msgid="7483586578074549196">"Емотикони"</string>
<string name="keyboard_theme" msgid="4909551808526178852">"Тема тастатуре"</string>
<string name="custom_input_styles_title" msgid="8429952441821251512">"Прилаг. стилови уноса"</string>
diff --git a/java/res/values-ta-rIN/strings.xml b/java/res/values-ta-rIN/strings.xml
index 1623eaaea..0de509827 100644
--- a/java/res/values-ta-rIN/strings.xml
+++ b/java/res/values-ta-rIN/strings.xml
@@ -68,8 +68,8 @@
<string name="main_dictionary" msgid="4798763781818361168">"முதன்மை அகராதி"</string>
<string name="prefs_show_suggestions" msgid="8026799663445531637">"திருத்துதல் விருப்பங்களைக் காட்டு"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"உள்ளிடும்போது பரிந்துரைக்கப்பட்ட வார்த்தைகளைக் காட்டும்"</string>
- <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"தீங்குவிளைவிக்கும் வார்த்தைகளை தடு"</string>
- <string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"தீங்குவிளைவிக்க சாத்தியமுள்ளதான வார்த்தைகளைப் பரிந்துரைக்க வேண்டாம்"</string>
+ <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"வன்மொழி சொற்களைத் தடு"</string>
+ <string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"வன்மொழியாக இருக்கும் சாத்தியமுள்ள சொற்களைப் பரிந்துரைக்க வேண்டாம்"</string>
<string name="auto_correction" msgid="7630720885194996950">"தன்னியக்க திருத்தம்"</string>
<string name="auto_correction_summary" msgid="5625751551134658006">"ஸ்பேஸ்பாரும், நிறுத்தற்குறிகளும் தவறாக உள்ளிடப்பட்ட வார்த்தைகளை தானாக திருத்தும்"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"முடக்கத்தில்"</string>
@@ -81,7 +81,7 @@
<string name="gesture_input" msgid="826951152254563827">"சைகை உள்ளீட்டை இயக்கு"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"எழுத்துகள் வழியாக இழுப்பதன் மூலம் வார்த்தையை உள்ளிடலாம்"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"சைகை தடத்தைக் காட்டு"</string>
- <string name="gesture_floating_preview_text" msgid="4443240334739381053">"ஆற்றல்மிகு மிதக்கும் மாதிரிக்காட்சி"</string>
+ <string name="gesture_floating_preview_text" msgid="4443240334739381053">"நிகழ்நேர மிதக்கும் மாதிரிக்காட்சி"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"சைகையிடும் போது பரிந்துரைக்கும் வார்த்தையைப் பார்க்கலாம்"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"சொற்றொடர் சைகை"</string>
<string name="gesture_space_aware_summary" msgid="4371385818348528538">"ஸ்பேஸ் விசைக்கு இழுப்பதன் மூலம் சைகைகளுக்கு இடையே இடைவெளிகளை உள்ளிடலாம்"</string>
diff --git a/java/res/values-te-rIN/strings.xml b/java/res/values-te-rIN/strings.xml
index fa46d64c8..2c38c1ad8 100644
--- a/java/res/values-te-rIN/strings.xml
+++ b/java/res/values-te-rIN/strings.xml
@@ -197,7 +197,7 @@
<string name="user_dict_settings_add_word_option_name" msgid="6665558053408962865">"పదం:"</string>
<string name="user_dict_settings_add_shortcut_option_name" msgid="3094731590655523777">"సత్వరమార్గం:"</string>
<string name="user_dict_settings_add_locale_option_name" msgid="4738643440987277705">"భాష:"</string>
- <string name="user_dict_settings_add_word_hint" msgid="4902434148985906707">"పదాన్ని టైప్ చేయి"</string>
+ <string name="user_dict_settings_add_word_hint" msgid="4902434148985906707">"పదాన్ని టైప్ చేయండి"</string>
<string name="user_dict_settings_add_shortcut_hint" msgid="2265453012555060178">"ఐచ్ఛిక సత్వరమార్గం"</string>
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"పదాన్ని సవరించు"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"సవరించు"</string>
diff --git a/java/res/values-th/strings.xml b/java/res/values-th/strings.xml
index d0174417c..d2210220e 100644
--- a/java/res/values-th/strings.xml
+++ b/java/res/values-th/strings.xml
@@ -59,8 +59,8 @@
<string name="use_contacts_dict_summary" msgid="6599983334507879959">"ใช้ชื่อจากรายชื่อติดต่อสำหรับคำแนะนำและการแก้ไข"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"คำแนะนำในแบบของคุณ"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"ปรับปรุง <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"แตะ Space สองครั้งแทรกจุด"</string>
- <string name="use_double_space_period_summary" msgid="6532892187247952799">"แตะ Spacebar สองครั้งจะแทรกจุดตามด้วยช่องว่างหนึ่งช่อง"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"เคาะวรรคสองครั้งเพื่อพิมพ์จุด"</string>
+ <string name="use_double_space_period_summary" msgid="6532892187247952799">"เคาะวรรคสองครั้งจะแทรกจุดตามด้วยช่องว่างหนึ่งช่อง"</string>
<string name="auto_cap" msgid="1719746674854628252">"ปรับเป็นตัวพิมพ์ใหญ่อัตโนมัติ"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"ทำให้คำแรกของทุกประโยคเป็นตัวพิมพ์ใหญ่"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"พจนานุกรมส่วนตัว"</string>
@@ -80,7 +80,7 @@
<string name="bigram_prediction_summary" msgid="3896362682751109677">"ใช้คำก่อนหน้าในการสร้างข้อเสนอแนะ"</string>
<string name="gesture_input" msgid="826951152254563827">"เปิดการพิมพ์ด้วยท่าทางสัมผัส"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"ป้อนคำด้วยการเลื่อนผ่านตัวอักษร"</string>
- <string name="gesture_preview_trail" msgid="3802333369335722221">"แสดงรอยทางเดินของท่าทางสัมผัส"</string>
+ <string name="gesture_preview_trail" msgid="3802333369335722221">"แสดงรูปแบบของท่าทางสัมผัส"</string>
<string name="gesture_floating_preview_text" msgid="4443240334739381053">"ดูตัวอย่างลอยแบบไดนามิก"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"ดูคำแนะนำในขณะที่ใช้ท่าทางสัมผัส"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"ท่าทางสัมผัสสำหรับวลี"</string>
diff --git a/java/res/values-tr/strings.xml b/java/res/values-tr/strings.xml
index a243376b6..5d4772340 100644
--- a/java/res/values-tr/strings.xml
+++ b/java/res/values-tr/strings.xml
@@ -59,10 +59,10 @@
<string name="use_contacts_dict_summary" msgid="6599983334507879959">"Öneri ve düzeltmeler için Kişiler\'deki adları kullan"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Kişisel öneriler"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> uygulamasını iyileştir"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"Çift boşlukla nokta ekleme"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"Çift boşlukla nokta ekle"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"Boşluk çubuğuna iki kez dokunmak nokta ve ardından bir boşluk ekler"</string>
<string name="auto_cap" msgid="1719746674854628252">"Otomatik olarak büyük harf yap"</string>
- <string name="auto_cap_summary" msgid="7934452761022946874">"Her cümlenin ilk kelimesini büyük harf yap"</string>
+ <string name="auto_cap_summary" msgid="7934452761022946874">"Her cümlenin ilk harfini büyük harf yap"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Kişisel sözlük"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Ek sözlükler"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Ana sözlük"</string>
@@ -77,7 +77,7 @@
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Geniş ölçekte"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Çok geniş ölçekte"</string>
<string name="bigram_prediction" msgid="1084449187723948550">"Sonraki kelime önerileri"</string>
- <string name="bigram_prediction_summary" msgid="3896362682751109677">"Önerilerde bulunurken önceki kelimeyi kullan"</string>
+ <string name="bigram_prediction_summary" msgid="3896362682751109677">"Öneride bulunurken önceki kelimeyi kullan"</string>
<string name="gesture_input" msgid="826951152254563827">"Hareketle yazmayı etkinleştir"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Harflerin üzerinden parmağınızı kaydırarak kelime girin"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Hareket izini göster"</string>
@@ -202,7 +202,7 @@
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"Kelimeyi düzenle"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Düzenle"</string>
<string name="user_dict_settings_context_menu_delete_title" msgid="8142932447689461181">"Sil"</string>
- <string name="user_dict_settings_empty_text" msgid="558499587532668203">"Kullanıcı sözlüğünde hiç kelimeniz yok. Ekle (+) düğmesini kullanarak kelime ekleyin."</string>
+ <string name="user_dict_settings_empty_text" msgid="558499587532668203">"Kullanıcı sözlüğünde kelime yok. Ekle (+) düğmesini kullanarak kelime ekleyin."</string>
<string name="user_dict_settings_all_languages" msgid="8276126583216298886">"Tüm diller için"</string>
<string name="user_dict_settings_more_languages" msgid="7131268499685180461">"Diğer diller…"</string>
<string name="user_dict_settings_delete" msgid="110413335187193859">"Sil"</string>
diff --git a/java/res/values-uk/strings.xml b/java/res/values-uk/strings.xml
index 7414d68ce..68224e1f5 100644
--- a/java/res/values-uk/strings.xml
+++ b/java/res/values-uk/strings.xml
@@ -22,10 +22,10 @@
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="english_ime_input_options" msgid="3909945612939668554">"Парам. введення"</string>
<string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"Шукати імена контактів"</string>
- <string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Програма перевірки правопису використ. записи зі списку контактів"</string>
+ <string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Для перевірки правопису використовувати список контактів"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"Вібр. при натисканні клавіш"</string>
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натиску клав."</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"Сплив. при нат.клав."</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"Збільшення натиснутих"</string>
<string name="settings_screen_preferences" msgid="2696713156722014624">"Параметри"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"Облік. записи й конфіденційність"</string>
<string name="settings_screen_appearance" msgid="7358046399111611615">"Вигляд і розкладка"</string>
@@ -50,23 +50,23 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Клавіша зміни мови дозволяє змінювати методи введення"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Клавіша зміни мови"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Показувати, коли ввімкнено декілька мов введення"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Затримка клавіши закриття"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Затримка закривання"</string>
<string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Без затримки"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"За умовчанням"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> мс"</string>
<string name="settings_system_default" msgid="6268225104743331821">"За умовчанням"</string>
<string name="use_contacts_dict" msgid="4435317977804180815">"Пропон. імена контактів"</string>
- <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Використ. імена зі списку контактів для пропозицій і виправлень"</string>
+ <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Показувати виправлення на основі імен зі списку контактів"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Персональні пропозиції"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"Покращувати додаток <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="use_double_space_period" msgid="8781529969425082860">"Крапка подвійним пробілом"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"Подвійне натискання пробілу вставляє крапку з пробілом після неї"</string>
- <string name="auto_cap" msgid="1719746674854628252">"Авто викор. вел. літер"</string>
+ <string name="auto_cap" msgid="1719746674854628252">"Вел. літери автоматично"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Писати перше слово в кожному реченні з великої літери"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Особистий словник"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Додані словники"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Основний словник"</string>
- <string name="prefs_show_suggestions" msgid="8026799663445531637">"Показувати пропозиції виправлень"</string>
+ <string name="prefs_show_suggestions" msgid="8026799663445531637">"Варіанти виправлень"</string>
<string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Відображати пропоновані слова під час вводу"</string>
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Блокувати нецензурні слова"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Не пропонувати потенційно образливі слова"</string>
@@ -81,7 +81,7 @@
<string name="gesture_input" msgid="826951152254563827">"Увімкнути ввід жестами"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"Вводити слово, пересуваючи палець по буквах"</string>
<string name="gesture_preview_trail" msgid="3802333369335722221">"Показувати слід жестів"</string>
- <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Динамічний спливаючий перегляд"</string>
+ <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Показувати підказки"</string>
<string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Показувати пропоноване слово під час введення тексту жестами"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Безперервний ввід фраз"</string>
<string name="gesture_space_aware_summary" msgid="4371385818348528538">"Вставляйте пробіли, проводячи пальцем по клавіші пробілу"</string>
@@ -95,7 +95,7 @@
<string name="hint_add_to_dictionary_without_word" msgid="3040385779511255101">"Торкніться тут, щоб зберегти"</string>
<string name="has_dictionary" msgid="6071847973466625007">"Словник доступний"</string>
<string name="keyboard_layout" msgid="8451164783510487501">"Тема клавіатури"</string>
- <string name="switch_accounts" msgid="3321216593719006162">"Змінити обліковий запис"</string>
+ <string name="switch_accounts" msgid="3321216593719006162">"Змінити облік. запис"</string>
<string name="no_accounts_selected" msgid="2073821619103904330">"Не вибрано облікових записів"</string>
<string name="account_selected" msgid="2846876462199625974">"Зараз використовується <xliff:g id="EMAIL_ADDRESS">%1$s</xliff:g>"</string>
<string name="account_select_ok" msgid="9141195141763227797">"ОК"</string>
@@ -202,7 +202,7 @@
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"Редагувати слово"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Редагувати"</string>
<string name="user_dict_settings_context_menu_delete_title" msgid="8142932447689461181">"Видалити"</string>
- <string name="user_dict_settings_empty_text" msgid="558499587532668203">"У словнику користувача немає жодного слова. Додайте слово, торкнувшись кнопки \"Додати\" (+)."</string>
+ <string name="user_dict_settings_empty_text" msgid="558499587532668203">"У словнику користувача нічого немає. Додавати слова можна за допомогою кнопки \"Додати\" (+)."</string>
<string name="user_dict_settings_all_languages" msgid="8276126583216298886">"Для всіх мов"</string>
<string name="user_dict_settings_more_languages" msgid="7131268499685180461">"Інші мови…"</string>
<string name="user_dict_settings_delete" msgid="110413335187193859">"Видалити"</string>
diff --git a/java/res/values-ur-rPK/strings.xml b/java/res/values-ur-rPK/strings.xml
index 20ea15f1a..9d5c4f66e 100644
--- a/java/res/values-ur-rPK/strings.xml
+++ b/java/res/values-ur-rPK/strings.xml
@@ -71,7 +71,7 @@
<string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"ناگوار الفاظ مسدود کریں"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"ممکنہ طور پر ناگوار الفاظ تجویز نہ کریں"</string>
<string name="auto_correction" msgid="7630720885194996950">"خود کار اصلاح"</string>
- <string name="auto_correction_summary" msgid="5625751551134658006">"اسپیس بار اور رموز اوقاف غلط ٹائپ کردہ الفاظ کی اصلاح کریں"</string>
+ <string name="auto_correction_summary" msgid="5625751551134658006">"اسپیس بار اور رموز اوقاف غلط ٹائپ کردہ الفاظ کی اصلاح کرتے ہیں"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"آف"</string>
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"معتدل"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"پر جوش"</string>
diff --git a/java/res/values-uz-rUZ/strings-emoji-descriptions.xml b/java/res/values-uz-rUZ/strings-emoji-descriptions.xml
index b1869e5be..da706541d 100644
--- a/java/res/values-uz-rUZ/strings-emoji-descriptions.xml
+++ b/java/res/values-uz-rUZ/strings-emoji-descriptions.xml
@@ -45,7 +45,7 @@
<string name="spoken_emoji_23EA" msgid="2251396938087774944">"Chapga qarab turgan qora qo‘sh uchburchak"</string>
<string name="spoken_emoji_23EB" msgid="3746885195641491865">"Yuqoriga qaragan qora qo‘sh uchburchak"</string>
<string name="spoken_emoji_23EC" msgid="7852372752901163416">"Pastga qaragan qora qo‘sh uchburchak"</string>
- <string name="spoken_emoji_23F0" msgid="8474219588750627870">"Uyg‘otkich soat"</string>
+ <string name="spoken_emoji_23F0" msgid="8474219588750627870">"Uyg‘otadigan soat"</string>
<string name="spoken_emoji_23F3" msgid="166900119581024371">"Qum tushayotgan qumsoat"</string>
<string name="spoken_emoji_24C2" msgid="3948348737566038470">"Aylana ichida lotincha M harfi"</string>
<string name="spoken_emoji_25AA" msgid="7865181015100227349">"Qora kichkina kvadratcha"</string>
diff --git a/java/res/values-uz-rUZ/strings.xml b/java/res/values-uz-rUZ/strings.xml
index b65b79d32..209796b58 100644
--- a/java/res/values-uz-rUZ/strings.xml
+++ b/java/res/values-uz-rUZ/strings.xml
@@ -22,24 +22,24 @@
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="english_ime_input_options" msgid="3909945612939668554">"Matn kiritish sozlamalari"</string>
<string name="use_contacts_for_spellchecking_option_title" msgid="5374120998125353898">"Kontaktlarni qidirish"</string>
- <string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Imlo tekshirgich kontaktlaringizdagi qaydlardan foydalanadi"</string>
+ <string name="use_contacts_for_spellchecking_option_summary" msgid="8754413382543307713">"Imloni tekshirishda kontaktlar ro‘yxatiga murojaat qilish"</string>
<string name="vibrate_on_keypress" msgid="5258079494276955460">"Tugma bosilganda tebranish"</string>
<string name="sound_on_keypress" msgid="6093592297198243644">"Tugma bosilganda ovoz"</string>
- <string name="popup_on_keypress" msgid="123894815723512944">"Tugma bosilganda qalqib chiqish"</string>
- <string name="settings_screen_preferences" msgid="2696713156722014624">"Shaxsiy sozlamalar"</string>
+ <string name="popup_on_keypress" msgid="123894815723512944">"Tugma bosilganda qalqish"</string>
+ <string name="settings_screen_preferences" msgid="2696713156722014624">"Sozlamalar"</string>
<string name="settings_screen_accounts" msgid="2786418968536696670">"Hisoblar va maxfiylik"</string>
- <string name="settings_screen_appearance" msgid="7358046399111611615">"Tashqi ko‘rinishi va joylashuvi"</string>
- <string name="settings_screen_gesture" msgid="8826372746901183556">"Imo-ishoralar bilan yozish"</string>
+ <string name="settings_screen_appearance" msgid="7358046399111611615">"Ko‘rinish va sxema"</string>
+ <string name="settings_screen_gesture" msgid="8826372746901183556">"Qo‘l uzmasdan yozish"</string>
<string name="settings_screen_correction" msgid="1616818407747682955">"Matnni tuzatish"</string>
<string name="settings_screen_advanced" msgid="7472408607625972994">"Qo‘shimcha"</string>
<string name="settings_screen_theme" msgid="2137262503543943871">"Mavzu"</string>
<string name="enable_split_keyboard" msgid="4177264923999493614">"Ikkiga ajratiladigan klaviaturani yoqish"</string>
- <string name="cloud_sync_title" msgid="8579271074443847055">"Google klaviaturasini sinx-sh"</string>
+ <string name="cloud_sync_title" msgid="8579271074443847055">"Klaviaturani sinxronlash"</string>
<string name="cloud_sync_summary" msgid="7684887161145650857">"Sinxronlash yoqildi"</string>
<string name="cloud_sync_summary_disabled" msgid="4553338970382825796">"Shaxsiy lug‘atingizni qurilmalar bo‘ylab sinxronlang"</string>
- <string name="sync_now_title" msgid="3088838136743277721">"Hozir sinxronlash"</string>
+ <string name="sync_now_title" msgid="3088838136743277721">"Sinxronlash"</string>
<string name="clear_sync_data_title" msgid="8582001557037069154">"Bulutdagi ma’lumotlarni o‘chirish"</string>
- <string name="clear_sync_data_summary" msgid="993477139012576584">"Google xizmatlaridagi sinxronlangan ma’lumotlaringizni o‘chirib tashlaydi"</string>
+ <string name="clear_sync_data_summary" msgid="993477139012576584">"Sinxronlangan ma’lumotlarni Google serveridan o‘chirib tashlash"</string>
<string name="clear_sync_data_confirmation" msgid="2811931135574727678">"Sinxronlangan ma’lumotlaringiz o‘chib ketadi. Davom etsinmi?"</string>
<string name="clear_sync_data_ok" msgid="613104067705915132">"O‘chirish"</string>
<string name="cloud_sync_cancel" msgid="5877481252150919037">"Bekor qilish"</string>
@@ -50,42 +50,42 @@
<string name="include_other_imes_in_language_switch_list_summary" msgid="840637129103317635">"Tilni o‘zgartirish tugmasi matn kiritish usulini ham o‘zgartiradi"</string>
<string name="show_language_switch_key" msgid="5915478828318774384">"Tilni o‘zgartirish tugmasi"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Bir nechta matn kiritish tili mavjud bo‘lganda ko‘rsatilsin"</string>
- <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Yopilish uchun to‘xtalish"</string>
- <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"To‘xtalishlarsiz"</string>
+ <string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Yopilish vaqti"</string>
+ <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Kechikishsiz"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Standart"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> ms"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Tizim standarti"</string>
<string name="use_contacts_dict" msgid="4435317977804180815">"Ismlarni taklif qilish"</string>
- <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Kontaktlardagi ismlardan takliflar va tuzatishlarda foydalanilsin"</string>
+ <string name="use_contacts_dict_summary" msgid="6599983334507879959">"Kontaktlar ro‘yxatidagi ismlar asosida tuzatmalarni taklif qilish"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Moslashtirilgan takliflar"</string>
- <string name="enable_metrics_logging" msgid="5506372337118822837">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> ilovasini takomillashtirish"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"Nuqta avtomatik qo‘yilsin"</string>
- <string name="use_double_space_period_summary" msgid="6532892187247952799">"Bo‘sh joy tugmasini ikki marta bosish nuqta va bo‘sh joy qoldirsin"</string>
- <string name="auto_cap" msgid="1719746674854628252">"Avtomatik bosh harfga o‘tkazish"</string>
+ <string name="enable_metrics_logging" msgid="5506372337118822837">"<xliff:g id="APPLICATION_NAME">%s</xliff:g>ni yaxshilash"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"Nuqtani avtomatik qo‘yish"</string>
+ <string name="use_double_space_period_summary" msgid="6532892187247952799">"Bo‘sh joy tugmasi ikki marta bosilsa, nuqta va bo‘sh joy qo‘yiladi"</string>
+ <string name="auto_cap" msgid="1719746674854628252">"Avtomatik bosh harf"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Har bir gapning birinchi so‘zini bosh harf bilan yozish"</string>
<string name="edit_personal_dictionary" msgid="3996910038952940420">"Shaxsiy lug‘at"</string>
<string name="configure_dictionaries_title" msgid="4238652338556902049">"Qo‘shimcha lug‘atlar"</string>
<string name="main_dictionary" msgid="4798763781818361168">"Asosiy lug‘at"</string>
- <string name="prefs_show_suggestions" msgid="8026799663445531637">"To‘g‘rilash uchun variantlar"</string>
- <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Yozayotganda taklif qilingan so‘zlar ko‘rsatilsin"</string>
- <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Haqoratomuz so‘zlarni bloklash"</string>
+ <string name="prefs_show_suggestions" msgid="8026799663445531637">"Tuzatma variantlari"</string>
+ <string name="prefs_show_suggestions_summary" msgid="1583132279498502825">"Matn kiritishda taklif qilingan so‘zlarni ko‘rsatish"</string>
+ <string name="prefs_block_potentially_offensive_title" msgid="5078480071057408934">"Haqorat so‘zlarini bloklash"</string>
<string name="prefs_block_potentially_offensive_summary" msgid="2371835479734991364">"Haqoratomuz so‘zlar taklif qilinmasin"</string>
- <string name="auto_correction" msgid="7630720885194996950">"Avtomatik to‘g‘rilash"</string>
- <string name="auto_correction_summary" msgid="5625751551134658006">"Bo‘sh joy yoki tinish belgisi xato yoz-n so‘z-ni avto. to‘g‘ri-di"</string>
+ <string name="auto_correction" msgid="7630720885194996950">"Avtomatik tuzatish"</string>
+ <string name="auto_correction_summary" msgid="5625751551134658006">"Tinish belgisi kiritilsa yoki bo‘sh joy qoldirilsa, xato so‘z avtomatik tuzatiladi"</string>
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"O‘chirish"</string>
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"O‘rtacha"</string>
<string name="auto_correction_threshold_mode_aggressive" msgid="7319007299148899623">"Juda faol"</string>
<string name="auto_correction_threshold_mode_very_aggressive" msgid="1853309024129480416">"Juda faol"</string>
<string name="bigram_prediction" msgid="1084449187723948550">"Keyingi so‘zni taklif qilish"</string>
- <string name="bigram_prediction_summary" msgid="3896362682751109677">"So‘zlarni taklif qilishda avval yozilgan so‘zga asoslanish"</string>
- <string name="gesture_input" msgid="826951152254563827">"Imo-ishoralar bilan yozish"</string>
+ <string name="bigram_prediction_summary" msgid="3896362682751109677">"Avvalgi so‘zlar asosida keyingi so‘zni taklif qilish"</string>
+ <string name="gesture_input" msgid="826951152254563827">"Qo‘l uzmasdan yozish"</string>
<string name="gesture_input_summary" msgid="9180350639305731231">"So‘zlarni barmog‘ingizni klaviaturadan uzmasdan yozing"</string>
- <string name="gesture_preview_trail" msgid="3802333369335722221">"Chiziq chizish"</string>
- <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Taklif qil-n so‘z-ni ko‘rsatish"</string>
- <string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Matn kiritayotganda taklif qilingan so‘zlarni ko‘rsatish"</string>
+ <string name="gesture_preview_trail" msgid="3802333369335722221">"Barmoq yo‘lini chizish"</string>
+ <string name="gesture_floating_preview_text" msgid="4443240334739381053">"Takliflarni ko‘rsatish"</string>
+ <string name="gesture_floating_preview_text_summary" msgid="4472696213996203533">"Matn kiritishda taklif qilingan so‘zlarni ko‘rsatish"</string>
<string name="gesture_space_aware" msgid="2078291600664682496">"Iboralarni uzluksiz kiritish"</string>
<string name="gesture_space_aware_summary" msgid="4371385818348528538">"Barmoqni har bir so‘zdan so‘ng bo‘sh joy qoldirish tugmasiga olib borish"</string>
- <string name="voice_input" msgid="3583258583521397548">"Ovoz bilan kiritish tugmasi"</string>
+ <string name="voice_input" msgid="3583258583521397548">"Ovoz bilan yozish tugmasi"</string>
<string name="voice_input_disabled_summary" msgid="8141750303464726129">"Ovoz bilan yozish usuli yoqilmagan. Til va matn kiritish sozlamalarini tekshiring."</string>
<string name="configure_input_method" msgid="373356270290742459">"Matn kiritish usullarini sozlash"</string>
<string name="language_selection_title" msgid="3666971864764478269">"Tillar"</string>
@@ -123,23 +123,23 @@
<string name="subtype_no_language_pcqwerty" msgid="5354918232046200018">"Lotin (shaxsiy kompyuter)"</string>
<string name="subtype_emoji" msgid="7483586578074549196">"Kulgichlar"</string>
<string name="keyboard_theme" msgid="4909551808526178852">"Klaviatura mavzusi"</string>
- <string name="custom_input_styles_title" msgid="8429952441821251512">"Moslashtirilgan usullar"</string>
- <string name="add_style" msgid="6163126614514489951">"Uslub qo‘shish"</string>
+ <string name="custom_input_styles_title" msgid="8429952441821251512">"Maxsus usullar"</string>
+ <string name="add_style" msgid="6163126614514489951">"Usul qo‘shish"</string>
<string name="add" msgid="8299699805688017798">"Qo‘shish"</string>
<string name="remove" msgid="4486081658752944606">"O‘chirish"</string>
<string name="save" msgid="7646738597196767214">"Saqlash"</string>
<string name="subtype_locale" msgid="8576443440738143764">"Til"</string>
- <string name="keyboard_layout_set" msgid="4309233698194565609">"Joylashuv"</string>
+ <string name="keyboard_layout_set" msgid="4309233698194565609">"Sxema"</string>
<string name="custom_input_style_note_message" msgid="8826731320846363423">"Moslashtirilgan matn kiritish usulini yoqish lozim. Uni hozir yoqmoqchimisiz?"</string>
<string name="enable" msgid="5031294444630523247">"Yoqish"</string>
<string name="not_now" msgid="6172462888202790482">"Hozir emas"</string>
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Xuddi shunday matn kiritish usuli allaqachon mavjud: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Tugma bosilganda tebranish vaqti"</string>
<string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Tugma bosilgandagi ovoz"</string>
- <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Uzoq bosib turish"</string>
+ <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Tugmani bosib turish"</string>
<string name="button_default" msgid="3988017840431881491">"Standart"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"<xliff:g id="APPLICATION_NAME">%s</xliff:g> ilovasiga xush kelibsiz!"</string>
- <string name="setup_welcome_additional_description" msgid="8150252008545768953">"Imo-ishoralar bilan yozish"</string>
+ <string name="setup_welcome_additional_description" msgid="8150252008545768953">"qo‘l uzmasdan yozish"</string>
<string name="setup_start_action" msgid="8936036460897347708">"Boshladik"</string>
<string name="setup_next_action" msgid="371821437915144603">"Keyingi qadam"</string>
<string name="setup_steps_title" msgid="6400373034871816182">"Sozlash: <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
@@ -187,7 +187,7 @@
<string name="dict_available_notification_title" msgid="4583842811218581658">"Lug‘at mavjud: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Ko‘rib chiqish va yuklab olish uchun bosing"</string>
<string name="toast_downloading_suggestions" msgid="6128155879830851739">"Yuklab olinmoqda: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> tili uchun so‘zlarni taklif qilish xususiyati tez orada tayyor bo‘ladi."</string>
- <string name="version_text" msgid="2715354215568469385">"<xliff:g id="VERSION_NUMBER">%1$s</xliff:g> versiyasi"</string>
+ <string name="version_text" msgid="2715354215568469385">"<xliff:g id="VERSION_NUMBER">%1$s</xliff:g> versiya"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Qo‘shish"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Lug‘atga qo‘shish"</string>
<string name="user_dict_settings_add_screen_title" msgid="5818914331629278758">"Ibora"</string>
@@ -198,7 +198,7 @@
<string name="user_dict_settings_add_shortcut_option_name" msgid="3094731590655523777">"Tezkor tugmalar:"</string>
<string name="user_dict_settings_add_locale_option_name" msgid="4738643440987277705">"Til:"</string>
<string name="user_dict_settings_add_word_hint" msgid="4902434148985906707">"So‘zni kiriting"</string>
- <string name="user_dict_settings_add_shortcut_hint" msgid="2265453012555060178">"Ibora uchun yorliq (ixtiyoriy)"</string>
+ <string name="user_dict_settings_add_shortcut_hint" msgid="2265453012555060178">"Tezkor tugma (ixtiyoriy)"</string>
<string name="user_dict_settings_edit_dialog_title" msgid="3765774633869590352">"So‘zni tahrirlash"</string>
<string name="user_dict_settings_context_menu_edit_title" msgid="6812255903472456302">"Tahrirlash"</string>
<string name="user_dict_settings_context_menu_delete_title" msgid="8142932447689461181">"O‘chirish"</string>
diff --git a/java/res/values-vi/strings.xml b/java/res/values-vi/strings.xml
index 6217ec18b..55302ff12 100644
--- a/java/res/values-vi/strings.xml
+++ b/java/res/values-vi/strings.xml
@@ -51,7 +51,7 @@
<string name="show_language_switch_key" msgid="5915478828318774384">"Phím chuyển đổi ngôn ngữ"</string>
<string name="show_language_switch_key_summary" msgid="7343403647474265713">"Hiển thị khi nhiều ngôn ngữ đầu vào được bật"</string>
<string name="key_preview_popup_dismiss_delay" msgid="6213164897443068248">"Độ trễ ẩn phím bật lên"</string>
- <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Không có tgian trễ"</string>
+ <string name="key_preview_popup_dismiss_no_delay" msgid="2096123151571458064">"Không trễ"</string>
<string name="key_preview_popup_dismiss_default_delay" msgid="2166964333903906734">"Mặc định"</string>
<string name="abbreviation_unit_milliseconds" msgid="8700286094028323363">"<xliff:g id="MILLISECONDS">%s</xliff:g> mili giây"</string>
<string name="settings_system_default" msgid="6268225104743331821">"Mặc định của hệ thống"</string>
@@ -59,7 +59,7 @@
<string name="use_contacts_dict_summary" msgid="6599983334507879959">"Sử dụng tên từ Danh bạ cho các đề xuất và chỉnh sửa"</string>
<string name="use_personalized_dicts" msgid="5167396352105467626">"Đề xuất được cá nhân hóa"</string>
<string name="enable_metrics_logging" msgid="5506372337118822837">"Cải thiện <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
- <string name="use_double_space_period" msgid="8781529969425082860">"Nhấn đúp phím cách chèn dấu chấm câu"</string>
+ <string name="use_double_space_period" msgid="8781529969425082860">"Đúp phím cách chèn dấu chấm"</string>
<string name="use_double_space_period_summary" msgid="6532892187247952799">"Nhấn đúp phím cách sẽ chèn thêm một dấu chấm câu, theo sau là dấu cách"</string>
<string name="auto_cap" msgid="1719746674854628252">"Tự động viết hoa"</string>
<string name="auto_cap_summary" msgid="7934452761022946874">"Viết hoa chữ đầu tiên của mỗi câu"</string>
@@ -136,7 +136,7 @@
<string name="custom_input_style_already_exists" msgid="8008728952215449707">"Đã tồn tại kiểu nhập tương tự: <xliff:g id="INPUT_STYLE_NAME">%s</xliff:g>"</string>
<string name="prefs_keypress_vibration_duration_settings" msgid="7918341459947439226">"Thời gian rung khi nhấn phím"</string>
<string name="prefs_keypress_sound_volume_settings" msgid="6027007337036891623">"Âm lượng khi nhấn phím"</string>
- <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Tgian chờ cho nhấn và giữ phím"</string>
+ <string name="prefs_key_longpress_timeout_settings" msgid="6102240298932897873">"Thời gian trễ nhấn và giữ phím"</string>
<string name="button_default" msgid="3988017840431881491">"Mặc định"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Chào mừng bạn đến với <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"với Nhập bằng cử chỉ"</string>
diff --git a/java/src/com/android/inputmethod/dictionarypack/ActionBatch.java b/java/src/com/android/inputmethod/dictionarypack/ActionBatch.java
index 09f8032cc..ee5106b5a 100644
--- a/java/src/com/android/inputmethod/dictionarypack/ActionBatch.java
+++ b/java/src/com/android/inputmethod/dictionarypack/ActionBatch.java
@@ -26,7 +26,9 @@ import android.text.TextUtils;
import android.util.Log;
import com.android.inputmethod.compat.DownloadManagerCompatUtils;
+import com.android.inputmethod.latin.BinaryDictionaryFileDumper;
import com.android.inputmethod.latin.R;
+import com.android.inputmethod.latin.common.LocaleUtils;
import com.android.inputmethod.latin.utils.ApplicationUtils;
import com.android.inputmethod.latin.utils.DebugLogUtils;
@@ -210,9 +212,17 @@ public final class ActionBatch {
+ " for an InstallAfterDownload action. Bailing out.");
return;
}
+
DebugLogUtils.l("Setting word list as installed");
final SQLiteDatabase db = MetadataDbHelper.getDb(context, mClientId);
MetadataDbHelper.markEntryAsFinishedDownloadingAndInstalled(db, mWordListValues);
+
+ // Install the downloaded file by un-compressing and moving it to the staging
+ // directory. Ideally, we should do this before updating the DB, but the
+ // installDictToStagingFromContentProvider() relies on the db being updated.
+ final String localeString = mWordListValues.getAsString(MetadataDbHelper.LOCALE_COLUMN);
+ BinaryDictionaryFileDumper.installDictToStagingFromContentProvider(
+ LocaleUtils.constructLocaleFromString(localeString), context, false);
}
}
diff --git a/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java b/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java
index e61547a9d..6570171a6 100644
--- a/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java
+++ b/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java
@@ -592,6 +592,8 @@ public final class UpdateHandler {
* Warn Android Keyboard that the state of dictionaries changed and it should refresh its data.
*/
private static void signalNewDictionaryState(final Context context) {
+ // TODO: Also provide the locale of the updated dictionary so that the LatinIme
+ // does not have to reset if it is a different locale.
final Intent newDictBroadcast =
new Intent(DictionaryPackConstants.NEW_DICTIONARY_INTENT_ACTION);
context.sendBroadcast(newDictBroadcast);
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java b/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java
index bc62f3ae3..4b242c5f5 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionaryFileDumper.java
@@ -29,6 +29,7 @@ import android.util.Log;
import com.android.inputmethod.dictionarypack.DictionaryPackConstants;
import com.android.inputmethod.dictionarypack.MD5Calculator;
+import com.android.inputmethod.latin.common.FileUtils;
import com.android.inputmethod.latin.define.DecoderSpecificConstants;
import com.android.inputmethod.latin.utils.DictionaryInfoUtils;
import com.android.inputmethod.latin.utils.DictionaryInfoUtils.DictionaryInfo;
@@ -220,11 +221,11 @@ public final class BinaryDictionaryFileDumper {
}
/**
- * Caches a word list the id of which is passed as an argument. This will write the file
+ * Stages a word list the id of which is passed as an argument. This will write the file
* to the cache file name designated by its id and locale, overwriting it if already present
* and creating it (and its containing directory) if necessary.
*/
- private static void cacheWordList(final String wordlistId, final String locale,
+ private static void installWordListToStaging(final String wordlistId, final String locale,
final String rawChecksum, final ContentProviderClient providerClient,
final Context context) {
final int COMPRESSED_CRYPTED_COMPRESSED = 0;
@@ -246,7 +247,7 @@ public final class BinaryDictionaryFileDumper {
return;
}
final String finalFileName =
- DictionaryInfoUtils.getCacheFileName(wordlistId, locale, context);
+ DictionaryInfoUtils.getStagingFileName(wordlistId, locale, context);
String tempFileName;
try {
tempFileName = BinaryDictionaryGetter.getTempFileName(wordlistId, context);
@@ -320,23 +321,21 @@ public final class BinaryDictionaryFileDumper {
}
}
+ // move the output file to the final staging file.
final File finalFile = new File(finalFileName);
- finalFile.delete();
- if (!outputFile.renameTo(finalFile)) {
- throw new IOException("Can't move the file to its final name");
- }
+ FileUtils.renameTo(outputFile, finalFile);
+
wordListUriBuilder.appendQueryParameter(QUERY_PARAMETER_DELETE_RESULT,
QUERY_PARAMETER_SUCCESS);
if (0 >= providerClient.delete(wordListUriBuilder.build(), null, null)) {
Log.e(TAG, "Could not have the dictionary pack delete a word list");
}
- BinaryDictionaryGetter.removeFilesWithIdExcept(context, wordlistId, finalFile);
- Log.e(TAG, "Successfully copied file for wordlist ID " + wordlistId);
+ Log.d(TAG, "Successfully copied file for wordlist ID " + wordlistId);
// Success! Close files (through the finally{} clause) and return.
return;
} catch (Exception e) {
if (DEBUG) {
- Log.i(TAG, "Can't open word list in mode " + mode, e);
+ Log.e(TAG, "Can't open word list in mode " + mode, e);
}
if (null != outputFile) {
// This may or may not fail. The file may not have been created if the
@@ -403,7 +402,7 @@ public final class BinaryDictionaryFileDumper {
}
/**
- * Queries a content provider for word list data for some locale and cache the returned files
+ * Queries a content provider for word list data for some locale and stage the returned files
*
* This will query a content provider for word list data for a given locale, and copy the
* files locally so that they can be mmap'ed. This may overwrite previously cached word lists
@@ -411,7 +410,7 @@ public final class BinaryDictionaryFileDumper {
* @throw FileNotFoundException if the provider returns non-existent data.
* @throw IOException if the provider-returned data could not be read.
*/
- public static void cacheWordListsFromContentProvider(final Locale locale,
+ public static void installDictToStagingFromContentProvider(final Locale locale,
final Context context, final boolean hasDefaultWordList) {
final ContentProviderClient providerClient;
try {
@@ -429,7 +428,8 @@ public final class BinaryDictionaryFileDumper {
final List<WordListInfo> idList = getWordListWordListInfos(locale, context,
hasDefaultWordList);
for (WordListInfo id : idList) {
- cacheWordList(id.mId, id.mLocale, id.mRawChecksum, providerClient, context);
+ installWordListToStaging(id.mId, id.mLocale, id.mRawChecksum, providerClient,
+ context);
}
} finally {
providerClient.release();
@@ -437,6 +437,19 @@ public final class BinaryDictionaryFileDumper {
}
/**
+ * Downloads the dictionary if it was never requested/used.
+ *
+ * @param locale locale to download
+ * @param context the context for resources and providers.
+ * @param hasDefaultWordList whether the default wordlist exists in the resources.
+ */
+ public static void downloadDictIfNeverRequested(final Locale locale,
+ final Context context, final boolean hasDefaultWordList) {
+ Log.d("inamul_tag", "BinaryDictionaryFileDumper.downloadDictIfNeverRequested()");
+ getWordListWordListInfos(locale, context, hasDefaultWordList);
+ }
+
+ /**
* Copies the data in an input stream to a target file if the magic number matches.
*
* If the magic number does not match the expected value, this method throws an
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
index 5f2a112ba..60016371b 100644
--- a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
+++ b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java
@@ -195,39 +195,6 @@ final public class BinaryDictionaryGetter {
return result;
}
- /**
- * Remove all files with the passed id, except the passed file.
- *
- * If a dictionary with a given ID has a metadata change that causes it to change
- * path, we need to remove the old version. The only way to do this is to check all
- * installed files for a matching ID in a different directory.
- */
- public static void removeFilesWithIdExcept(final Context context, final String id,
- final File fileToKeep) {
- try {
- final File canonicalFileToKeep = fileToKeep.getCanonicalFile();
- final File[] directoryList = DictionaryInfoUtils.getCachedDirectoryList(context);
- if (null == directoryList) return;
- for (File directory : directoryList) {
- // There is one directory per locale. See #getCachedDirectoryList
- if (!directory.isDirectory()) continue;
- final File[] wordLists = directory.listFiles();
- if (null == wordLists) continue;
- for (File wordList : wordLists) {
- final String fileId =
- DictionaryInfoUtils.getWordListIdFromFileName(wordList.getName());
- if (fileId.equals(id)) {
- if (!canonicalFileToKeep.equals(wordList.getCanonicalFile())) {
- wordList.delete();
- }
- }
- }
- }
- } catch (java.io.IOException e) {
- Log.e(TAG, "IOException trying to cleanup files", e);
- }
- }
-
// ## HACK ## we prevent usage of a dictionary before version 18. The reason for this is, since
// those do not include whitelist entries, the new code with an old version of the dictionary
// would lose whitelist functionality.
@@ -274,12 +241,18 @@ final public class BinaryDictionaryGetter {
*/
public static ArrayList<AssetFileAddress> getDictionaryFiles(final Locale locale,
final Context context, boolean notifyDictionaryPackForUpdates) {
-
- final boolean hasDefaultWordList = DictionaryInfoUtils.isDictionaryAvailable(
- context, locale);
if (notifyDictionaryPackForUpdates) {
- BinaryDictionaryFileDumper.cacheWordListsFromContentProvider(locale, context,
- hasDefaultWordList);
+ final boolean hasDefaultWordList = DictionaryInfoUtils.isDictionaryAvailable(
+ context, locale);
+ // It makes sure that the first time keyboard comes up and the dictionaries are reset,
+ // the DB is populated with the appropriate values for each locale. Helps in downloading
+ // the dictionaries when the user enables and switches new languages before the
+ // DictionaryService runs.
+ BinaryDictionaryFileDumper.downloadDictIfNeverRequested(
+ locale, context, hasDefaultWordList);
+
+ // Move a staging files to the cache ddirectories if any.
+ DictionaryInfoUtils.moveStagingFilesIfExists(context);
}
final File[] cachedWordLists = getCachedWordLists(locale.toString(), context);
final String mainDictId = DictionaryInfoUtils.getMainDictId(locale);
diff --git a/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java b/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
index ff798abd6..02015da09 100644
--- a/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
+++ b/java/src/com/android/inputmethod/latin/DictionaryFacilitator.java
@@ -17,6 +17,7 @@
package com.android.inputmethod.latin;
import android.content.Context;
+import android.util.LruCache;
import com.android.inputmethod.annotations.UsedForTesting;
import com.android.inputmethod.keyboard.Keyboard;
@@ -55,6 +56,18 @@ public interface DictionaryFacilitator {
Dictionary.TYPE_USER};
/**
+ * The facilitator will put words into the cache whenever it decodes them.
+ * @param cache
+ */
+ void setValidSpellingWordReadCache(final LruCache<String, Boolean> cache);
+
+ /**
+ * The facilitator will get words from the cache whenever it needs to check their spelling.
+ * @param cache
+ */
+ void setValidSpellingWordWriteCache(final LruCache<String, Boolean> cache);
+
+ /**
* Returns whether this facilitator is exactly for this locale.
*
* @param locale the locale to test against
@@ -88,12 +101,16 @@ public interface DictionaryFacilitator {
*
* WARNING: The service methods that call start/finish are very spammy.
*/
- void onFinishInput();
+ void onFinishInput(Context context);
boolean isActive();
Locale getLocale();
+ boolean usesContacts();
+
+ String getAccount();
+
void resetDictionaries(
final Context context,
final Locale newLocale,
@@ -149,7 +166,7 @@ public interface DictionaryFacilitator {
boolean isValidSuggestionWord(final String word);
- void clearUserHistoryDictionary(final Context context);
+ boolean clearUserHistoryDictionary(final Context context);
String dump(final Context context);
diff --git a/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java b/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java
index 7233d27ab..63064ba3e 100644
--- a/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java
+++ b/java/src/com/android/inputmethod/latin/DictionaryFacilitatorImpl.java
@@ -19,6 +19,7 @@ package com.android.inputmethod.latin;
import android.content.Context;
import android.text.TextUtils;
import android.util.Log;
+import android.util.LruCache;
import com.android.inputmethod.annotations.UsedForTesting;
import com.android.inputmethod.keyboard.Keyboard;
@@ -82,6 +83,19 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
private static final Class<?>[] DICT_FACTORY_METHOD_ARG_TYPES =
new Class[] { Context.class, Locale.class, File.class, String.class, String.class };
+ private LruCache<String, Boolean> mValidSpellingWordReadCache;
+ private LruCache<String, Boolean> mValidSpellingWordWriteCache;
+
+ @Override
+ public void setValidSpellingWordReadCache(final LruCache<String, Boolean> cache) {
+ mValidSpellingWordReadCache = cache;
+ }
+
+ @Override
+ public void setValidSpellingWordWriteCache(final LruCache<String, Boolean> cache) {
+ mValidSpellingWordWriteCache = cache;
+ }
+
@Override
public boolean isForLocale(final Locale locale) {
return locale != null && locale.equals(mDictionaryGroup.mLocale);
@@ -207,7 +221,7 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
}
@Override
- public void onFinishInput() {
+ public void onFinishInput(Context context) {
}
@Override
@@ -220,6 +234,16 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
return mDictionaryGroup.mLocale;
}
+ @Override
+ public boolean usesContacts() {
+ return mDictionaryGroup.getSubDict(Dictionary.TYPE_CONTACTS) != null;
+ }
+
+ @Override
+ public String getAccount() {
+ return null;
+ }
+
@Nullable
private static ExpandableBinaryDictionary getSubDict(final String dictType,
final Context context, final Locale locale, final File dictFile,
@@ -341,6 +365,10 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
dictionarySetToCleanup.closeDict(dictType);
}
}
+
+ if (mValidSpellingWordWriteCache != null) {
+ mValidSpellingWordWriteCache.evictAll();
+ }
}
private void asyncReloadUninitializedMainDictionaries(final Context context,
@@ -464,6 +492,10 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
public void addToUserHistory(final String suggestion, final boolean wasAutoCapitalized,
@Nonnull final NgramContext ngramContext, final long timeStampInSeconds,
final boolean blockPotentiallyOffensive) {
+ // Update the spelling cache before learning. Words that are not yet added to user history
+ // and appear in no other language model are not considered valid.
+ putWordIntoValidSpellingWordCache("addToUserHistory", suggestion);
+
final String[] words = suggestion.split(Constants.WORD_SEPARATOR);
NgramContext ngramContextForCurrentWord = ngramContext;
for (int i = 0; i < words.length; i++) {
@@ -477,6 +509,12 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
}
}
+ private void putWordIntoValidSpellingWordCache(final String caller, final String word) {
+ final String spellingWord = word.toLowerCase(getLocale());
+ final boolean isValid = isValidSpellingWord(spellingWord);
+ mValidSpellingWordWriteCache.put(spellingWord, isValid);
+ }
+
private void addWordToUserHistory(final DictionaryGroup dictionaryGroup,
final NgramContext ngramContext, final String word, final boolean wasAutoCapitalized,
final int timeStampInSeconds, final boolean blockPotentiallyOffensive) {
@@ -543,6 +581,10 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
if (eventType != Constants.EVENT_BACKSPACE) {
removeWord(Dictionary.TYPE_USER_HISTORY, word);
}
+
+ // Update the spelling cache after unlearning. Words that are removed from user history
+ // and appear in no other language model are not considered valid.
+ putWordIntoValidSpellingWordCache("unlearnFromUserHistory", word.toLowerCase());
}
// TODO: Revise the way to fusion suggestion results.
@@ -577,6 +619,14 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
}
public boolean isValidSpellingWord(final String word) {
+ if (mValidSpellingWordReadCache != null) {
+ final String spellingWord = word.toLowerCase(getLocale());
+ final Boolean cachedValue = mValidSpellingWordReadCache.get(spellingWord);
+ if (cachedValue != null) {
+ return cachedValue;
+ }
+ }
+
return isValidWord(word, ALL_DICTIONARY_TYPES);
}
@@ -620,16 +670,18 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
return maxFreq;
}
- private void clearSubDictionary(final String dictName) {
+ private boolean clearSubDictionary(final String dictName) {
final ExpandableBinaryDictionary dictionary = mDictionaryGroup.getSubDict(dictName);
- if (dictionary != null) {
- dictionary.clear();
+ if (dictionary == null) {
+ return false;
}
+ dictionary.clear();
+ return true;
}
@Override
- public void clearUserHistoryDictionary(final Context context) {
- clearSubDictionary(Dictionary.TYPE_USER_HISTORY);
+ public boolean clearUserHistoryDictionary(final Context context) {
+ return clearSubDictionary(Dictionary.TYPE_USER_HISTORY);
}
@Override
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 330be377b..089670ebf 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -972,7 +972,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
void onFinishInputInternal() {
super.onFinishInput();
- mDictionaryFacilitator.onFinishInput();
+ mDictionaryFacilitator.onFinishInput(this);
final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
if (mainKeyboardView != null) {
mainKeyboardView.closing();
diff --git a/java/src/com/android/inputmethod/latin/SystemBroadcastReceiver.java b/java/src/com/android/inputmethod/latin/SystemBroadcastReceiver.java
index 0d081e0d2..26c5e0034 100644
--- a/java/src/com/android/inputmethod/latin/SystemBroadcastReceiver.java
+++ b/java/src/com/android/inputmethod/latin/SystemBroadcastReceiver.java
@@ -29,13 +29,14 @@ import android.util.Log;
import android.view.inputmethod.InputMethodManager;
import android.view.inputmethod.InputMethodSubtype;
-import com.android.inputmethod.dictionarypack.CommonPreferences;
import com.android.inputmethod.dictionarypack.DictionaryPackConstants;
import com.android.inputmethod.keyboard.KeyboardLayoutSet;
import com.android.inputmethod.latin.settings.Settings;
import com.android.inputmethod.latin.setup.SetupActivity;
import com.android.inputmethod.latin.utils.UncachedInputMethodManagerUtils;
+import java.util.Locale;
+
/**
* This class detects the {@link Intent#ACTION_MY_PACKAGE_REPLACED} broadcast intent when this IME
* package has been replaced by a newer version of the same package. This class also detects
@@ -76,6 +77,22 @@ public final class SystemBroadcastReceiver extends BroadcastReceiver {
richImm.setAdditionalInputMethodSubtypes(additionalSubtypes);
toggleAppIcon(context);
downloadLatestDictionaries(context);
+ // TODO: This is only for dogfood builds. Remove this from the final release.
+ DictionaryFacilitator keyboardFacilitator =
+ DictionaryFacilitatorProvider.getDictionaryFacilitator(false);
+ boolean historyCleared = keyboardFacilitator.clearUserHistoryDictionary(context);
+ Locale keyboardLocale = keyboardFacilitator.getLocale();
+ if (historyCleared && keyboardLocale != null) {
+ keyboardFacilitator.resetDictionaries(
+ context,
+ keyboardLocale,
+ keyboardFacilitator.usesContacts(),
+ true /* history */,
+ true /* force */,
+ keyboardFacilitator.getAccount(),
+ "" /* prefix */,
+ null /* listener */);
+ }
} else if (Intent.ACTION_BOOT_COMPLETED.equals(intentAction)) {
Log.i(TAG, "Boot has been completed");
toggleAppIcon(context);
@@ -109,7 +126,7 @@ public final class SystemBroadcastReceiver extends BroadcastReceiver {
context.sendBroadcast(updateIntent);
}
- private static void toggleAppIcon(final Context context) {
+ public static void toggleAppIcon(final Context context) {
final int appInfoFlags = context.getApplicationInfo().flags;
final boolean isSystemApp = (appInfoFlags & ApplicationInfo.FLAG_SYSTEM) > 0;
if (Log.isLoggable(TAG, Log.INFO)) {
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index f7dbc0a4d..975ed7c01 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -398,9 +398,8 @@ public final class InputLogic {
if (!TextUtils.isEmpty(mWordBeingCorrectedByCursor)) {
final int timeStampInSeconds = (int)TimeUnit.MILLISECONDS.toSeconds(
System.currentTimeMillis());
- mDictionaryFacilitator.addToUserHistory(mWordBeingCorrectedByCursor, false,
- NgramContext.EMPTY_PREV_WORDS_INFO, timeStampInSeconds,
- settingsValues.mBlockPotentiallyOffensive);
+ performAdditionToUserHistoryDictionary(settingsValues, mWordBeingCorrectedByCursor,
+ NgramContext.EMPTY_PREV_WORDS_INFO);
}
} else {
// resetEntireInputState calls resetCachesUponCursorMove, but forcing the
diff --git a/java/src/com/android/inputmethod/latin/settings/AdvancedSettingsFragment.java b/java/src/com/android/inputmethod/latin/settings/AdvancedSettingsFragment.java
index f2e1aed4c..a6fb7f1f1 100644
--- a/java/src/com/android/inputmethod/latin/settings/AdvancedSettingsFragment.java
+++ b/java/src/com/android/inputmethod/latin/settings/AdvancedSettingsFragment.java
@@ -26,6 +26,7 @@ import android.preference.Preference;
import com.android.inputmethod.latin.AudioAndHapticFeedbackManager;
import com.android.inputmethod.latin.R;
+import com.android.inputmethod.latin.SystemBroadcastReceiver;
import com.android.inputmethod.latin.define.ProductionFlags;
/**
@@ -106,6 +107,8 @@ public final class AdvancedSettingsFragment extends SubScreenFragment {
if (key.equals(Settings.PREF_POPUP_ON)) {
setPreferenceEnabled(Settings.PREF_KEY_PREVIEW_POPUP_DISMISS_DELAY,
Settings.readKeyPreviewPopupEnabled(prefs, res));
+ } else if (key.equals(Settings.PREF_SHOW_SETUP_WIZARD_ICON)) {
+ SystemBroadcastReceiver.toggleAppIcon(getActivity());
}
updateListPreferenceSummaryToCurrentValue(Settings.PREF_KEY_PREVIEW_POPUP_DISMISS_DELAY);
refreshEnablingsOfKeypressSoundAndVibrationSettings();
diff --git a/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerSession.java b/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerSession.java
index 2c690aea7..c7622e7a1 100644
--- a/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerSession.java
+++ b/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerSession.java
@@ -84,8 +84,7 @@ public final class AndroidSpellCheckerSession extends AndroidWordLevelSpellCheck
if (TextUtils.isEmpty(splitText)) {
continue;
}
- if (mSuggestionsCache.getSuggestionsFromCache(splitText.toString(), ngramContext)
- == null) {
+ if (mSuggestionsCache.getSuggestionsFromCache(splitText.toString()) == null) {
continue;
}
final int newLength = splitText.length();
diff --git a/java/src/com/android/inputmethod/latin/spellcheck/AndroidWordLevelSpellCheckerSession.java b/java/src/com/android/inputmethod/latin/spellcheck/AndroidWordLevelSpellCheckerSession.java
index 1322ce240..9223923a7 100644
--- a/java/src/com/android/inputmethod/latin/spellcheck/AndroidWordLevelSpellCheckerSession.java
+++ b/java/src/com/android/inputmethod/latin/spellcheck/AndroidWordLevelSpellCheckerSession.java
@@ -71,30 +71,26 @@ public abstract class AndroidWordLevelSpellCheckerSession extends Session {
}
protected static final class SuggestionsCache {
- private static final char CHAR_DELIMITER = '\uFFFC';
private static final int MAX_CACHE_SIZE = 50;
private final LruCache<String, SuggestionsParams> mUnigramSuggestionsInfoCache =
new LruCache<>(MAX_CACHE_SIZE);
- private static String generateKey(final String query, final NgramContext ngramContext) {
- if (TextUtils.isEmpty(query) || !ngramContext.isValid()) {
- return query;
- }
- return query + CHAR_DELIMITER + ngramContext;
+ private static String generateKey(final String query) {
+ return query + "";
}
- public SuggestionsParams getSuggestionsFromCache(String query,
- final NgramContext ngramContext) {
- return mUnigramSuggestionsInfoCache.get(generateKey(query, ngramContext));
+ public SuggestionsParams getSuggestionsFromCache(final String query) {
+ return mUnigramSuggestionsInfoCache.get(query);
}
- public void putSuggestionsToCache(final String query, final NgramContext ngramContext,
- final String[] suggestions, final int flags) {
+ public void putSuggestionsToCache(
+ final String query, final String[] suggestions, final int flags) {
if (suggestions == null || TextUtils.isEmpty(query)) {
return;
}
mUnigramSuggestionsInfoCache.put(
- generateKey(query, ngramContext), new SuggestionsParams(suggestions, flags));
+ generateKey(query),
+ new SuggestionsParams(suggestions, flags));
}
public void clearCache() {
@@ -232,16 +228,7 @@ public abstract class AndroidWordLevelSpellCheckerSession extends Session {
AndroidSpellCheckerService.SINGLE_QUOTE).
replaceAll("^" + quotesRegexp, "").
replaceAll(quotesRegexp + "$", "");
- final SuggestionsParams cachedSuggestionsParams =
- mSuggestionsCache.getSuggestionsFromCache(text, ngramContext);
-
- if (cachedSuggestionsParams != null) {
- Log.d(TAG, "onGetSuggestionsInternal() : Cache hit for [" + text + "]");
- return new SuggestionsInfo(
- cachedSuggestionsParams.mFlags, cachedSuggestionsParams.mSuggestions);
- }
- // If spell checking is impossible, return early.
if (!mService.hasMainDictionaryForLocale(mLocale)) {
return AndroidSpellCheckerService.getNotInDictEmptySuggestions(
false /* reportAsTypo */);
@@ -329,8 +316,7 @@ public abstract class AndroidWordLevelSpellCheckerSession extends Session {
.getValueOf_RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS()
: 0);
final SuggestionsInfo retval = new SuggestionsInfo(flags, result.mSuggestions);
- mSuggestionsCache.putSuggestionsToCache(text, ngramContext, result.mSuggestions,
- flags);
+ mSuggestionsCache.putSuggestionsToCache(text, result.mSuggestions, flags);
return retval;
} catch (RuntimeException e) {
// Don't kill the keyboard if there is a bug in the spell checker
diff --git a/java/src/com/android/inputmethod/latin/utils/DictionaryInfoUtils.java b/java/src/com/android/inputmethod/latin/utils/DictionaryInfoUtils.java
index cfa977a46..096a545e5 100644
--- a/java/src/com/android/inputmethod/latin/utils/DictionaryInfoUtils.java
+++ b/java/src/com/android/inputmethod/latin/utils/DictionaryInfoUtils.java
@@ -30,6 +30,7 @@ import com.android.inputmethod.latin.AssetFileAddress;
import com.android.inputmethod.latin.BinaryDictionaryGetter;
import com.android.inputmethod.latin.R;
import com.android.inputmethod.latin.RichInputMethodManager;
+import com.android.inputmethod.latin.common.FileUtils;
import com.android.inputmethod.latin.common.LocaleUtils;
import com.android.inputmethod.latin.define.DecoderSpecificConstants;
import com.android.inputmethod.latin.makedict.DictionaryHeader;
@@ -153,6 +154,13 @@ public class DictionaryInfoUtils {
}
/**
+ * Helper method to get the top level cache directory.
+ */
+ public static String getWordListStagingDirectory(final Context context) {
+ return context.getFilesDir() + File.separator + "staging";
+ }
+
+ /**
* Helper method to get the top level temp directory.
*/
public static String getWordListTempDirectory(final Context context) {
@@ -188,6 +196,10 @@ public class DictionaryInfoUtils {
return new File(DictionaryInfoUtils.getWordListCacheDirectory(context)).listFiles();
}
+ public static File[] getStagingDirectoryList(final Context context) {
+ return new File(DictionaryInfoUtils.getWordListStagingDirectory(context)).listFiles();
+ }
+
@Nullable
public static File[] getUnusedDictionaryList(final Context context) {
return context.getFilesDir().listFiles(new FilenameFilter() {
@@ -221,7 +233,7 @@ public class DictionaryInfoUtils {
/**
* Find out the cache directory associated with a specific locale.
*/
- private static String getCacheDirectoryForLocale(final String locale, final Context context) {
+ public static String getCacheDirectoryForLocale(final String locale, final Context context) {
final String relativeDirectoryName = replaceFileNameDangerousCharacters(locale);
final String absoluteDirectoryName = getWordListCacheDirectory(context) + File.separator
+ relativeDirectoryName;
@@ -254,6 +266,52 @@ public class DictionaryInfoUtils {
return getCacheDirectoryForLocale(locale, context) + File.separator + fileName;
}
+ public static String getStagingFileName(String id, String locale, Context context) {
+ final String stagingDirectory = getWordListStagingDirectory(context);
+ // create the directory if it does not exist.
+ final File directory = new File(stagingDirectory);
+ if (!directory.exists()) {
+ if (!directory.mkdirs()) {
+ Log.e(TAG, "Could not create the staging directory.");
+ }
+ }
+ // e.g. id="main:en_in", locale ="en_IN"
+ final String fileName = replaceFileNameDangerousCharacters(
+ locale + TEMP_DICT_FILE_SUB + id);
+ return stagingDirectory + File.separator + fileName;
+ }
+
+ public static void moveStagingFilesIfExists(Context context) {
+ final File[] stagingFiles = DictionaryInfoUtils.getStagingDirectoryList(context);
+ if (stagingFiles != null && stagingFiles.length > 0) {
+ for (final File stagingFile : stagingFiles) {
+ final String fileName = stagingFile.getName();
+ final int index = fileName.indexOf(TEMP_DICT_FILE_SUB);
+ if (index == -1) {
+ // This should never happen.
+ Log.e(TAG, "Staging file does not have ___ substring.");
+ continue;
+ }
+ final String[] localeAndFileId = fileName.split(TEMP_DICT_FILE_SUB);
+ if (localeAndFileId.length != 2) {
+ Log.e(TAG, String.format("malformed staging file %s. Deleting.",
+ stagingFile.getAbsoluteFile()));
+ stagingFile.delete();
+ continue;
+ }
+
+ final String locale = localeAndFileId[0];
+ // already escaped while moving to staging.
+ final String fileId = localeAndFileId[1];
+ final String cacheDirectoryForLocale = getCacheDirectoryForLocale(locale, context);
+ final String cacheFilename = cacheDirectoryForLocale + File.separator + fileId;
+ final File cacheFile = new File(cacheFilename);
+ // move the staging file to cache file.
+ FileUtils.renameTo(stagingFile, cacheFile);
+ }
+ }
+ }
+
public static boolean isMainWordListId(final String id) {
final String[] idArray = id.split(BinaryDictionaryGetter.ID_CATEGORY_SEPARATOR);
// An id is supposed to be in format category:locale, so splitting on the separator