diff options
Diffstat (limited to 'java')
67 files changed, 535 insertions, 472 deletions
diff --git a/java/res/drawable-hdpi/keyboard_popup_panel_background_holo.9.png b/java/res/drawable-hdpi/keyboard_popup_panel_background_holo.9.png Binary files differdeleted file mode 100644 index 4002dbe65..000000000 --- a/java/res/drawable-hdpi/keyboard_popup_panel_background_holo.9.png +++ /dev/null diff --git a/java/res/drawable-mdpi/keyboard_popup_panel_background_holo.9.png b/java/res/drawable-mdpi/keyboard_popup_panel_background_holo.9.png Binary files differdeleted file mode 100644 index 7be7ab7e2..000000000 --- a/java/res/drawable-mdpi/keyboard_popup_panel_background_holo.9.png +++ /dev/null diff --git a/java/res/layout/candidates_strip.xml b/java/res/layout/candidates_strip.xml index bcc1322b6..fdb13f73e 100644 --- a/java/res/layout/candidates_strip.xml +++ b/java/res/layout/candidates_strip.xml @@ -22,38 +22,16 @@ xmlns:android="http://schemas.android.com/apk/res/android" xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" > - <LinearLayout - android:id="@+id/candidates_strip" - android:orientation="horizontal" - android:layout_weight="1.0" - android:layout_width="0dp" - android:layout_height="match_parent" /> - <LinearLayout - android:id="@+id/touch_to_save" - android:orientation="horizontal" + <!-- Placer for debug information --> + <RelativeLayout + android:id="@+id/candidates_placer" android:layout_width="match_parent" android:layout_height="match_parent" - android:visibility="gone" > - <Button - android:id="@+id/word_to_save" - android:layout_weight="1.0" - android:layout_width="0dp" - android:layout_height="match_parent" - android:layout_gravity="center_vertical" - android:textSize="@dimen/candidate_text_size" - android:singleLine="true" - android:ellipsize="middle" - style="?attr/suggestionBackgroundStyle" /> - <include - layout="@layout/candidate_divider" /> - <TextView - android:layout_weight="2.0" - android:layout_width="0dp" - android:layout_height="match_parent" - android:gravity="left|center_vertical" - android:text="@string/hint_add_to_dictionary" - android:textSize="@dimen/candidate_text_size" - android:background="@null" /> - </LinearLayout> + <LinearLayout + android:id="@+id/candidates_strip" + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + </RelativeLayout> </merge> diff --git a/java/res/values-af/strings.xml b/java/res/values-af/strings.xml index 8d3632826..fee4f44c3 100644 --- a/java/res/values-af/strings.xml +++ b/java/res/values-af/strings.xml @@ -25,12 +25,9 @@ <string name="english_ime_input_options" msgid="3909945612939668554">"Invoeropsies"</string> <!-- no translation found for spell_checker_service_name (2003013122022285508) --> <skip /> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Speltoetser se instellings"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Gebruik nabyheidsdata"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Gebruik \'n sleutelbordagtige nabyheidsalgoritme vir die speltoetser"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibreer met sleuteldruk"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Klank met sleuteldruk"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Opspring by druk van sleutel"</string> diff --git a/java/res/values-am/strings.xml b/java/res/values-am/strings.xml index 16595d22a..fbcc0ec25 100644 --- a/java/res/values-am/strings.xml +++ b/java/res/values-am/strings.xml @@ -25,12 +25,9 @@ <string name="english_ime_input_options" msgid="3909945612939668554">"ግቤት አማራጮች"</string> <!-- no translation found for spell_checker_service_name (2003013122022285508) --> <skip /> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"የፊደል አራሚ ቅንብሮች"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"የቀረቤታ ውሂብ ተጠቀም"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"ለፊደል አራሚ የሰሌዳ ቁልፍ አይነት የቀረበ ስልተ ቀመር ተጠቀም"</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> diff --git a/java/res/values-ar/strings.xml b/java/res/values-ar/strings.xml index 305f927d5..94a1b5571 100644 --- a/java/res/values-ar/strings.xml +++ b/java/res/values-ar/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"إعدادات لوحة مفاتيح Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"خيارات الإرسال"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"تصحيح Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"إعدادات التدقيق الإملائي"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"استخدام بيانات التقريب"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"استخدام خوارزمية تقريب شبيهة بلوحة المفاتيح لإجراء التدقيق الإملائي"</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> diff --git a/java/res/values-bg/strings.xml b/java/res/values-bg/strings.xml index 72827303a..5f7f3b122 100644 --- a/java/res/values-bg/strings.xml +++ b/java/res/values-bg/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Настройки на клавиатурата на Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Опции за въвеждане"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Корекция на Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Настройки за проверка на правописа"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Данни за близост: Изп."</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Проверка на правописа: Използвайте алгоритъм за близост"</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> @@ -147,7 +144,7 @@ <string name="prefs_enable_recorrection" msgid="4588408906649533582">"Докоснете, за да поправите думите"</string> <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"Докоснете въведените думи, за да ги поправите – само когато предложенията са видими"</string> <string name="keyboard_layout" msgid="8451164783510487501">"Тема на клавиатурата"</string> - <string name="subtype_de_qwerty" msgid="3358900499589259491">"Немска „QWERTY“"</string> + <string name="subtype_de_qwerty" msgid="3358900499589259491">"немски, „QWERTY“"</string> <string name="subtype_en_GB" msgid="88170601942311355">"английски (Великобритания)"</string> <string name="subtype_en_US" msgid="6160452336634534239">"английски (САЩ)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"Режим за изучаване на използваемостта"</string> diff --git a/java/res/values-ca/strings.xml b/java/res/values-ca/strings.xml index 6daca172e..026707782 100644 --- a/java/res/values-ca/strings.xml +++ b/java/res/values-ca/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Configuració del teclat d\'Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opcions d\'entrada"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Correcció d\'Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Configuració de la correcció ortogràfica"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Utilitza les dades de proximitat"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Utilitza un algorisme de proximitat similar al teclat per comprovar l\'ortografia"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibra en prémer tecles"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"So en prémer una tecla"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Finestra emergent en prémer un botó"</string> diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml index 9cd237edd..60e2cdb45 100644 --- a/java/res/values-cs/strings.xml +++ b/java/res/values-cs/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Nastavení klávesnice Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Možnosti zadávání textu a dat"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Opravy pravopisu Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Nastavení kontroly pravopisu"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Použít údaje o blízkosti"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Při kontrole pravopisu uvažovat blízkost písmen na klávesnici"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Při stisku klávesy vibrovat"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk při stisku klávesy"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Zobrazit znaky při stisku klávesy"</string> diff --git a/java/res/values-da/strings.xml b/java/res/values-da/strings.xml index 6779fbfa0..c28716243 100644 --- a/java/res/values-da/strings.xml +++ b/java/res/values-da/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Indstillinger for Android-tastatur"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Indstillinger for input"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android-rettelse"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Indstillinger for stavekontrol"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Brug nærhedsdata"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Brug en tastaturlignende nærhedsalgoritme til stavekontrol"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibration ved tastetryk"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Lyd ved tastetryk"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Popup ved tastetryk"</string> diff --git a/java/res/values-de/strings.xml b/java/res/values-de/strings.xml index 7e02c0a03..e5f955528 100644 --- a/java/res/values-de/strings.xml +++ b/java/res/values-de/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Android-Tastatureinstellungen"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Eingabeoptionen"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Rechtschreibprüfung für Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Einstellungen für Rechtschreibprüfung"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Näherungsdaten verwenden"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Tastaturähnl. Abstandsalgorith. für Rechtschreibprüfung verwenden"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrieren b. Tastendruck"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Ton bei Tastendruck"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Pop-up bei Tastendruck"</string> diff --git a/java/res/values-el/strings.xml b/java/res/values-el/strings.xml index e0c503341..84715c6b7 100644 --- a/java/res/values-el/strings.xml +++ b/java/res/values-el/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Ρυθμίσεις πληκτρολογίου Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Επιλογές εισόδου"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Διόρθωση Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Ρυθμίσεις ορθογραφικού ελέγχου"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Χρ. δεδ. εγγύτ."</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Χρησ. αλγόρ. εγγύτ. τύπου πληκτρ., για ορθ. έλεγχο"</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> @@ -148,7 +145,7 @@ <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"Αγγίξτε τις λέξες για να τις διορθώσετε, μόνο όταν οι προτάσεις είναι ορατές"</string> <string name="keyboard_layout" msgid="8451164783510487501">"Θέμα πληκτρολογίου"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"Γερμανικά QWERTY"</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="prefs_usability_study_mode" msgid="1261130555134595254">"Λειτουργία μελέτης χρηστικότητας"</string> </resources> diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml index 6c71da0f7..e137ab9f9 100644 --- a/java/res/values-es/strings.xml +++ b/java/res/values-es/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Ajustes del teclado de Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opciones introducción texto"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Corrector de Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Ajustes del corrector ortográfico"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Usar datos de proximidad"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Usar algoritmo proximidad tipo teclado para corrector ortográfico"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrar al pulsar tecla"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Sonido al pulsar tecla"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Popup al pulsar tecla"</string> diff --git a/java/res/values-fa/strings.xml b/java/res/values-fa/strings.xml index 7a9036d98..02d43fdb1 100644 --- a/java/res/values-fa/strings.xml +++ b/java/res/values-fa/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"تنظیمات صفحه کلید Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"گزینه های ورودی"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"تصحیح Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"تنظیمات غلط گیری املایی"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"استفاده از دادههای مجاورت"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"استفاده از یک الگوریتم مجاورت مشابه صفحه کلید برای غلط گیری املایی"</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> @@ -151,7 +148,7 @@ <string name="prefs_enable_recorrection" msgid="4588408906649533582">"برای تصحیح کلمات لمس کنید"</string> <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"فقط هنگامی که پیشنهادات قابل مشاهده هستند، برای تصحیح کلمات وارد شده آنها را لمس کنید"</string> <string name="keyboard_layout" msgid="8451164783510487501">"طرح زمینه صفحه کلید"</string> - <string name="subtype_de_qwerty" msgid="3358900499589259491">"آلمانی QWERTY"</string> + <string name="subtype_de_qwerty" msgid="3358900499589259491">"QWERTY آلمانی"</string> <string name="subtype_en_GB" msgid="88170601942311355">"انگیسی (UK)"</string> <string name="subtype_en_US" msgid="6160452336634534239">"انگیسی (US)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"حالت بررسی قابلیت استفاده"</string> diff --git a/java/res/values-fi/strings.xml b/java/res/values-fi/strings.xml index 0bffcee2d..73ac33fe6 100644 --- a/java/res/values-fi/strings.xml +++ b/java/res/values-fi/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Android-näppäimistön asetukset"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Syöttövalinnat"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android-korjaus"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Oikoluvun asetukset"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Käytä lähestymistietoja"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Käytä näppäimistön kaltaista lähestymisalgoritmia oikolukuun"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Käytä värinää näppäimiä painettaessa"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Toista ääni näppäimiä painettaessa"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Ponnahdusikkuna painalluksella"</string> diff --git a/java/res/values-fr/strings.xml b/java/res/values-fr/strings.xml index c58bea57b..f93d67269 100644 --- a/java/res/values-fr/strings.xml +++ b/java/res/values-fr/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Paramètres du clavier Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Options de saisie"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Correcteur Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Paramètre du correcteur orthographique"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Utiliser données proximité"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Utiliser algorithme de proximité clavier pour correcteur ortho"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrer à chaque touche"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Son à chaque touche"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Agrandir les caractères"</string> diff --git a/java/res/values-hr/strings.xml b/java/res/values-hr/strings.xml index d083b6861..376033d5b 100644 --- a/java/res/values-hr/strings.xml +++ b/java/res/values-hr/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Postavke tipkovnice za Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opcije ulaza"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Ispravak za Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Postavke provjere pravopisa"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Upotreba podataka blizine"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Za prov. pravopisa upotrijebi algoritam blizine kao na tipkovnici"</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> diff --git a/java/res/values-hu/strings.xml b/java/res/values-hu/strings.xml index afae17d91..a7153bbd4 100644 --- a/java/res/values-hu/strings.xml +++ b/java/res/values-hu/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Android billentyűzetbeállítások"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Beviteli beállítások"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android korrekció"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Helyesírás-ellenőrzés beállításai"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Közelségi adatok haszn."</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Bill.-szerű közelségi algoritmus használata helyesírás-ell.-hez"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Rezgés billentyű megnyomása esetén"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Hangjelzés billentyű megnyomása esetén"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Legyen nagyobb billentyű lenyomásakor"</string> @@ -148,7 +145,7 @@ <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"A beírt szavakat csak akkor javíthatja ki megérintve, ha látszanak javaslatok"</string> <string name="keyboard_layout" msgid="8451164783510487501">"Billentyűzettéma"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"Német QWERTY"</string> - <string name="subtype_en_GB" msgid="88170601942311355">"angol (Egyesült Királyság)"</string> - <string name="subtype_en_US" msgid="6160452336634534239">"angol (Egyesült Államok)"</string> + <string name="subtype_en_GB" msgid="88170601942311355">"angol (brit)"</string> + <string name="subtype_en_US" msgid="6160452336634534239">"angol (amerikai)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"Használhatósági teszt"</string> </resources> diff --git a/java/res/values-in/strings.xml b/java/res/values-in/strings.xml index f3506863f..11a1d3ddf 100644 --- a/java/res/values-in/strings.xml +++ b/java/res/values-in/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Setelan keyboard Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opsi masukan"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Koreksi android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Setelan pemeriksaan ejaan"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Gunakan data kedekatan"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Gunakan algoritme kedekatan seperti keyboard untuk memeriksa ejaan"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Getar jika tombol ditekan"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Berbunyi jika tombol ditekan"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Muncul saat tombol ditekan"</string> diff --git a/java/res/values-iw/strings.xml b/java/res/values-iw/strings.xml index 5f09c09f3..dee7f9cae 100644 --- a/java/res/values-iw/strings.xml +++ b/java/res/values-iw/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"הגדרות מקלדת של Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"אפשרויות קלט"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"תיקון Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"הגדרות בדיקת איות"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"שימוש בנתוני הקירבה"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"השתמש באלגוריתם קירבה דמוי-מקלדת עבור בדיקת איות"</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> @@ -88,7 +85,7 @@ <string name="spoken_description_space" msgid="2582521050049860859">"רווח"</string> <string name="spoken_description_mic" msgid="615536748882611950">"קלט קולי"</string> <string name="spoken_description_smiley" msgid="2256309826200113918">"פרצוף סמיילי"</string> - <string name="spoken_description_return" msgid="8178083177238315647">"Return"</string> + <string name="spoken_description_return" msgid="8178083177238315647">"חזור"</string> <string name="spoken_description_comma" msgid="4970844442999724586">"פסיק"</string> <string name="spoken_description_period" msgid="5286614628077903945">"נקודה"</string> <string name="spoken_description_left_parenthesis" msgid="8524822120595052415">"סוגריים שמאליים"</string> @@ -112,7 +109,7 @@ <string name="voice_warning_title" msgid="4419354150908395008">"קלט קולי"</string> <string name="voice_warning_locale_not_supported" msgid="637923019716442333">"קלט קולי אינו נתמך בשלב זה בשפתך, אך הוא פועל באנגלית."</string> <string name="voice_warning_may_not_understand" msgid="5596289095878251072">"קלט קולי משתמש בזיהוי דיבור של Google. "<a href="http://m.google.com/privacy">"מדיניות הפרטיות של \'Google לנייד\'"</a>" חלה במקרה זה."</string> - <string name="voice_warning_how_to_turn_off" msgid="3190378129944934856">"כדי לכבות את הקלט הקולי, עבור להגדרות שיטת קלט."</string> + <string name="voice_warning_how_to_turn_off" msgid="3190378129944934856">"כדי לכבות את הקלט הקולי, עבור להגדרות של שיטת קלט."</string> <string name="voice_hint_dialog_message" msgid="1420686286820661548">"כדי להשתמש בקלט קולי, לחץ על לחצן המיקרופון."</string> <string name="voice_listening" msgid="467518160751321844">"דבר עכשיו"</string> <string name="voice_working" msgid="6666937792815731889">"פועל"</string> @@ -131,10 +128,10 @@ <string name="ok" msgid="7898366843681727667">"אישור"</string> <string name="voice_input" msgid="2466640768843347841">"קלט קולי"</string> <string name="voice_input_modes_main_keyboard" msgid="3360660341121083174">"במקלדת הראשית"</string> - <string name="voice_input_modes_symbols_keyboard" msgid="7203213240786084067">"במקלדת הסמלים"</string> + <string name="voice_input_modes_symbols_keyboard" msgid="7203213240786084067">"במקלדת סמלים"</string> <string name="voice_input_modes_off" msgid="3745699748218082014">"כבוי"</string> <string name="voice_input_modes_summary_main_keyboard" msgid="6586544292900314339">"מיקרופון במקלדת הראשית"</string> - <string name="voice_input_modes_summary_symbols_keyboard" msgid="5233725927281932391">"מיקרופון במקלדת הסמלים"</string> + <string name="voice_input_modes_summary_symbols_keyboard" msgid="5233725927281932391">"מיקרופון במקלדת סמלים"</string> <string name="voice_input_modes_summary_off" msgid="63875609591897607">"הקלט הקולי מושבת"</string> <string name="selectInputMethod" msgid="315076553378705821">"בחר שיטת קלט"</string> <string name="configure_input_method" msgid="373356270290742459">"הגדרת שיטות קלט"</string> @@ -145,7 +142,7 @@ <string name="prefs_enable_log" msgid="6620424505072963557">"הפוך משוב ממשתמשים לפעיל"</string> <string name="prefs_description_log" msgid="5827825607258246003">"עזור לשפר את עורך שיטת הקלט על ידי שליחה אוטומטית של סטטיסטיקת שימוש ודוחות קריסת מחשב ל-Google."</string> <string name="prefs_enable_recorrection" msgid="4588408906649533582">"גע כדי לתקן מילים"</string> - <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"גע במילים שהוזנו כדי לתקן אותן, רק כאשר הצעות מוצגות"</string> + <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"גע במילים שהוזנו כדי לתקן אותן רק כאשר ההצעות גלויות"</string> <string name="keyboard_layout" msgid="8451164783510487501">"עיצוב מקלדת"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"מקלדת QWERTY גרמנית"</string> <string name="subtype_en_GB" msgid="88170601942311355">"אנגלית (בריטניה)"</string> diff --git a/java/res/values-ja/strings.xml b/java/res/values-ja/strings.xml index 563877181..a3431fbc4 100644 --- a/java/res/values-ja/strings.xml +++ b/java/res/values-ja/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Androidキーボードの設定"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"入力オプション"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android校正"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"スペルチェックの設定"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"近接データを使用"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"スペルチェックでキーボードと同じような近接アルゴリズムを使用する"</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> diff --git a/java/res/values-ko/strings.xml b/java/res/values-ko/strings.xml index 83cf906c8..cc895d7c2 100644 --- a/java/res/values-ko/strings.xml +++ b/java/res/values-ko/strings.xml @@ -23,13 +23,10 @@ <string name="english_ime_name" msgid="7252517407088836577">"Android 키보드"</string> <string name="english_ime_settings" msgid="6661589557206947774">"Android 키보드 설정"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"입력 옵션"</string> - <string name="spell_checker_service_name" msgid="2003013122022285508">"Android 수정"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="spell_checker_service_name" msgid="2003013122022285508">"Android 교정"</string> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"맞춤법 검사 설정"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"근접 데이터 사용"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"맞춤법 검사에 대해 키보드와 유사한 근접 알고리즘 사용"</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> diff --git a/java/res/values-lt/strings.xml b/java/res/values-lt/strings.xml index 19b04b889..8f28465cd 100644 --- a/java/res/values-lt/strings.xml +++ b/java/res/values-lt/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"„Android“ klaviatūros nustatymai"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Įvesties parinktys"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"„Android“ korekcijos"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Rašybos tikrinimo nustatymai"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Naudoti artimumo duomenis"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Naudokite klaviatūros tipo artimumo algoritmą rašybai patikrinti"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibruoti, kai paspaudžiami klavišai"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Klavišo paspaudimo garsas"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Iššoka paspaudus klavišą"</string> @@ -148,7 +145,7 @@ <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"Jei norite ištaisyti įvestus žodžius, palieskite juos tik tada, kai matomi pasiūlymai"</string> <string name="keyboard_layout" msgid="8451164783510487501">"Klaviatūros tema"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"Vokiška QWERTY klaviatūra"</string> - <string name="subtype_en_GB" msgid="88170601942311355">"Anglų (JK)"</string> + <string name="subtype_en_GB" msgid="88170601942311355">"Anglų k. (JK)"</string> <string name="subtype_en_US" msgid="6160452336634534239">"Anglų k. (JAV)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"Tinkamumo tyrimo režimas"</string> </resources> diff --git a/java/res/values-lv/strings.xml b/java/res/values-lv/strings.xml index 48a3e892c..4a4d0f2b5 100644 --- a/java/res/values-lv/strings.xml +++ b/java/res/values-lv/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Android tastatūras iestatījumi"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Ievades opcijas"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android korekcija"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Pareizrakstības pārbaudes iestatījumi"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Tuvuma datu izmantošana"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Pareizrakstības pārbaudei izmantojiet tastatūrai līdzīgu tuvuma algoritmu."</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrēt, nospiežot taustiņu"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Skaņa, nospiežot taustiņu"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Nospiežot taustiņu, parādīt uznirstošo izvēlni"</string> diff --git a/java/res/values-nb/strings.xml b/java/res/values-nb/strings.xml index 337ffa629..84db28199 100644 --- a/java/res/values-nb/strings.xml +++ b/java/res/values-nb/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Innstillinger for skjermtastatur"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Inndataalternativer"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android-stavekontroll"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Innstillinger for stavekontroll"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Bruk nærhetsdata"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Bruk en tastaturlignende algoritme til stavekontroll"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrer ved tastetrykk"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Lyd ved tastetrykk"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Hurtigvindu ved tastetrykk"</string> diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index 26e138d55..1adba8827 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Instellingen voor Android-toetsenbord"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Invoeropties"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android-spellingcontrole"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Instellingen voor spellingcontrole"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Nabije toetsinfo gebr."</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Algoritme voor nabije toetsen gebruiken voor spellingcontrole"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Trillen bij toetsaanslag"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Geluid bij toetsaanslag"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Pop-up bij toetsaanslag"</string> @@ -148,7 +145,7 @@ <string name="prefs_enable_recorrection_summary" msgid="5082041365862396329">"Ingevoerde woorden aanraken om ze te verbeteren, alleen mogelijk wanneer suggesties zichtbaar zijn"</string> <string name="keyboard_layout" msgid="8451164783510487501">"Toetsenbordthema"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"Duits QWERTY-toetsenbord"</string> - <string name="subtype_en_GB" msgid="88170601942311355">"Engels (Verenigd Koninkrijk)"</string> - <string name="subtype_en_US" msgid="6160452336634534239">"Engels (Verenigde Staten)"</string> + <string name="subtype_en_GB" msgid="88170601942311355">"Engels (GB)"</string> + <string name="subtype_en_US" msgid="6160452336634534239">"Engels (VS)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"Modus voor gebruiksvriendelijkheidsonderzoek"</string> </resources> diff --git a/java/res/values-pl/strings.xml b/java/res/values-pl/strings.xml index bedf93c82..4358a8b39 100644 --- a/java/res/values-pl/strings.xml +++ b/java/res/values-pl/strings.xml @@ -134,7 +134,7 @@ <string name="voice_input_modes_summary_symbols_keyboard" msgid="5233725927281932391">"Mikrofon na klawiaturze z symbolami"</string> <string name="voice_input_modes_summary_off" msgid="63875609591897607">"Wprowadzanie głosowe jest wyłączone"</string> <string name="selectInputMethod" msgid="315076553378705821">"Wybierz sposób wprowadzania tekstu"</string> - <string name="configure_input_method" msgid="373356270290742459">"Konfigurowanie metod wprowadzania"</string> + <string name="configure_input_method" msgid="373356270290742459">"Konfiguruj metody wprowadzania"</string> <string name="language_selection_title" msgid="1651299598555326750">"Języki wprowadzania"</string> <string name="select_language" msgid="2573265881207142437">"Wybierz języki wprowadzania"</string> <string name="hint_add_to_dictionary" msgid="9006292060636342317">"← Dotknij ponownie, aby zapisać"</string> @@ -146,6 +146,6 @@ <string name="keyboard_layout" msgid="8451164783510487501">"Motyw klawiatury"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"Niemiecka QWERTY"</string> <string name="subtype_en_GB" msgid="88170601942311355">"Angielska (Wielka Brytania)"</string> - <string name="subtype_en_US" msgid="6160452336634534239">"Angielska (USA)"</string> + <string name="subtype_en_US" msgid="6160452336634534239">"Angielska (Stany Zjednoczone)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"Tryb badania przydatności"</string> </resources> diff --git a/java/res/values-pt-rPT/strings.xml b/java/res/values-pt-rPT/strings.xml index 44f38591e..d1e2e5df6 100644 --- a/java/res/values-pt-rPT/strings.xml +++ b/java/res/values-pt-rPT/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Definições de teclado do Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opções de introdução"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Correção do Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Definições da verificação ortográfica"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Utilizar dados de prox."</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Util. algoritmo de prox. semelhante a teclado para verif. ortog."</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrar ao primir as teclas"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Som ao premir as teclas"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Mostrar popup ao premir tecla"</string> diff --git a/java/res/values-pt/strings.xml b/java/res/values-pt/strings.xml index 793c78fd4..a41a2ece2 100644 --- a/java/res/values-pt/strings.xml +++ b/java/res/values-pt/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Configurações de teclado Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opções de entrada"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Correção do Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Configurações de verificação ortográfica"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Usar dados de proximidade"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Usar algoritmo de prox. tipo teclado para verificação ortográfica"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrar ao tocar a tecla"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Som ao tocar a tecla"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Exibir pop-up ao digitar"</string> diff --git a/java/res/values-ro/strings.xml b/java/res/values-ro/strings.xml index ee3e1f054..c8001a9b9 100644 --- a/java/res/values-ro/strings.xml +++ b/java/res/values-ro/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Setările tastaturii Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Opţiuni de introducere text"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Corecţie Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Setări de verificare ortografică"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Utiliz. datele de proxim."</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Utilizaţi un algor. de prox. similar tastat. pt. verif. ortograf."</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrare la apăsarea tastei"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Sunet la apăsarea tastei"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Fereastră pop-up la apăsarea tastei"</string> diff --git a/java/res/values-ru/strings.xml b/java/res/values-ru/strings.xml index 61faf3e3e..fdf404126 100644 --- a/java/res/values-ru/strings.xml +++ b/java/res/values-ru/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Настройки клавиатуры Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Параметры ввода"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Исправления Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Настройка проверки правописания"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Алгоритм близости клавиш"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Использовать алгоритм близости клавиш для проверки правописания"</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> diff --git a/java/res/values-sk/strings.xml b/java/res/values-sk/strings.xml index 3e7ed1475..e025ae694 100644 --- a/java/res/values-sk/strings.xml +++ b/java/res/values-sk/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Nastavenia klávesnice Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Možnosti zadávania textu a údajov"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Opravy pravopisu Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Nastavenia kontroly pravopisu"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Použiť údaje o blízkosti"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Na kontr. pravopis. použiť algor. vzdialenosti ako pri kláves."</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> diff --git a/java/res/values-sl/strings.xml b/java/res/values-sl/strings.xml index cda15987c..92f52ea42 100644 --- a/java/res/values-sl/strings.xml +++ b/java/res/values-sl/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Nastavitve tipkovnice Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Možnosti vnosa"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Popravek za Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Nastavitve preverjanja črkovanja"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Uporabi podatke bližine"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Uporaba algoritma za preverjanje črkovanja na podlagi bližine znakov na tipkovnici"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibriranje ob pritisku tipke"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Zvok ob pritisku tipke"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Pojavno okno ob pritisku tipke"</string> diff --git a/java/res/values-sr/strings.xml b/java/res/values-sr/strings.xml index 083af7a40..b3f17931f 100644 --- a/java/res/values-sr/strings.xml +++ b/java/res/values-sr/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Подешавања Android тастатуре"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Опције уноса"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android исправљање"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Подешавања провере правописа"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Употреба података близине"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Употреба алгоритма близине попут тастатуре за проверу правописа"</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> diff --git a/java/res/values-sv/strings.xml b/java/res/values-sv/strings.xml index 82831ecf3..25b67ecac 100644 --- a/java/res/values-sv/strings.xml +++ b/java/res/values-sv/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Inställningar för Androids tangentbord"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Inmatningsalternativ"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android-korrigering"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Inställningar för stavningskontroll"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Använd närhetsinformation"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Använd tangentbordsliknande närhetsalgoritm för stavningskontroll"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Vibrera vid tangenttryck"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Knappljud"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Popup vid knapptryck"</string> diff --git a/java/res/values-sw/strings.xml b/java/res/values-sw/strings.xml index 9c677d177..b57b88550 100644 --- a/java/res/values-sw/strings.xml +++ b/java/res/values-sw/strings.xml @@ -25,12 +25,9 @@ <string name="english_ime_input_options" msgid="3909945612939668554">"Chaguo za uingizaji"</string> <!-- no translation found for spell_checker_service_name (2003013122022285508) --> <skip /> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Mipangilio ya kukagua sarufi"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Tumia data ya ukaribu"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Tumia kibodi kama ukaribu wa algorithmu kwa ukaguzi wa sarufi"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Tetema unabofya kitufe"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Toa sauti unapobofya kitufe"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Ibuka kitufe kinapobonyezwa"</string> diff --git a/java/res/values-th/strings.xml b/java/res/values-th/strings.xml index c53ed2e65..4a4d0db56 100644 --- a/java/res/values-th/strings.xml +++ b/java/res/values-th/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"การตั้งค่าแป้นพิมพ์ Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"ตัวเลือกการป้อนข้อมูล"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"การแก้ไขของ Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"การตั้งค่าการตรวจสอบการสะกด"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"ใช้ข้อมูลที่ใกล้เคียง"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"ใช้อัลกอริทึมใกล้เคียงที่คล้ายกับแป้นพิมพ์สำหรับตรวจสอบการสะกด"</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> @@ -149,6 +146,6 @@ <string name="keyboard_layout" msgid="8451164783510487501">"ชุดรูปแบบแป้นพิมพ์"</string> <string name="subtype_de_qwerty" msgid="3358900499589259491">"QWERTY ภาษาเยอรมัน"</string> <string name="subtype_en_GB" msgid="88170601942311355">"อังกฤษ (สหราชอาณาจักร)"</string> - <string name="subtype_en_US" msgid="6160452336634534239">"อังกฤษ (สหรัฐอเมริกา)"</string> + <string name="subtype_en_US" msgid="6160452336634534239">"อังกฤษ (อเมริกัน)"</string> <string name="prefs_usability_study_mode" msgid="1261130555134595254">"โหมดศึกษาประโยชน์ในการใช้งาน"</string> </resources> diff --git a/java/res/values-tl/strings.xml b/java/res/values-tl/strings.xml index 447baef79..27f8cf832 100644 --- a/java/res/values-tl/strings.xml +++ b/java/res/values-tl/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Mga setting ng Android keyboard"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Mga pagpipilian sa input"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Pagwawasto sa Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Mga setting ng pang-check ng pagbabaybay"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Gamitin ang proximity data"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Gumamit ng proximity algorithm na tulad ng keyboard para sa pag-check ng pagbabaybay"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Mag-vibrate sa keypress"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Tunog sa keypress"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Popup sa keypress"</string> diff --git a/java/res/values-tr/strings.xml b/java/res/values-tr/strings.xml index 986bfa65d..5cc6b8792 100644 --- a/java/res/values-tr/strings.xml +++ b/java/res/values-tr/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Android klavye ayarları"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Giriş seçenekleri"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android düzeltme"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Yazım denetimi ayarları"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Yakınlık verilri kullan"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Yazım denetimi içn klavye benzeri yakınlık algoritması kullan"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Tuşa basıldığında titret"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Tuşa basıldığında ses çıkar"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Tuşa basıldığında pop-up aç"</string> diff --git a/java/res/values-uk/strings.xml b/java/res/values-uk/strings.xml index 4c7ccc6c2..30c0181c7 100644 --- a/java/res/values-uk/strings.xml +++ b/java/res/values-uk/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Налашт-ня клавіат. Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Парам. введення"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Виправлення Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Налаштування перевірки орфографії"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Використ. дані близькості"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Для перевірки орфогр. викор. алгоритм близьк., аналог. клавіат."</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> diff --git a/java/res/values-vi/strings.xml b/java/res/values-vi/strings.xml index caf9d579e..bfc85d021 100644 --- a/java/res/values-vi/strings.xml +++ b/java/res/values-vi/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Cài đặt bàn phím Android"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"Tùy chọn nhập"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Dịch vụ sửa chính tả của Android"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Cài đặt kiểm tra chính tả"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Sử dụng dữ liệu gần"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Dùng thuật toán gần, như của bàn phím để k.tra chính tả"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Rung khi nhấn phím"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Âm thanh khi nhấn phím"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Cửa sổ bật lên khi nhấn phím"</string> diff --git a/java/res/values-zh-rCN/strings.xml b/java/res/values-zh-rCN/strings.xml index cdbd64dd1..e6f3ecbc1 100644 --- a/java/res/values-zh-rCN/strings.xml +++ b/java/res/values-zh-rCN/strings.xml @@ -24,12 +24,9 @@ <string name="english_ime_settings" msgid="6661589557206947774">"Android 键盘设置"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"输入选项"</string> <string name="spell_checker_service_name" msgid="2003013122022285508">"Android 更正"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"拼写检查设置"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"使用邻近度数据"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"使用类似键盘的邻近度算法进行拼写检查"</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> diff --git a/java/res/values-zh-rTW/strings.xml b/java/res/values-zh-rTW/strings.xml index f14a60542..c2fd8775f 100644 --- a/java/res/values-zh-rTW/strings.xml +++ b/java/res/values-zh-rTW/strings.xml @@ -23,13 +23,10 @@ <string name="english_ime_name" msgid="7252517407088836577">"Android 鍵盤"</string> <string name="english_ime_settings" msgid="6661589557206947774">"Android 鍵盤設定"</string> <string name="english_ime_input_options" msgid="3909945612939668554">"輸入選項"</string> - <string name="spell_checker_service_name" msgid="2003013122022285508">"Android 修正"</string> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="spell_checker_service_name" msgid="2003013122022285508">"Android 拼字修正服務"</string> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"拼字檢查設定"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"使用鄰近資料"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"運用類似鍵盤的鄰近演算法進行拼字檢查"</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> diff --git a/java/res/values-zu/strings.xml b/java/res/values-zu/strings.xml index b4688fd93..f25057fd4 100644 --- a/java/res/values-zu/strings.xml +++ b/java/res/values-zu/strings.xml @@ -25,12 +25,9 @@ <string name="english_ime_input_options" msgid="3909945612939668554">"Okukhethwa kukho kokungenayo"</string> <!-- no translation found for spell_checker_service_name (2003013122022285508) --> <skip /> - <!-- no translation found for android_spell_checker_settings (5822324635435443689) --> - <skip /> - <!-- no translation found for use_proximity_option_title (7469233942295924620) --> - <skip /> - <!-- no translation found for use_proximity_option_summary (2857708859847261945) --> - <skip /> + <string name="android_spell_checker_settings" msgid="5822324635435443689">"Izilungiselelo zokuhlola ukupela"</string> + <string name="use_proximity_option_title" msgid="7469233942295924620">"Sebenzisa imininingo ye-proximity"</string> + <string name="use_proximity_option_summary" msgid="2857708859847261945">"Sebenzisa i-proximity algorithm efana ne-keyboard ukuhlola ukupela"</string> <string name="vibrate_on_keypress" msgid="5258079494276955460">"Dlidlizelisa ngokucindezela inkinobho"</string> <string name="sound_on_keypress" msgid="6093592297198243644">"Umsindo wokucindezela ukhiye"</string> <string name="popup_on_keypress" msgid="123894815723512944">"Ugaxekile ngokucindezela ukhiye"</string> diff --git a/java/res/values/styles.xml b/java/res/values/styles.xml index cb9edb0b8..7936f3c3c 100644 --- a/java/res/values/styles.xml +++ b/java/res/values/styles.xml @@ -29,7 +29,8 @@ <item name="maxPopupKeyboardColumn">@integer/config_max_popup_keyboard_column</item> </style> <style name="LatinKeyboard"> - <item name="autoCorrectionSpacebarLedEnabled">@bool/config_auto_correction_spacebar_led_enabled</item> + <item name="autoCorrectionSpacebarLedEnabled">@bool/config_auto_correction_spacebar_led_enabled + </item> <item name="spacebarTextColor">#FFC0C0C0</item> <item name="spacebarTextShadowColor">#80000000</item> </style> @@ -66,7 +67,10 @@ <item name="shadowRadius">2.75</item> <item name="backgroundDimAmount">0.5</item> </style> - <style name="PopupMiniKeyboardView" parent="KeyboardView"> + <style + name="PopupMiniKeyboardView" + parent="KeyboardView" + > <item name="keyBackground">@drawable/btn_keyboard_key_popup</item> <item name="verticalCorrection">@dimen/mini_keyboard_vertical_correction</item> </style> @@ -84,7 +88,10 @@ <style name="SuggestionPreviewBackgroundStyle"> <item name="android:background">@drawable/candidate_feedback_background</item> </style> - <style name="CandidateViewStyle" parent="SuggestionsStripBackgroundStyle"> + <style + name="CandidateViewStyle" + parent="SuggestionsStripBackgroundStyle" + > <item name="suggestionStripOption">autoCorrectBold</item> <item name="colorTypedWord">#FFFFFFFF</item> <item name="colorAutoCorrect">#FFFCAE00</item> @@ -93,23 +100,35 @@ <item name="centerCandidatePercentile">@integer/center_candidate_percentile</item> </style> <!-- Theme "Basic high contrast" --> - <style name="KeyboardView.HighContrast" parent="KeyboardView"> + <style + name="KeyboardView.HighContrast" + parent="KeyboardView" + > <item name="android:background">@android:color/black</item> <item name="keyBackground">@drawable/btn_keyboard_key3</item> </style> <!-- Theme "Stone" --> - <style name="Keyboard.Stone" parent="Keyboard"> + <style + name="Keyboard.Stone" + parent="Keyboard" + > <item name="keyboardHeight">@dimen/keyboardHeight_stone</item> <item name="keyboardTopPadding">@fraction/keyboard_top_padding_stone</item> <item name="keyboardBottomPadding">@fraction/keyboard_bottom_padding_stone</item> <item name="horizontalGap">@fraction/key_horizontal_gap_stone</item> <item name="verticalGap">@fraction/key_bottom_gap_stone</item> </style> - <style name="LatinKeyboard.Stone" parent="LatinKeyboard"> + <style + name="LatinKeyboard.Stone" + parent="LatinKeyboard" + > <item name="spacebarTextColor">#FF000000</item> <item name="spacebarTextShadowColor">#D0FFFFFF</item> </style> - <style name="KeyboardView.Stone" parent="KeyboardView"> + <style + name="KeyboardView.Stone" + parent="KeyboardView" + > <item name="keyBackground">@drawable/btn_keyboard_key_stone</item> <item name="keyTextColor">#FF000000</item> <item name="keyTextInactivatedColor">#FF808080</item> @@ -119,39 +138,63 @@ <item name="keyUppercaseLetterActivatedColor">#CC000000</item> <item name="shadowColor">#FFFFFFFF</item> </style> - <style name="PopupMiniKeyboardView.Stone" parent="PopupMiniKeyboardView"> + <style + name="PopupMiniKeyboardView.Stone" + parent="PopupMiniKeyboardView" + > <item name="keyBackground">@drawable/btn_keyboard_key_stone</item> <item name="keyTextColor">#FF000000</item> <item name="shadowColor">#FFFFFFFF</item> </style> <!-- Theme "Stone bold" --> - <style name="KeyboardView.Stone.Bold" parent="KeyboardView.Stone"> + <style + name="KeyboardView.Stone.Bold" + parent="KeyboardView.Stone" + > <item name="keyTextStyle">bold</item> </style> <!-- Theme "Gingerbread" --> - <style name="Keyboard.Gingerbread" parent="Keyboard"> + <style + name="Keyboard.Gingerbread" + parent="Keyboard" + > <item name="horizontalGap">@fraction/key_horizontal_gap_gb</item> <item name="verticalGap">@fraction/key_bottom_gap_gb</item> </style> - <style name="KeyboardView.Gingerbread" parent="KeyboardView"> + <style + name="KeyboardView.Gingerbread" + parent="KeyboardView" + > <item name="android:background">@drawable/keyboard_dark_background</item> <item name="keyBackground">@drawable/btn_keyboard_key_gingerbread</item> <item name="keyTextStyle">bold</item> </style> - <style name="PopupMiniKeyboardView.Gingerbread" parent="PopupMiniKeyboardView"> + <style + name="PopupMiniKeyboardView.Gingerbread" + parent="PopupMiniKeyboardView" + > <item name="android:background">@null</item> </style> <!-- Theme "IceCreamSandwich" --> - <style name="Keyboard.IceCreamSandwich" parent="Keyboard" > + <style + name="Keyboard.IceCreamSandwich" + parent="Keyboard" + > <item name="keyboardTopPadding">@fraction/keyboard_top_padding_ics</item> <item name="keyboardBottomPadding">@fraction/keyboard_bottom_padding_ics</item> <item name="horizontalGap">@fraction/key_horizontal_gap_ics</item> <item name="verticalGap">@fraction/key_bottom_gap_ics</item> </style> - <style name="LatinKeyboard.IceCreamSandwich" parent="LatinKeyboard"> + <style + name="LatinKeyboard.IceCreamSandwich" + parent="LatinKeyboard" + > <item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item> </style> - <style name="KeyboardView.IceCreamSandwich" parent="KeyboardView"> + <style + name="KeyboardView.IceCreamSandwich" + parent="KeyboardView" + > <item name="android:background">@drawable/keyboard_background_holo</item> <item name="keyBackground">@drawable/btn_keyboard_key_ics</item> <item name="keyTextStyle">bold</item> @@ -169,7 +212,10 @@ <item name="shadowColor">#00000000</item> <item name="shadowRadius">0.0</item> </style> - <style name="PopupMiniKeyboardView.IceCreamSandwich" parent="PopupMiniKeyboardView"> + <style + name="PopupMiniKeyboardView.IceCreamSandwich" + parent="PopupMiniKeyboardView" + > <item name="android:background">@null</item> <item name="keyBackground">@drawable/btn_keyboard_key_popup_ics</item> </style> @@ -184,10 +230,15 @@ <style name="SuggestionBackgroundStyle.IceCreamSandwich"> <item name="android:background">@drawable/btn_candidate_ics</item> </style> - <style name="SuggestionPreviewBackgroundStyle.IceCreamSandwich"> - <item name="android:background">@drawable/keyboard_popup_panel_background_holo</item> + <style + name="SuggestionPreviewBackgroundStyle.IceCreamSandwich" + parent="PopupMiniKeyboardPanelStyle.IceCreamSandwich" + > </style> - <style name="CandidateViewStyle.IceCreamSandwich" parent="SuggestionsStripBackgroundStyle.IceCreamSandwich"> + <style + name="CandidateViewStyle.IceCreamSandwich" + parent="SuggestionsStripBackgroundStyle.IceCreamSandwich" + > <item name="suggestionStripOption">autoCorrectBold|validTypedWordBold</item> <item name="colorTypedWord">#FFBCBEC0</item> <item name="colorAutoCorrect">#FF0099CC</item> diff --git a/java/res/xml/spellchecker.xml b/java/res/xml/spellchecker.xml index ce09264ce..30fac5b20 100644 --- a/java/res/xml/spellchecker.xml +++ b/java/res/xml/spellchecker.xml @@ -23,11 +23,23 @@ <spell-checker xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/spell_checker_service_name"> <subtype - android:label="@string/subtype_en_US" - android:subtypeLocale="en_US" + android:label="@string/subtype_generic" + android:subtypeLocale="en" /> <subtype - android:label="@string/subtype_en_GB" - android:subtypeLocale="en_GB" + android:label="@string/subtype_generic" + android:subtypeLocale="fr" + /> + <subtype + android:label="@string/subtype_generic" + android:subtypeLocale="de" + /> + <subtype + android:label="@string/subtype_generic" + android:subtypeLocale="it" + /> + <subtype + android:label="@string/subtype_generic" + android:subtypeLocale="es" /> </spell-checker> diff --git a/java/src/com/android/inputmethod/compat/SuggestionSpanUtils.java b/java/src/com/android/inputmethod/compat/SuggestionSpanUtils.java index 4929dd948..5c54fa548 100644 --- a/java/src/com/android/inputmethod/compat/SuggestionSpanUtils.java +++ b/java/src/com/android/inputmethod/compat/SuggestionSpanUtils.java @@ -53,7 +53,8 @@ public class SuggestionSpanUtils { public static CharSequence getTextWithSuggestionSpan(Context context, CharSequence pickedWord, SuggestedWords suggestedWords) { if (TextUtils.isEmpty(pickedWord) || CONSTRUCTOR_SuggestionSpan == null - || suggestedWords == null || suggestedWords.size() == 0) { + || suggestedWords == null || suggestedWords.size() == 0 + || suggestedWords.getInfo(0).isObsoleteSuggestedWord()) { return pickedWord; } diff --git a/java/src/com/android/inputmethod/deprecated/languageswitcher/InputLanguageSelection.java b/java/src/com/android/inputmethod/deprecated/languageswitcher/InputLanguageSelection.java index 7eb5acda8..b6e0ec9cf 100644 --- a/java/src/com/android/inputmethod/deprecated/languageswitcher/InputLanguageSelection.java +++ b/java/src/com/android/inputmethod/deprecated/languageswitcher/InputLanguageSelection.java @@ -18,6 +18,7 @@ package com.android.inputmethod.deprecated.languageswitcher; import com.android.inputmethod.keyboard.internal.KeyboardBuilder; import com.android.inputmethod.latin.DictionaryFactory; +import com.android.inputmethod.latin.LocaleUtils; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.Settings; import com.android.inputmethod.latin.SharedPreferencesCompat; @@ -155,7 +156,7 @@ public class InputLanguageSelection extends PreferenceActivity { private Pair<Long, Boolean> hasDictionaryOrLayout(Locale locale) { if (locale == null) return new Pair<Long, Boolean>(null, false); final Resources res = getResources(); - final Locale saveLocale = Utils.setSystemLocale(res, locale); + final Locale saveLocale = LocaleUtils.setSystemLocale(res, locale); final Long dictionaryId = DictionaryFactory.getDictionaryId(this, locale); boolean hasLayout = false; @@ -174,7 +175,7 @@ public class InputLanguageSelection extends PreferenceActivity { } catch (XmlPullParserException e) { } catch (IOException e) { } - Utils.setSystemLocale(res, saveLocale); + LocaleUtils.setSystemLocale(res, saveLocale); return new Pair<Long, Boolean>(dictionaryId, hasLayout); } diff --git a/java/src/com/android/inputmethod/deprecated/languageswitcher/LanguageSwitcher.java b/java/src/com/android/inputmethod/deprecated/languageswitcher/LanguageSwitcher.java index 1eedb5ee1..8070942d0 100644 --- a/java/src/com/android/inputmethod/deprecated/languageswitcher/LanguageSwitcher.java +++ b/java/src/com/android/inputmethod/deprecated/languageswitcher/LanguageSwitcher.java @@ -18,9 +18,9 @@ package com.android.inputmethod.deprecated.languageswitcher; import com.android.inputmethod.latin.LatinIME; import com.android.inputmethod.latin.LatinImeLogger; +import com.android.inputmethod.latin.LocaleUtils; import com.android.inputmethod.latin.Settings; import com.android.inputmethod.latin.SharedPreferencesCompat; -import com.android.inputmethod.latin.Utils; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; @@ -126,7 +126,7 @@ public class LanguageSwitcher { private void constructLocales() { mLocales.clear(); for (final String lang : mSelectedLanguageArray) { - final Locale locale = Utils.constructLocaleFromString(lang); + final Locale locale = LocaleUtils.constructLocaleFromString(lang); mLocales.add(locale); } } diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardActionListener.java b/java/src/com/android/inputmethod/keyboard/KeyboardActionListener.java index 864091289..6f5420882 100644 --- a/java/src/com/android/inputmethod/keyboard/KeyboardActionListener.java +++ b/java/src/com/android/inputmethod/keyboard/KeyboardActionListener.java @@ -76,4 +76,21 @@ public interface KeyboardActionListener { * @return true if the request has been consumed, false otherwise. */ public boolean onCustomRequest(int requestCode); + + public static class Adapter implements KeyboardActionListener { + @Override + public void onPress(int primaryCode, boolean withSliding) {} + @Override + public void onRelease(int primaryCode, boolean withSliding) {} + @Override + public void onCodeInput(int primaryCode, int[] keyCodes, int x, int y) {} + @Override + public void onTextInput(CharSequence text) {} + @Override + public void onCancelInput() {} + @Override + public boolean onCustomRequest(int requestCode) { + return false; + } + } } diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java index b1212f424..e43ae55a8 100644 --- a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java @@ -33,6 +33,7 @@ import com.android.inputmethod.keyboard.internal.ModifierKeyState; import com.android.inputmethod.keyboard.internal.ShiftKeyState; import com.android.inputmethod.latin.LatinIME; import com.android.inputmethod.latin.LatinImeLogger; +import com.android.inputmethod.latin.LocaleUtils; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.Settings; import com.android.inputmethod.latin.SubtypeSwitcher; @@ -258,11 +259,11 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha final SoftReference<LatinKeyboard> ref = mKeyboardCache.get(id); LatinKeyboard keyboard = (ref == null) ? null : ref.get(); if (keyboard == null) { - final Locale savedLocale = Utils.setSystemLocale(mResources, id.mLocale); + final Locale savedLocale = LocaleUtils.setSystemLocale(mResources, id.mLocale); try { keyboard = new LatinKeyboard.Builder(mThemeContext).load(id).build(); } finally { - Utils.setSystemLocale(mResources, savedLocale); + LocaleUtils.setSystemLocale(mResources, savedLocale); } mKeyboardCache.put(id, new SoftReference<LatinKeyboard>(keyboard)); diff --git a/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java b/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java index be04b5a52..5fa9b8fc4 100644 --- a/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java +++ b/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java @@ -81,6 +81,7 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke private int mOldPointerCount = 1; private int mOldKeyIndex; + private final boolean mConfigShowMiniKeyboardAtTouchedPoint; protected KeyDetector mKeyDetector; // To detect double tap. @@ -225,6 +226,8 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke a.recycle(); final Resources res = getResources(); + mConfigShowMiniKeyboardAtTouchedPoint = res.getBoolean( + R.bool.config_show_mini_keyboard_at_touched_point); final float keyHysteresisDistance = res.getDimension(R.dimen.key_hysteresis_distance); mKeyDetector = new KeyDetector(keyHysteresisDistance); @@ -459,7 +462,13 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke mPopupPanel = popupPanel; mPopupPanelPointerTrackerId = tracker.mPointerId; - popupPanel.showPopupPanel(this, parentKey, tracker, mPopupWindow); + final Keyboard keyboard = getKeyboard(); + mPopupPanel.setShifted(keyboard.isShiftedOrShiftLocked()); + final int pointX = (mConfigShowMiniKeyboardAtTouchedPoint) ? tracker.getLastX() + : parentKey.mX + parentKey.mWidth / 2; + final int pointY = parentKey.mY - keyboard.mVerticalGap; + popupPanel.showPopupPanel( + this, this, pointX, pointY, mPopupWindow, getKeyboardActionListener()); final int translatedX = popupPanel.translateX(tracker.getLastX()); final int translatedY = popupPanel.translateY(tracker.getLastY()); tracker.onShowPopupPanel(translatedX, translatedY, SystemClock.uptimeMillis(), popupPanel); @@ -486,6 +495,9 @@ public class LatinKeyboardView extends KeyboardView implements PointerTracker.Ke @Override public boolean onTouchEvent(MotionEvent me) { + if (getKeyboard() == null) { + return false; + } return mTouchScreenRegulator.onTouchEvent(me); } diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java index d33cb442b..7ae62200d 100644 --- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java +++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java @@ -63,13 +63,12 @@ public class PointerTracker { public TimerProxy getTimerProxy(); } - public interface DrawingProxy { + public interface DrawingProxy extends PopupPanel.Controller { public void invalidateKey(Key key); public TextView inflateKeyPreviewText(); public void showKeyPreview(int keyIndex, PointerTracker tracker); public void cancelShowKeyPreview(PointerTracker tracker); public void dismissKeyPreview(PointerTracker tracker); - public boolean dismissPopupPanel(); } public interface TimerProxy { @@ -140,20 +139,8 @@ public class PointerTracker { private boolean mIgnoreModifierKey; // Empty {@link KeyboardActionListener} - private static final KeyboardActionListener EMPTY_LISTENER = new KeyboardActionListener() { - @Override - public void onPress(int primaryCode, boolean withSliding) {} - @Override - public void onRelease(int primaryCode, boolean withSliding) {} - @Override - public void onCodeInput(int primaryCode, int[] keyCodes, int x, int y) {} - @Override - public void onTextInput(CharSequence text) {} - @Override - public void onCancelInput() {} - @Override - public boolean onCustomRequest(int requestCode) { return false; } - }; + private static final KeyboardActionListener EMPTY_LISTENER = + new KeyboardActionListener.Adapter(); public static void init(boolean hasDistinctMultitouch, Context context) { if (hasDistinctMultitouch) { @@ -284,7 +271,7 @@ public class PointerTracker { mListener.onCancelInput(); } - public void setKeyDetectorInner(KeyDetector keyDetector) { + private void setKeyDetectorInner(KeyDetector keyDetector) { mKeyDetector = keyDetector; mKeyboard = keyDetector.getKeyboard(); mKeys = mKeyboard.mKeys; diff --git a/java/src/com/android/inputmethod/keyboard/PopupMiniKeyboardView.java b/java/src/com/android/inputmethod/keyboard/PopupMiniKeyboardView.java index 2396222bc..c4428dc60 100644 --- a/java/src/com/android/inputmethod/keyboard/PopupMiniKeyboardView.java +++ b/java/src/com/android/inputmethod/keyboard/PopupMiniKeyboardView.java @@ -36,12 +36,12 @@ import java.util.List; */ public class PopupMiniKeyboardView extends KeyboardView implements PopupPanel { private final int[] mCoordinates = new int[2]; - private final boolean mConfigShowMiniKeyboardAtTouchedPoint; private final KeyDetector mKeyDetector; private final int mVerticalCorrection; - private LatinKeyboardView mParentKeyboardView; + private Controller mController; + private KeyboardActionListener mListener; private int mOriginX; private int mOriginY; @@ -101,33 +101,31 @@ public class PopupMiniKeyboardView extends KeyboardView implements PopupPanel { public void cancelKeyTimers() {} }; - private final KeyboardActionListener mListner = new KeyboardActionListener() { + private final KeyboardActionListener mMiniKeyboardListener = + new KeyboardActionListener.Adapter() { @Override public void onCodeInput(int primaryCode, int[] keyCodes, int x, int y) { - mParentKeyboardView.getKeyboardActionListener() - .onCodeInput(primaryCode, keyCodes, x, y); + mListener.onCodeInput(primaryCode, keyCodes, x, y); } @Override public void onTextInput(CharSequence text) { - mParentKeyboardView.getKeyboardActionListener().onTextInput(text); + mListener.onTextInput(text); } @Override public void onCancelInput() { - mParentKeyboardView.getKeyboardActionListener().onCancelInput(); + mListener.onCancelInput(); } @Override public void onPress(int primaryCode, boolean withSliding) { - mParentKeyboardView.getKeyboardActionListener().onPress(primaryCode, withSliding); + mListener.onPress(primaryCode, withSliding); } @Override public void onRelease(int primaryCode, boolean withSliding) { - mParentKeyboardView.getKeyboardActionListener().onRelease(primaryCode, withSliding); + mListener.onRelease(primaryCode, withSliding); } - @Override - public boolean onCustomRequest(int requestCode) { return false; } }; public PopupMiniKeyboardView(Context context, AttributeSet attrs) { @@ -144,8 +142,6 @@ public class PopupMiniKeyboardView extends KeyboardView implements PopupPanel { a.recycle(); final Resources res = context.getResources(); - mConfigShowMiniKeyboardAtTouchedPoint = res.getBoolean( - R.bool.config_show_mini_keyboard_at_touched_point); // Override default ProximityKeyDetector. mKeyDetector = new MiniKeyboardKeyDetector(res.getDimension( R.dimen.mini_keyboard_slide_allowance)); @@ -179,7 +175,7 @@ public class PopupMiniKeyboardView extends KeyboardView implements PopupPanel { @Override public KeyboardActionListener getKeyboardActionListener() { - return mListner; + return mMiniKeyboardListener; } @Override @@ -200,41 +196,52 @@ public class PopupMiniKeyboardView extends KeyboardView implements PopupPanel { } @Override - public void showPopupPanel(LatinKeyboardView parentKeyboardView, Key parentKey, - PointerTracker tracker, PopupWindow window) { - mParentKeyboardView = parentKeyboardView; + public void setShifted(boolean shifted) { + final MiniKeyboard miniKeyboard = (MiniKeyboard)getKeyboard(); + if (miniKeyboard.setShifted(shifted)) { + invalidateAllKeys(); + } + } + + @Override + public void showPopupPanel(View parentView, Controller controller, int pointX, int pointY, + PopupWindow window, KeyboardActionListener listener) { + mController = controller; + mListener = listener; final View container = (View)getParent(); final MiniKeyboard miniKeyboard = (MiniKeyboard)getKeyboard(); - final Keyboard parentKeyboard = parentKeyboardView.getKeyboard(); - parentKeyboardView.getLocationInWindow(mCoordinates); - final int pointX = (mConfigShowMiniKeyboardAtTouchedPoint) ? tracker.getLastX() - : parentKey.mX + parentKey.mWidth / 2; - final int pointY = parentKey.mY; + parentView.getLocationInWindow(mCoordinates); final int miniKeyboardLeft = pointX - miniKeyboard.getDefaultCoordX() - + parentKeyboardView.getPaddingLeft(); - final int x = Math.max(0, Math.min(miniKeyboardLeft, - parentKeyboardView.getWidth() - miniKeyboard.mOccupiedWidth)) - - container.getPaddingLeft() + mCoordinates[0]; - final int y = pointY - parentKeyboard.mVerticalGap + + parentView.getPaddingLeft(); + final int x = wrapUp(Math.max(0, Math.min(miniKeyboardLeft, + parentView.getWidth() - miniKeyboard.mOccupiedWidth)) + - container.getPaddingLeft() + mCoordinates[0], + container.getMeasuredWidth(), 0, parentView.getWidth()); + final int y = pointY - (container.getMeasuredHeight() - container.getPaddingBottom()) - + parentKeyboardView.getPaddingTop() + mCoordinates[1]; + + parentView.getPaddingTop() + mCoordinates[1]; - if (miniKeyboard.setShifted(parentKeyboard.isShiftedOrShiftLocked())) { - invalidateAllKeys(); - } window.setContentView(container); window.setWidth(container.getMeasuredWidth()); window.setHeight(container.getMeasuredHeight()); - window.showAtLocation(parentKeyboardView, Gravity.NO_GRAVITY, x, y); + window.showAtLocation(parentView, Gravity.NO_GRAVITY, x, y); mOriginX = x + container.getPaddingLeft() - mCoordinates[0]; mOriginY = y + container.getPaddingTop() - mCoordinates[1]; } + private static int wrapUp(int x, int width, int left, int right) { + if (x < left) + return left; + if (x + width > right) + return right - width; + return x; + } + @Override public boolean dismissPopupPanel() { - return mParentKeyboardView.dismissPopupPanel(); + return mController.dismissPopupPanel(); } @Override diff --git a/java/src/com/android/inputmethod/keyboard/PopupPanel.java b/java/src/com/android/inputmethod/keyboard/PopupPanel.java index db637c50b..5e51fd54a 100644 --- a/java/src/com/android/inputmethod/keyboard/PopupPanel.java +++ b/java/src/com/android/inputmethod/keyboard/PopupPanel.java @@ -16,18 +16,27 @@ package com.android.inputmethod.keyboard; +import android.view.View; import android.widget.PopupWindow; public interface PopupPanel extends PointerTracker.KeyEventHandler { + public interface Controller { + public boolean dismissPopupPanel(); + } + + public void setShifted(boolean shifted); + /** * Show popup panel. - * @param parentKeyboardView the parent KeyboardView that has the parent key. - * @param parentKey the parent key that is the source of this popup panel - * @param tracker the pointer tracker that pressesd the parent key + * @param parentView the parent view of this popup panel + * @param controller the controller that can dismiss this popup panel + * @param pointX x coordinate of this popup panel + * @param pointY y coordinate of this popup panel * @param window PopupWindow to be used to show this popup panel + * @param listener the listener that will receive keyboard action from this popup panel. */ - public void showPopupPanel(LatinKeyboardView parentKeyboardView, Key parentKey, - PointerTracker tracker, PopupWindow window); + public void showPopupPanel(View parentView, Controller controller, int pointX, int pointY, + PopupWindow window, KeyboardActionListener listener); /** * Translate X-coordinate of touch event to the local X-coordinate of this PopupPanel. diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java index 360c944d2..5546d48c0 100644 --- a/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java +++ b/java/src/com/android/inputmethod/latin/BinaryDictionaryGetter.java @@ -157,9 +157,9 @@ class BinaryDictionaryGetter { private static AssetFileAddress loadFallbackResource(final Context context, final int fallbackResId, final Locale locale) { final Resources res = context.getResources(); - final Locale savedLocale = Utils.setSystemLocale(res, locale); + final Locale savedLocale = LocaleUtils.setSystemLocale(res, locale); final AssetFileDescriptor afd = res.openRawResourceFd(fallbackResId); - Utils.setSystemLocale(res, savedLocale); + LocaleUtils.setSystemLocale(res, savedLocale); if (afd == null) { Log.e(TAG, "Found the resource but cannot read it. Is it compressed? resId=" diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/CandidateView.java index 5f20c70b4..f445abf48 100644 --- a/java/src/com/android/inputmethod/latin/CandidateView.java +++ b/java/src/com/android/inputmethod/latin/CandidateView.java @@ -64,6 +64,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private static final boolean DBG = LatinImeLogger.sDBG; + private final ViewGroup mCandidatesPlacer; private final ViewGroup mCandidatesStrip; private ViewGroup mCandidatesPane; private ViewGroup mCandidatesPaneContainer; @@ -76,13 +77,9 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private final PopupWindow mPreviewPopup; private final TextView mPreviewText; - private final View mTouchToSave; - private final TextView mWordToSave; - private Listener mListener; private SuggestedWords mSuggestions = SuggestedWords.EMPTY; private boolean mShowingAutoCorrectionInverted; - private boolean mShowingAddToDictionary; private final SuggestionsStripParams mStripParams; private final SuggestionsPaneParams mPaneParams; @@ -94,7 +91,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private static final int MSG_HIDE_PREVIEW = 0; private static final int MSG_UPDATE_SUGGESTION = 1; - private static final long DELAY_HIDE_PREVIEW = 1000; + private static final long DELAY_HIDE_PREVIEW = 1300; private static final long DELAY_UPDATE_SUGGESTION = 300; public UiHandler(CandidateView outerInstance) { @@ -239,8 +236,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo lastView = info; info.measure(WRAP_CONTENT, WRAP_CONTENT); final int infoWidth = info.getMeasuredWidth(); - FrameLayoutCompatUtils.placeViewAt(info, x - infoWidth, y, infoWidth, - info.getMeasuredHeight()); + FrameLayoutCompatUtils.placeViewAt( + info, x - infoWidth, y, infoWidth, info.getMeasuredHeight()); } } if (x != 0) { @@ -274,13 +271,16 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private static final int AUTO_CORRECT_INVERT = 0x04; private static final int VALID_TYPED_WORD_BOLD = 0x08; - private final TextPaint mPaint; private final int mSuggestionStripOption; private final ArrayList<CharSequence> mTexts = new ArrayList<CharSequence>(); public boolean mMoreSuggestionsAvailable; + public final TextView mWordToSaveView; + private final TextView mHintToSaveView; + private final CharSequence mHintToSaveText; + public SuggestionsStripParams(Context context, AttributeSet attrs, int defStyle, List<TextView> words, List<View> dividers, List<TextView> infos) { super(words, dividers, infos); @@ -305,9 +305,10 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mInvertedForegroundColorSpan = new ForegroundColorSpan(mColorTypedWord ^ 0x00ffffff); mInvertedBackgroundColorSpan = new BackgroundColorSpan(mColorTypedWord); - mPaint = new TextPaint(); - final float textSize = res.getDimension(R.dimen.candidate_text_size); - mPaint.setTextSize(textSize); + final LayoutInflater inflater = LayoutInflater.from(context); + mWordToSaveView = (TextView)inflater.inflate(R.layout.candidate_word, null); + mHintToSaveView = (TextView)inflater.inflate(R.layout.candidate_word, null); + mHintToSaveText = context.getText(R.string.hint_add_to_dictionary); } public int getTextColor() { @@ -366,7 +367,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final SuggestedWordInfo info = (pos < suggestions.size()) ? suggestions.getInfo(pos) : null; - if (info != null && info.isPreviousSuggestedWord()) { + if (info != null && info.isObsoleteSuggestedWord()) { return applyAlpha(color, 0.5f); } else { return color; @@ -388,7 +389,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo return word; } - public int layout(SuggestedWords suggestions, ViewGroup stripView, ViewGroup paneView, + public int layout(SuggestedWords suggestions, ViewGroup stripView, ViewGroup placer, int stripWidth) { if (suggestions.isPunctuationSuggestions()) { return layoutPunctuationSuggestions(suggestions, stripView); @@ -405,6 +406,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final View divider = mDividers.get(pos); // Add divider if this isn't the left most suggestion in candidate strip. stripView.addView(divider); + x += divider.getMeasuredWidth(); } final CharSequence styled = mTexts.get(pos); @@ -429,18 +431,19 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo word.setTextScaleX(scaleX); stripView.addView(word); setLayoutWeight(word, getCandidateWeight(index), MATCH_PARENT); + x += word.getMeasuredWidth(); if (DBG) { final CharSequence debugInfo = getDebugInfo(suggestions, pos); if (debugInfo != null) { final TextView info = mInfos.get(pos); info.setText(debugInfo); - paneView.addView(info); + placer.addView(info); info.measure(WRAP_CONTENT, WRAP_CONTENT); final int infoWidth = info.getMeasuredWidth(); final int y = info.getMeasuredHeight(); - FrameLayoutCompatUtils.placeViewAt(info, x, 0, infoWidth, y); - x += infoWidth * 2; + FrameLayoutCompatUtils.placeViewAt( + info, x - infoWidth, y, infoWidth, info.getMeasuredHeight()); } } } @@ -498,6 +501,33 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mMoreSuggestionsAvailable = false; return countInStrip; } + + public void layoutAddToDictionaryHint(CharSequence word, ViewGroup stripView, + int stripWidth) { + final int width = stripWidth - mDividerWidth - mPadding * 2; + + final TextView wordView = mWordToSaveView; + wordView.setTextColor(mColorTypedWord); + final int wordWidth = (int)(width * mCenterCandidateWeight); + final CharSequence text = getEllipsizedText(word, wordWidth, wordView.getPaint()); + final float wordScaleX = wordView.getTextScaleX(); + wordView.setTag(word); + wordView.setText(text); + wordView.setTextScaleX(wordScaleX); + stripView.addView(wordView); + setLayoutWeight(wordView, mCenterCandidateWeight, MATCH_PARENT); + + stripView.addView(mDividers.get(0)); + + final TextView hintView = mHintToSaveView; + hintView.setTextColor(mColorAutoCorrect); + final int hintWidth = width - wordWidth; + final float hintScaleX = getTextScaleX(mHintToSaveText, hintWidth, hintView.getPaint()); + hintView.setText(mHintToSaveText); + hintView.setTextScaleX(hintScaleX); + stripView.addView(hintView); + setLayoutWeight(hintView, 1.0f - mCenterCandidateWeight, MATCH_PARENT); + } } /** @@ -517,7 +547,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo super(context, attrs); if (defStyle != R.attr.candidateViewStyle) { throw new IllegalArgumentException( - "can't accept defStyle other than R.attr.candidayeViewStyle: defStyle=" + "can't accept defStyle other than R.attr.candidateViewStyle: defStyle=" + defStyle); } setBackgroundDrawable(LinearLayoutCompatUtils.getBackgroundDrawable( @@ -532,6 +562,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mPreviewPopup.setContentView(mPreviewText); mPreviewPopup.setBackgroundDrawable(null); + mCandidatesPlacer = (ViewGroup)findViewById(R.id.candidates_placer); mCandidatesStrip = (ViewGroup)findViewById(R.id.candidates_strip); for (int pos = 0; pos < MAX_SUGGESTIONS; pos++) { final TextView word = (TextView)inflater.inflate(R.layout.candidate_word, null); @@ -546,13 +577,10 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mInfos.add((TextView)inflater.inflate(R.layout.candidate_info, null)); } - mTouchToSave = findViewById(R.id.touch_to_save); - mWordToSave = (TextView)findViewById(R.id.word_to_save); - mWordToSave.setOnClickListener(this); - mStripParams = new SuggestionsStripParams(context, attrs, defStyle, mWords, mDividers, mInfos); mPaneParams = new SuggestionsPaneParams(mWords, mDividers, mInfos); + mStripParams.mWordToSaveView.setOnClickListener(this); } /** @@ -588,7 +616,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo final int width = getWidth(); final int countInStrip = mStripParams.layout( - mSuggestions, mCandidatesStrip, mCandidatesPane, width); + mSuggestions, mCandidatesStrip, mCandidatesPlacer, width); mPaneParams.layout( mSuggestions, mCandidatesPane, countInStrip, mStripParams.getTextColor(), width); } @@ -636,6 +664,15 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } } + private static float getTextScaleX(CharSequence text, int maxWidth, TextPaint paint) { + paint.setTextScaleX(1.0f); + final int width = getTextWidth(text, paint); + if (width <= maxWidth) { + return 1.0f; + } + return maxWidth / (float)width; + } + private static CharSequence getEllipsizedText(CharSequence text, int maxWidth, TextPaint paint) { if (text == null) return null; @@ -718,20 +755,21 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } public boolean isShowingAddToDictionaryHint() { - return mShowingAddToDictionary; + return mCandidatesStrip.getChildCount() > 0 + && mCandidatesStrip.getChildAt(0) == mStripParams.mWordToSaveView; } public void showAddToDictionaryHint(CharSequence word) { - mWordToSave.setText(word); - mShowingAddToDictionary = true; - mCandidatesStrip.setVisibility(GONE); - mTouchToSave.setVisibility(VISIBLE); + clear(); + mStripParams.layoutAddToDictionaryHint(word, mCandidatesStrip, getWidth()); } public boolean dismissAddToDictionaryHint() { - if (!mShowingAddToDictionary) return false; - clear(); - return true; + if (isShowingAddToDictionaryHint()) { + clear(); + return true; + } + return false; } public SuggestedWords getSuggestions() { @@ -739,10 +777,9 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo } public void clear() { - mShowingAddToDictionary = false; mShowingAutoCorrectionInverted = false; - mTouchToSave.setVisibility(GONE); - mCandidatesStrip.setVisibility(VISIBLE); + mCandidatesPlacer.removeAllViews(); + mCandidatesPlacer.addView(mCandidatesStrip); mCandidatesStrip.removeAllViews(); mCandidatesPane.removeAllViews(); closeCandidatesPane(); @@ -752,7 +789,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo mPreviewPopup.dismiss(); } - private void showPreview(int index, CharSequence word) { + private void showPreview(View view, CharSequence word) { if (TextUtils.isEmpty(word)) return; @@ -761,9 +798,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo previewText.setText(word); previewText.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); - View v = mWords.get(index); final int[] offsetInWindow = new int[2]; - v.getLocationInWindow(offsetInWindow); + view.getLocationInWindow(offsetInWindow); final int posX = offsetInWindow[0]; final int posY = offsetInWindow[1] - previewText.getMeasuredHeight(); final PopupWindow previewPopup = mPreviewPopup; @@ -778,7 +814,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo private void addToDictionary(CharSequence word) { if (mListener.addWordToDictionary(word.toString())) { - showPreview(0, getContext().getString(R.string.added_word, word)); + final CharSequence message = getContext().getString(R.string.added_word, word); + showPreview(mStripParams.mWordToSaveView, message); } } @@ -793,8 +830,8 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo @Override public void onClick(View view) { - if (view == mWordToSave) { - addToDictionary(((TextView)view).getText()); + if (view == mStripParams.mWordToSaveView) { + addToDictionary((CharSequence)view.getTag()); clear(); return; } diff --git a/java/src/com/android/inputmethod/latin/DictionaryFactory.java b/java/src/com/android/inputmethod/latin/DictionaryFactory.java index 9642151d7..dfaad26bc 100644 --- a/java/src/com/android/inputmethod/latin/DictionaryFactory.java +++ b/java/src/com/android/inputmethod/latin/DictionaryFactory.java @@ -83,9 +83,9 @@ public class DictionaryFactory { try { final Resources res = context.getResources(); if (null != locale) { - final Locale savedLocale = Utils.setSystemLocale(res, locale); + final Locale savedLocale = LocaleUtils.setSystemLocale(res, locale); afd = res.openRawResourceFd(resId); - Utils.setSystemLocale(res, savedLocale); + LocaleUtils.setSystemLocale(res, savedLocale); } else { afd = res.openRawResourceFd(resId); } @@ -145,7 +145,7 @@ public class DictionaryFactory { */ public static boolean isDictionaryAvailable(Context context, Locale locale) { final Resources res = context.getResources(); - final Locale saveLocale = Utils.setSystemLocale(res, locale); + final Locale saveLocale = LocaleUtils.setSystemLocale(res, locale); final int resourceId = Utils.getMainDictionaryResourceId(res); final AssetFileDescriptor afd = res.openRawResourceFd(resourceId); @@ -156,14 +156,14 @@ public class DictionaryFactory { /* Um, what can we do here exactly? */ } - Utils.setSystemLocale(res, saveLocale); + LocaleUtils.setSystemLocale(res, saveLocale); return hasDictionary; } // TODO: Do not use the size of the dictionary as an unique dictionary ID. - public static Long getDictionaryId(Context context, Locale locale) { + public static Long getDictionaryId(final Context context, final Locale locale) { final Resources res = context.getResources(); - final Locale saveLocale = Utils.setSystemLocale(res, locale); + final Locale saveLocale = LocaleUtils.setSystemLocale(res, locale); final int resourceId = Utils.getMainDictionaryResourceId(res); final AssetFileDescriptor afd = res.openRawResourceFd(resourceId); @@ -175,7 +175,7 @@ public class DictionaryFactory { } catch (java.io.IOException e) { } - Utils.setSystemLocale(res, saveLocale); + LocaleUtils.setSystemLocale(res, saveLocale); return size; } diff --git a/java/src/com/android/inputmethod/latin/ExpandableDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableDictionary.java index 9f4777f5a..2b78b9065 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableDictionary.java @@ -202,7 +202,11 @@ public class ExpandableDictionary extends Dictionary { // Currently updating contacts, don't return any results. if (mUpdatingDictionary) return; } + getWordsInner(codes, callback, proximityInfo); + } + protected final void getWordsInner(final WordComposer codes, final WordCallback callback, + final ProximityInfo proximityInfo) { mInputLength = codes.size(); if (mCodes.length < mInputLength) mCodes = new int[mInputLength][]; // Cache the codes so that we don't have to lookup an array list @@ -223,8 +227,7 @@ public class ExpandableDictionary extends Dictionary { if (mRequiresReload) startDictionaryLoadingTaskLocked(); if (mUpdatingDictionary) return false; } - final int freq = getWordFrequency(word); - return freq > -1; + return getWordFrequency(word) > -1; } /** @@ -464,7 +467,7 @@ public class ExpandableDictionary extends Dictionary { } /** - * Used only for testing purposes + * Used for testing purposes and in the spell checker * This function will wait for loading from database to be done */ void waitForDictionaryLoading() { @@ -477,6 +480,11 @@ public class ExpandableDictionary extends Dictionary { } } + protected final void blockingReloadDictionaryIfRequired() { + reloadDictionaryIfRequired(); + waitForDictionaryLoading(); + } + // Local to reverseLookUp, but do not allocate each time. private final char[] mLookedUpString = new char[MAX_WORD_LENGTH]; diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 552517bc8..229bf0f4c 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -479,10 +479,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar private void initSuggest() { final String localeStr = mSubtypeSwitcher.getInputLocaleStr(); - final Locale keyboardLocale = Utils.constructLocaleFromString(localeStr); + final Locale keyboardLocale = LocaleUtils.constructLocaleFromString(localeStr); final Resources res = mResources; - final Locale savedLocale = Utils.setSystemLocale(res, keyboardLocale); + final Locale savedLocale = LocaleUtils.setSystemLocale(res, keyboardLocale); final ContactsDictionary oldContactsDictionary; if (mSuggest != null) { oldContactsDictionary = mSuggest.getContactsDictionary(); @@ -514,7 +514,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar updateCorrectionMode(); - Utils.setSystemLocale(res, savedLocale); + LocaleUtils.setSystemLocale(res, savedLocale); } /** @@ -551,7 +551,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar /* package private */ void resetSuggestMainDict() { final String localeStr = mSubtypeSwitcher.getInputLocaleStr(); - final Locale keyboardLocale = Utils.constructLocaleFromString(localeStr); + final Locale keyboardLocale = LocaleUtils.constructLocaleFromString(localeStr); int mainDicResId = Utils.getMainDictionaryResourceId(mResources); mSuggest.resetMainDict(this, mainDicResId, keyboardLocale); } diff --git a/java/src/com/android/inputmethod/latin/LocaleUtils.java b/java/src/com/android/inputmethod/latin/LocaleUtils.java index 054f1f9b8..efa9bfee3 100644 --- a/java/src/com/android/inputmethod/latin/LocaleUtils.java +++ b/java/src/com/android/inputmethod/latin/LocaleUtils.java @@ -16,8 +16,13 @@ package com.android.inputmethod.latin; +import android.content.res.Configuration; +import android.content.res.Resources; import android.text.TextUtils; +import java.util.HashMap; +import java.util.Locale; + /** * A class to help with handling Locales in string form. * @@ -30,6 +35,10 @@ public class LocaleUtils { private final static String TAG = LocaleUtils.class.getSimpleName(); + private LocaleUtils() { + // Intentional empty constructor for utility class. + } + // Locale match level constants. // A higher level of match is guaranteed to have a higher numerical value. // Some room is left within constants to add match cases that may arise necessary @@ -154,4 +163,46 @@ public class LocaleUtils { public static boolean isMatch(int level) { return LOCALE_MATCH <= level; } + + /** + * Sets the system locale for this process. + * + * @param res the resources to use. Pass current resources. + * @param newLocale the locale to change to. + * @return the old locale. + */ + public static Locale setSystemLocale(final Resources res, final Locale newLocale) { + final Configuration conf = res.getConfiguration(); + final Locale saveLocale = conf.locale; + conf.locale = newLocale; + res.updateConfiguration(conf, res.getDisplayMetrics()); + return saveLocale; + } + + private static final HashMap<String, Locale> sLocaleCache = new HashMap<String, Locale>(); + + /** + * Creates a locale from a string specification. + */ + public static Locale constructLocaleFromString(final String localeStr) { + if (localeStr == null) + return null; + synchronized (sLocaleCache) { + if (sLocaleCache.containsKey(localeStr)) + return sLocaleCache.get(localeStr); + Locale retval = null; + String[] localeParams = localeStr.split("_", 3); + if (localeParams.length == 1) { + retval = new Locale(localeParams[0]); + } else if (localeParams.length == 2) { + retval = new Locale(localeParams[0], localeParams[1]); + } else if (localeParams.length == 3) { + retval = new Locale(localeParams[0], localeParams[1], localeParams[2]); + } + if (retval != null) { + sLocaleCache.put(localeStr, retval); + } + return retval; + } + } } diff --git a/java/src/com/android/inputmethod/latin/Settings.java b/java/src/com/android/inputmethod/latin/Settings.java index 87a713f5c..a5eed9015 100644 --- a/java/src/com/android/inputmethod/latin/Settings.java +++ b/java/src/com/android/inputmethod/latin/Settings.java @@ -128,8 +128,8 @@ public class Settings extends InputMethodSettingsActivity final Resources res = context.getResources(); final Locale savedLocale; if (null != localeStr) { - final Locale keyboardLocale = Utils.constructLocaleFromString(localeStr); - savedLocale = Utils.setSystemLocale(res, keyboardLocale); + final Locale keyboardLocale = LocaleUtils.constructLocaleFromString(localeStr); + savedLocale = LocaleUtils.setSystemLocale(res, keyboardLocale); } else { savedLocale = null; } @@ -191,7 +191,7 @@ public class Settings extends InputMethodSettingsActivity mVoiceKeyEnabled = voiceMode != null && !voiceMode.equals(voiceModeOff); mVoiceKeyOnMain = voiceMode != null && voiceMode.equals(voiceModeMain); - Utils.setSystemLocale(res, savedLocale); + LocaleUtils.setSystemLocale(res, savedLocale); } public boolean isSuggestedPunctuation(int code) { diff --git a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java index d969e39eb..87d854940 100644 --- a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java +++ b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java @@ -267,7 +267,7 @@ public class SubtypeSwitcher { // "en" --> language: en // "" --> the system locale if (!TextUtils.isEmpty(inputLocaleStr)) { - mInputLocale = Utils.constructLocaleFromString(inputLocaleStr); + mInputLocale = LocaleUtils.constructLocaleFromString(inputLocaleStr); mInputLocaleStr = inputLocaleStr; } else { mInputLocale = mSystemLocale; diff --git a/java/src/com/android/inputmethod/latin/SuggestedWords.java b/java/src/com/android/inputmethod/latin/SuggestedWords.java index c1c46fa47..b177d144a 100644 --- a/java/src/com/android/inputmethod/latin/SuggestedWords.java +++ b/java/src/com/android/inputmethod/latin/SuggestedWords.java @@ -199,7 +199,7 @@ public class SuggestedWords { } } - public boolean isPreviousSuggestedWord () { + public boolean isObsoleteSuggestedWord () { return mPreviousSuggestedWord; } } diff --git a/java/src/com/android/inputmethod/latin/SynchronouslyLoadedUserDictionary.java b/java/src/com/android/inputmethod/latin/SynchronouslyLoadedUserDictionary.java new file mode 100644 index 000000000..4a812b3a9 --- /dev/null +++ b/java/src/com/android/inputmethod/latin/SynchronouslyLoadedUserDictionary.java @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.inputmethod.latin; + +import android.content.Context; + +import com.android.inputmethod.keyboard.ProximityInfo; + +public class SynchronouslyLoadedUserDictionary extends UserDictionary { + + public SynchronouslyLoadedUserDictionary(final Context context, final String locale) { + super(context, locale); + } + + @Override + public void getWords(final WordComposer codes, final WordCallback callback, + final ProximityInfo proximityInfo) { + blockingReloadDictionaryIfRequired(); + getWordsInner(codes, callback, proximityInfo); + } + + @Override + public synchronized boolean isValidWord(CharSequence word) { + blockingReloadDictionaryIfRequired(); + return getWordFrequency(word) > -1; + } +} diff --git a/java/src/com/android/inputmethod/latin/Utils.java b/java/src/com/android/inputmethod/latin/Utils.java index ff051dcbb..60a4cfb38 100644 --- a/java/src/com/android/inputmethod/latin/Utils.java +++ b/java/src/com/android/inputmethod/latin/Utils.java @@ -705,38 +705,6 @@ public class Utils { return (int) (dip * scale + 0.5); } - public static Locale setSystemLocale(Resources res, Locale newLocale) { - final Configuration conf = res.getConfiguration(); - final Locale saveLocale = conf.locale; - conf.locale = newLocale; - res.updateConfiguration(conf, res.getDisplayMetrics()); - return saveLocale; - } - - private static final HashMap<String, Locale> sLocaleCache = new HashMap<String, Locale>(); - - public static Locale constructLocaleFromString(String localeStr) { - if (localeStr == null) - return null; - synchronized (sLocaleCache) { - if (sLocaleCache.containsKey(localeStr)) - return sLocaleCache.get(localeStr); - Locale retval = null; - String[] localeParams = localeStr.split("_", 3); - if (localeParams.length == 1) { - retval = new Locale(localeParams[0]); - } else if (localeParams.length == 2) { - retval = new Locale(localeParams[0], localeParams[1]); - } else if (localeParams.length == 3) { - retval = new Locale(localeParams[0], localeParams[1], localeParams[2]); - } - if (retval != null) { - sLocaleCache.put(localeStr, retval); - } - return retval; - } - } - /** * Remove duplicates from an array of strings. * @@ -783,7 +751,7 @@ public class Utils { } public static String getMiddleDisplayLanguage(Locale locale) { - return toTitleCase((constructLocaleFromString( + return toTitleCase((LocaleUtils.constructLocaleFromString( locale.getLanguage()).getDisplayLanguage(locale)), locale); } diff --git a/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java b/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java index 502ebb52a..a6a5b6dd6 100644 --- a/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java +++ b/java/src/com/android/inputmethod/latin/spellcheck/AndroidSpellCheckerService.java @@ -33,6 +33,8 @@ import com.android.inputmethod.latin.Dictionary.DataType; import com.android.inputmethod.latin.Dictionary.WordCallback; import com.android.inputmethod.latin.DictionaryCollection; import com.android.inputmethod.latin.DictionaryFactory; +import com.android.inputmethod.latin.LocaleUtils; +import com.android.inputmethod.latin.SynchronouslyLoadedUserDictionary; import com.android.inputmethod.latin.UserDictionary; import com.android.inputmethod.latin.Utils; import com.android.inputmethod.latin.WordComposer; @@ -139,7 +141,7 @@ public class AndroidSpellCheckerService extends SpellCheckerService { private DictionaryPool getDictionaryPool(final String locale) { DictionaryPool pool = mDictionaryPools.get(locale); if (null == pool) { - final Locale localeObject = Utils.constructLocaleFromString(locale); + final Locale localeObject = LocaleUtils.constructLocaleFromString(locale); pool = new DictionaryPool(POOL_SIZE, this, localeObject); mDictionaryPools.put(locale, pool); } @@ -155,7 +157,7 @@ public class AndroidSpellCheckerService extends SpellCheckerService { final String localeStr = locale.toString(); Dictionary userDict = mUserDictionaries.get(localeStr); if (null == userDict) { - userDict = new UserDictionary(this, localeStr); + userDict = new SynchronouslyLoadedUserDictionary(this, localeStr); mUserDictionaries.put(localeStr, userDict); } dictionaryCollection.addDictionary(userDict); @@ -172,7 +174,7 @@ public class AndroidSpellCheckerService extends SpellCheckerService { public void onCreate() { final String localeString = getLocale(); mDictionaryPool = getDictionaryPool(localeString); - mLocale = Utils.constructLocaleFromString(localeString); + mLocale = LocaleUtils.constructLocaleFromString(localeString); } // Note : this must be reentrant |