Merge remote-tracking branch 'goog/master' into merge
Conflicts: java/res/xml/method.xml Change-Id: I04a476465593d25105545b98607425d2978ff872
This commit is contained in:
commit
55f38adab9
76 changed files with 1125 additions and 1065 deletions
|
@ -23,14 +23,15 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:paddingRight="@dimen/candidate_padding"
|
|
||||||
>
|
>
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/candidate_divider"
|
android:id="@+id/candidate_divider"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:src="@drawable/keyboard_suggest_strip_divider"
|
android:src="@drawable/keyboard_suggest_strip_divider"
|
||||||
android:visibility="gone"
|
android:paddingRight="@dimen/candidate_padding"
|
||||||
|
android:paddingLeft="@dimen/candidate_padding"
|
||||||
|
android:visibility="invisible"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:clickable="false"
|
android:clickable="false"
|
||||||
android:gravity="center_vertical|center_horizontal" />
|
android:gravity="center_vertical|center_horizontal" />
|
||||||
|
@ -44,8 +45,7 @@
|
||||||
android:background="@drawable/btn_candidate_holo"
|
android:background="@drawable/btn_candidate_holo"
|
||||||
android:focusable="true"
|
android:focusable="true"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:gravity="center_vertical|center_horizontal"
|
android:gravity="center_vertical|center_horizontal" />
|
||||||
android:paddingLeft="@dimen/candidate_padding" />
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/candidate_debug_info"
|
android:id="@+id/candidate_debug_info"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|
|
@ -23,14 +23,15 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:paddingRight="@dimen/candidate_padding"
|
|
||||||
>
|
>
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/candidate_divider"
|
android:id="@+id/candidate_divider"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:src="@drawable/keyboard_suggest_strip_divider"
|
android:src="@drawable/keyboard_suggest_strip_divider"
|
||||||
android:visibility="gone"
|
android:paddingRight="@dimen/candidate_padding"
|
||||||
|
android:paddingLeft="@dimen/candidate_padding"
|
||||||
|
android:visibility="invisible"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:clickable="false"
|
android:clickable="false"
|
||||||
android:gravity="center_vertical|center_horizontal" />
|
android:gravity="center_vertical|center_horizontal" />
|
||||||
|
@ -44,8 +45,7 @@
|
||||||
android:background="@drawable/btn_candidate"
|
android:background="@drawable/btn_candidate"
|
||||||
android:focusable="true"
|
android:focusable="true"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:gravity="center_vertical|center_horizontal"
|
android:gravity="center_vertical|center_horizontal" />
|
||||||
android:paddingLeft="@dimen/candidate_padding" />
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/candidate_debug_info"
|
android:id="@+id/candidate_debug_info"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<com.android.inputmethod.keyboard.LatinKeyboardView
|
<com.android.inputmethod.keyboard.LatinKeyboardView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/LatinkeyboardBaseView"
|
android:id="@+id/latin_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<com.android.inputmethod.keyboard.LatinKeyboardView
|
<com.android.inputmethod.keyboard.LatinKeyboardView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/LatinkeyboardBaseView"
|
android:id="@+id/latin_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<com.android.inputmethod.keyboard.LatinKeyboardView
|
<com.android.inputmethod.keyboard.LatinKeyboardView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/LatinkeyboardBaseView"
|
android:id="@+id/latin_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<com.android.inputmethod.keyboard.LatinKeyboardView
|
<com.android.inputmethod.keyboard.LatinKeyboardView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/LatinkeyboardBaseView"
|
android:id="@+id/latin_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<com.android.inputmethod.keyboard.LatinKeyboardView
|
<com.android.inputmethod.keyboard.LatinKeyboardView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/LatinkeyboardBaseView"
|
android:id="@+id/latin_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<com.android.inputmethod.keyboard.LatinKeyboardView
|
<com.android.inputmethod.keyboard.LatinKeyboardView
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/LatinkeyboardBaseView"
|
android:id="@+id/latin_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -26,9 +26,9 @@
|
||||||
android:paddingLeft="@dimen/mini_keyboard_horizontal_padding"
|
android:paddingLeft="@dimen/mini_keyboard_horizontal_padding"
|
||||||
android:paddingRight="@dimen/mini_keyboard_horizontal_padding"
|
android:paddingRight="@dimen/mini_keyboard_horizontal_padding"
|
||||||
>
|
>
|
||||||
<com.android.inputmethod.keyboard.KeyboardView
|
<com.android.inputmethod.keyboard.PopupMiniKeyboardView
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/KeyboardView"
|
android:id="@+id/mini_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -26,9 +26,9 @@
|
||||||
android:paddingLeft="@dimen/mini_keyboard_horizontal_padding_holo"
|
android:paddingLeft="@dimen/mini_keyboard_horizontal_padding_holo"
|
||||||
android:paddingRight="@dimen/mini_keyboard_horizontal_padding_holo"
|
android:paddingRight="@dimen/mini_keyboard_horizontal_padding_holo"
|
||||||
>
|
>
|
||||||
<com.android.inputmethod.keyboard.KeyboardView
|
<com.android.inputmethod.keyboard.PopupMiniKeyboardView
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/KeyboardView"
|
android:id="@+id/mini_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -25,9 +25,9 @@
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:background="@drawable/keyboard_popup_panel_background"
|
android:background="@drawable/keyboard_popup_panel_background"
|
||||||
>
|
>
|
||||||
<com.android.inputmethod.keyboard.KeyboardView
|
<com.android.inputmethod.keyboard.PopupMiniKeyboardView
|
||||||
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
android:id="@+id/KeyboardView"
|
android:id="@+id/mini_keyboard_view"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"صوت عند الضغط على مفتاح"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"صوت عند الضغط على مفتاح"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"انبثاق عند الضغط على المفاتيح"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"انبثاق عند الضغط على المفاتيح"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"عام"</string>
|
<string name="general_category" msgid="1859088467017573195">"عام"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"تصحيح النص"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"الاقتراحات بناءً على الكلمات السابقة"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"خيارات أخرى"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"استخدام الأحرف الكبيرة تلقائيًا"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"استخدام الأحرف الكبيرة تلقائيًا"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"إصلاحات سريعة"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"إصلاحات سريعة"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"تصحيح الأخطاء المكتوبة الشائعة"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"تصحيح الأخطاء المكتوبة الشائعة"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"عرض دومًا"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"عرض دومًا"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"عرض في وضع رأسي"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"عرض في وضع رأسي"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"إخفاء دومًا"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"إخفاء دومًا"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"استخدام مفتاح المسافة لتبديل اللغة"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"عرض مفتاح الإعدادات"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"عرض مفتاح الإعدادات"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"تلقائي"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"تلقائي"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"إظهار بشكل دائم"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"إظهار بشكل دائم"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"إيقاف"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"إيقاف"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"معتدل"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"معتدل"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"حاد"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"حاد"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"اقتراحات ثنائية"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"اقتراحات ثنائية"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"استخدام الكلمة السابقة لتحسين الاقتراح"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"استخدام الكلمة السابقة لتحسين الاقتراح"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"التنبؤ الثنائي"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"استخدام الكلمة السابقة أيضًا للتنبؤ"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : تم الحفظ"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : تم الحفظ"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"تنفيذ"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"تنفيذ"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"التالي"</string>
|
<string name="label_next_key" msgid="362972844525672568">"التالي"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натискане на клавиш"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натискане на клавиш"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Изскачащ прозорец при натискане на клавиш"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Изскачащ прозорец при натискане на клавиш"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Общи"</string>
|
<string name="general_category" msgid="1859088467017573195">"Общи"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Корекция на текста"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Предложения въз на основа на предишни думи"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Други опции"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Автоматично поставяне на главни букви"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Автоматично поставяне на главни букви"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Бързи корекции"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Бързи корекции"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Коригира най-честите грешки при въвеждане"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Коригира най-честите грешки при въвеждане"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Винаги да се показва"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Винаги да се показва"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Показване с вертикална ориентация"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Показване с вертикална ориентация"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Винаги да се скрива"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Винаги да се скрива"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Клавишът интервал да превкл. езика"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Показване на клавиша за настройки"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Показване на клавиша за настройки"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Автоматично"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Автоматично"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Да се показва винаги"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Да се показва винаги"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Изкл."</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Изкл."</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умерено"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умерено"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Агресивно"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Агресивно"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Предложения за биграми"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Предложения за биграми"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Използване на предишната дума за подобряване на предложението"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Използване на предишната дума за подобряване на предложението"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Предвиждане за биграми"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Използване на предишната дума и за предвиждане"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Запазено"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Запазено"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Старт"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Старт"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Напред"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Напред"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"So en prémer una tecla"</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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Finestra emergent en prémer un botó"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Correcció de text"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Suggeriments basats en paraules anteriors"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Altres opcions"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Majúscules automàtiques"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Majúscules automàtiques"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Correccions ràpides"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Correccions ràpides"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corregeix els errors d\'ortografia habituals"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corregeix els errors d\'ortografia habituals"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostra sempre"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostra sempre"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostra en mode vertical"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostra en mode vertical"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Amaga sempre"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Amaga sempre"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Utilitza el canvi d\'idioma amb la barra espaiadora"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostra la tecla de configuració"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostra la tecla de configuració"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automàtic"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automàtic"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostra sempre"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostra sempre"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desactiva"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desactiva"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderada"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderada"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Total"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Total"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Suggeriments Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Suggeriments Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilitza la paraula anterior per millorar el suggeriment"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilitza la paraula anterior per millorar el suggeriment"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Predicció Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Utilitza la paraula anterior per a la predicció també"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: desada"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: desada"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Vés"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Vés"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Següent"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Següent"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk při stisku klávesy"</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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Zobrazit znaky při stisku klávesy"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Obecné"</string>
|
<string name="general_category" msgid="1859088467017573195">"Obecné"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Oprava textu"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Návrhy na základě předchozích slov"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Další možnosti"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Velká písmena automaticky"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Velká písmena automaticky"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Rychlé opravy"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Rychlé opravy"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Opravuje nejčastější chyby při psaní"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Opravuje nejčastější chyby při psaní"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vždy zobrazovat"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vždy zobrazovat"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Zobrazit v režimu na výšku"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Zobrazit v režimu na výšku"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vždy skrývat"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vždy skrývat"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Přepínání jazyků mezerníkem"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Zobrazit klávesu Nastavení"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Zobrazit klávesu Nastavení"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automaticky"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automaticky"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vždy zobrazovat"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vždy zobrazovat"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Vypnuto"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Vypnuto"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mírné"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mírné"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivní"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivní"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Návrh Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Návrhy Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Použít předchozí slovo ke zlepšení návrhu"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Použít předchozí slovo ke zlepšení návrhu"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Odhady Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Použít předchozí slovo také pro odhad"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: Uloženo"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: Uloženo"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Přejít"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Přejít"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Další"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Další"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Lyd 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Popup ved tastetryk"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Generelt"</string>
|
<string name="general_category" msgid="1859088467017573195">"Generelt"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Tekstkorrigering"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Forslag baseret på tidligere ord"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Andre valgmuligheder"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Skriv aut. med stort"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Skriv aut. med stort"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Hurtige løsninger"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Hurtige løsninger"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Retter almindelige stavefejl"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Retter almindelige stavefejl"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vis altid"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vis altid"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Vis i portrættilstand"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Vis i portrættilstand"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Skjul altid"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Skjul altid"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Brug mellemrumst. som sprogskifter"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Vis indstillingsnøgle"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Vis indstillingsnøgle"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisk"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisk"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vis altid"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vis altid"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Fra"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Fra"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Beskeden"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Beskeden"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Aggressiv"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Aggressiv"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram-forslag"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram-forslag"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Brug forrige ord for at forbedre forslag"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Brug forrige ord for at forbedre forslag"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram-forudsigelse"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Brug også tidligere ord til forudsigelse"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: Gemt"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: Gemt"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Gå"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Gå"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Næste"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Næste"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Ton bei 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Pop-up bei Tastendruck"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Allgemein"</string>
|
<string name="general_category" msgid="1859088467017573195">"Allgemein"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Textkorrektur"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Vorschläge basieren auf bisherigen Wörtern"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Sonstige Optionen"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Autom. Groß-/Kleinschr."</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Autom. Groß-/Kleinschr."</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Quick Fixes"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Quick Fixes"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Korrigiert gängige Tippfehler"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Korrigiert gängige Tippfehler"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Immer anzeigen"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Immer anzeigen"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Im Hochformat anzeigen"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Im Hochformat anzeigen"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Immer ausblenden"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Immer ausblenden"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Sprache mit Leertaste ändern"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Einstellungstaste anz."</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Einstellungstaste anz."</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisch"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisch"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Immer anzeigen"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Immer anzeigen"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Aus"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Aus"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mäßig"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mäßig"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Stark"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Stark"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigramm-Vorschläge"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigramm-Vorschläge"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Zur Verbesserung des Vorschlags vorheriges Wort verwenden"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Zur Verbesserung des Vorschlags vorheriges Wort verwenden"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigramm-Vervollständigung"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Vorheriges Wort auch für Vervollständigung verwenden"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: gespeichert"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: gespeichert"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Los"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Los"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Weiter"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Weiter"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Ήχος κατά το πάτημα πλήκτρων"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Ήχος κατά το πάτημα πλήκτρων"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Εμφάνιση με το πάτημα πλήκτρου"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Εμφάνιση με το πάτημα πλήκτρου"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Γενικά"</string>
|
<string name="general_category" msgid="1859088467017573195">"Γενικά"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Διόρθωση κειμένου"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Προτάσεις που βασίζονται σε προηγούμενες λέξεις"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Άλλες επιλογές"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Αυτόματη χρήση κεφαλαίων"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Αυτόματη χρήση κεφαλαίων"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Γρήγορες διορθώσεις"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Γρήγορες διορθώσεις"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Διορθώνει συνηθισμένα λάθη πληκτρολόγησης"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Διορθώνει συνηθισμένα λάθη πληκτρολόγησης"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Να εμφανίζεται πάντα"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Να εμφανίζεται πάντα"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Εμφάνιση σε λειτουργία κατακόρυφης προβολής"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Εμφάνιση σε λειτουργία κατακόρυφης προβολής"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Πάντα απόκρυψη"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Πάντα απόκρυψη"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Χρησιμοποιήστε τη δυνατότητα εναλλαγής γλώσσας του πλήκτρου διαστήματος"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Εμφάνιση πλήκτρου ρυθμίσεων"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Εμφάνιση πλήκτρου ρυθμίσεων"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Αυτόματο"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Αυτόματο"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Να εμφανίζεται πάντα"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Να εμφανίζεται πάντα"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Απενεργοποίηση"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Απενεργοποίηση"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Μέτρια"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Μέτρια"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Υψηλή"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Υψηλή"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Προτάσεις bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Προτάσεις bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Χρήση προηγούμενης λέξης για τη βελτίωση πρότασης"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Χρήση προηγούμενης λέξης για τη βελτίωση πρότασης"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Πρόβλεψη bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Χρησιμοποιήστε, επίσης, την προηγούμενη λέξη για πρόβλεψη"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Αποθηκεύτηκε"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Αποθηκεύτηκε"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Μετ."</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Μετ."</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Επόμενο"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Επόμενο"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Sound on key-press"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Sound on key-press"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Pop-up on key press"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Pop-up on key press"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Text correction"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Suggestions based on previous words"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Other Options"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Auto-capitalisation"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Auto-capitalisation"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Quick fixes"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Quick fixes"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrects commonly typed mistakes"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrects commonly typed mistakes"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Always show"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Always show"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Show on portrait mode"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Show on portrait mode"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Always hide"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Always hide"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Use the spacebar language switcher"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Show settings key"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Show settings key"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatic"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatic"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Always show"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Always show"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Off"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Off"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Modest"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Modest"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Aggressive"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Aggressive"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram Suggestions"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram Suggestions"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Use previous word to improve suggestion"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Use previous word to improve suggestion"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram prediction"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Use previous word also for prediction"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Saved"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Saved"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Go"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Go"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Next"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Next"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Sonar al pulsar las teclas"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Sonar al pulsar las teclas"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Aviso emergente al pulsar tecla"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Aviso emergente al pulsar tecla"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Corrección de texto"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Sugerencias sobre la base de palabras anteriores"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Otras opciones"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Mayúsculas automáticas"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Mayúsculas automáticas"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Arreglos rápidos"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Arreglos rápidos"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige errores de escritura comunes"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige errores de escritura comunes"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostrar siempre"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostrar siempre"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostrar en modo retrato"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostrar en modo retrato"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Ocultar siempre"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Ocultar siempre"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Usa select. de id. de barra espac."</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostrar tecla de configuración"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostrar tecla de configuración"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automático"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automático"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostrar siempre"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostrar siempre"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desactivado"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desactivado"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderado"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderado"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Total"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Total"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Sugerencias de bigramas"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Sugerencias de bigramas"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utiliza la palabra anterior para mejorar la sugerencia"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utiliza la palabra anterior para mejorar la sugerencia"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Predicción de biagramas"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Usar la palabra anterior también para predicción."</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: guardada"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: guardada"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Ir"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Ir"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Siguiente"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Siguiente"</string>
|
||||||
|
|
|
@ -101,11 +101,11 @@
|
||||||
<string name="ok" msgid="7898366843681727667">"Aceptar"</string>
|
<string name="ok" msgid="7898366843681727667">"Aceptar"</string>
|
||||||
<string name="voice_input" msgid="2466640768843347841">"Introducción de voz"</string>
|
<string name="voice_input" msgid="2466640768843347841">"Introducción de voz"</string>
|
||||||
<string name="voice_input_modes_main_keyboard" msgid="3360660341121083174">"En teclado principal"</string>
|
<string name="voice_input_modes_main_keyboard" msgid="3360660341121083174">"En teclado principal"</string>
|
||||||
<string name="voice_input_modes_symbols_keyboard" msgid="7203213240786084067">"En teclado símbolos"</string>
|
<string name="voice_input_modes_symbols_keyboard" msgid="7203213240786084067">"En teclado de símbolos"</string>
|
||||||
<string name="voice_input_modes_off" msgid="3745699748218082014">"Desactivada"</string>
|
<string name="voice_input_modes_off" msgid="3745699748218082014">"Desactivada"</string>
|
||||||
<string name="voice_input_modes_summary_main_keyboard" msgid="6586544292900314339">"Micro en tecl princ"</string>
|
<string name="voice_input_modes_summary_main_keyboard" msgid="6586544292900314339">"Micro en teclado principal"</string>
|
||||||
<string name="voice_input_modes_summary_symbols_keyboard" msgid="5233725927281932391">"Micro en tecl símb"</string>
|
<string name="voice_input_modes_summary_symbols_keyboard" msgid="5233725927281932391">"Micro en teclado de símbolos"</string>
|
||||||
<string name="voice_input_modes_summary_off" msgid="63875609591897607">"Entrada de voz inhab"</string>
|
<string name="voice_input_modes_summary_off" msgid="63875609591897607">"Entrada de voz inhabilitada"</string>
|
||||||
<string name="selectInputMethod" msgid="315076553378705821">"Seleccionar método de introducción de texto"</string>
|
<string name="selectInputMethod" msgid="315076553378705821">"Seleccionar método de introducción de texto"</string>
|
||||||
<string name="language_selection_title" msgid="1651299598555326750">"Idiomas"</string>
|
<string name="language_selection_title" msgid="1651299598555326750">"Idiomas"</string>
|
||||||
<string name="language_selection_summary" msgid="187110938289512256">"Deslizar el dedo por la barra espaciadora para cambiar el idioma"</string>
|
<string name="language_selection_summary" msgid="187110938289512256">"Deslizar el dedo por la barra espaciadora para cambiar el idioma"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"صدا با فشار کلید"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"صدا با فشار کلید"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"بازشو با فشار کلید"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"بازشو با فشار کلید"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"کلی"</string>
|
<string name="general_category" msgid="1859088467017573195">"کلی"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"تصحیح متن"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"پیشنهادهایی بر اساس کلمه های قبلی"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"سایر گزینه ها"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"نوشتن با حروف بزرگ خودکار"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"نوشتن با حروف بزرگ خودکار"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"راه حل های سریع"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"راه حل های سریع"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"تصحیح خطاهای تایپی رایج"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"تصحیح خطاهای تایپی رایج"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"همیشه نمایش داده شود"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"همیشه نمایش داده شود"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"نمایش در حالت عمودی"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"نمایش در حالت عمودی"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"همیشه پنهان شود"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"همیشه پنهان شود"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"از ویژگی تعویض زبان کلید فاصله استفاده شود"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"نمایش کلید تنظیمات"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"نمایش کلید تنظیمات"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"خودکار"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"خودکار"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"همیشه نمایش"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"همیشه نمایش"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"خاموش"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"خاموش"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"متوسط"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"متوسط"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"فعال"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"فعال"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"پیشنهادات بیگرام"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"پیشنهادهای Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"برای بهبود پیشنهاد از کلمه قبلی استفاده شود"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"برای بهبود پیشنهاد از کلمه قبلی استفاده شود"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"پیش بینی Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"استفاده از کلمه قبلی برای پیش بینی"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : ذخیره شد"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : ذخیره شد"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"برو"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"برو"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"بعدی"</string>
|
<string name="label_next_key" msgid="362972844525672568">"بعدی"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Toista ääni 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Ponnahdusikkuna painalluksella"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Yleinen"</string>
|
<string name="general_category" msgid="1859088467017573195">"Yleinen"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Tekstin korjaus"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Aiempiin sanoihin perustuvat ehdotukset"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Muut vaihtoehdot"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Automaattiset isot kirjaimet"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Automaattiset isot kirjaimet"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Pikakorjaukset"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Pikakorjaukset"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Korjaa yleiset kirjoitusvirheet"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Korjaa yleiset kirjoitusvirheet"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Näytä aina"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Näytä aina"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Näytä pystysuunnassa"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Näytä pystysuunnassa"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Piilota aina"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Piilota aina"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Vaihda kieli välil."</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Näytä asetukset-näppäin"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Näytä asetukset-näppäin"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automaattinen"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automaattinen"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Näytä aina"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Näytä aina"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Älä käytä"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Älä käytä"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Osittainen"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Osittainen"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Täysi"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Täysi"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram-ehdotukset"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram-ehdotukset"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Paranna ehdotusta aiemman sanan avulla"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Paranna ehdotusta aiemman sanan avulla"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram-ennakointi"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Käytä edellistä sanaa myös ennakointiin"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Tallennettu"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Tallennettu"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Siirry"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Siirry"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Seuraava"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Seuraava"</string>
|
||||||
|
|
|
@ -18,8 +18,12 @@
|
||||||
*/
|
*/
|
||||||
-->
|
-->
|
||||||
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||||
<!-- Symbols that are commonly considered word separators in this language -->
|
<!-- Symbols that should be swapped with a magic space -->
|
||||||
<string name="word_separators">.\u0009\u0020,;:!?\n()[]*&@{}/<>_+=|\u0022</string>
|
<string name="magic_space_swapping_symbols">.,\u0022)]}</string>
|
||||||
<!-- Symbols that are sentence separators, for purposes of making it hug the last sentence. -->
|
<!-- Symbols that should strip a magic space -->
|
||||||
<string name="sentence_separators">.,</string>
|
<string name="magic_space_stripping_symbols">\u0009\u0020\u0027\n-/_</string>
|
||||||
|
<!-- Symbols that should promote magic spaces into real space -->
|
||||||
|
<string name="magic_space_promoting_symbols">;:!?([*&@{<>+=|</string>
|
||||||
|
<!-- Symbols that do NOT separate words -->
|
||||||
|
<string name="non_word_separator_symbols">\u0027</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Son à 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Agrandir les caractères"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Général"</string>
|
<string name="general_category" msgid="1859088467017573195">"Général"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Correction du texte"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Suggestions basées sur les mots précédents"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Autres options"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Majuscules auto"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Majuscules auto"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Corrections rapides"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Corrections rapides"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige les fautes de frappe courantes"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige les fautes de frappe courantes"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Toujours afficher"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Toujours afficher"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Afficher en mode Portrait"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Afficher en mode Portrait"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Toujours masquer"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Toujours masquer"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Sélecteur langue barre d\'espace"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Afficher touche param."</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Afficher touche param."</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatique"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatique"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Toujours afficher"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Toujours afficher"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Désactiver"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Désactiver"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Simple"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Simple"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Proactive"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Proactive"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Suggestions de type bigramme"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Suggestions de type bigramme"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Améliorer la suggestion en fonction du mot précédent"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Améliorer la suggestion en fonction du mot précédent"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Prédiction bigramme"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Utiliser le mot précédent pour la prédiction"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : enregistré"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : enregistré"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"OK"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"OK"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Suivant"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Suivant"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk pri pritisku tipke"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk pri pritisku tipke"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Povećanja na pritisak tipke"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Povećanja na pritisak tipke"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Općenito"</string>
|
<string name="general_category" msgid="1859088467017573195">"Općenito"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Ispravak teksta"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Prijedlozi na temelju prethodnih riječi"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Ostale opcije"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Automatsko pisanje velikih slova"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Automatsko pisanje velikih slova"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Brzi popravci"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Brzi popravci"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Ispravlja uobičajene pogreške u pisanju"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Ispravlja uobičajene pogreške u pisanju"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Uvijek prikaži"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Uvijek prikaži"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Prikaži u portretnom načinu"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Prikaži u portretnom načinu"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Uvijek sakrij"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Uvijek sakrij"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Koristite razmaknicu za prebacivanje jezika"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Prikaži tipku postavki"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Prikaži tipku postavki"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatski"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatski"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Uvijek prikaži"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Uvijek prikaži"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Isključeno"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Isključeno"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Skromno"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Skromno"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivno"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivno"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram prijedlozi"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram prijedlozi"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Upotrijebi prethodnu riječ radi poboljšanja prijedloga"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Upotrijebi prethodnu riječ radi poboljšanja prijedloga"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram predviđanje"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Koristite prethodnu riječ i za predviđanje"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Spremljeno"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Spremljeno"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Idi"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Idi"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Dalje"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Dalje"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Hangjelzé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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Legyen nagyobb billentyű lenyomásakor"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Általános"</string>
|
<string name="general_category" msgid="1859088467017573195">"Általános"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Szövegjavítás"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Javaslatok korábbi szavak alapján"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Egyéb beállítások"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Automatikusan nagy kezdőbetű"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Automatikusan nagy kezdőbetű"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Gyorsjavítások"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Gyorsjavítások"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Kijavítja a gyakori gépelési hibákat"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Kijavítja a gyakori gépelési hibákat"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mindig látszik"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mindig látszik"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Megjelenítés álló tájolásban"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Megjelenítés álló tájolásban"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Mindig rejtve"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Mindig rejtve"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Nyelvváltó: szóköz"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Beállítások billentyű megjelenítése"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Beállítások billentyű megjelenítése"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatikus"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatikus"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mindig látszik"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mindig látszik"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Ki"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Ki"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mérsékelt"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mérsékelt"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresszív"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresszív"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram javaslatok"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram javaslatok"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Előző szó használata a javaslatok javításához"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Előző szó használata a javaslatok javításához"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram előrejelzés"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Az előző szó használata a prediktív bevitelhez is"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : mentve"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : mentve"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Ugrás"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Ugrás"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Tovább"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Tovább"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Berbunyi 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Muncul saat tombol ditekan"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Umum"</string>
|
<string name="general_category" msgid="1859088467017573195">"Umum"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Koreksi teks"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Saran berdasarkan kata sebelumnya"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Opsi lain"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Kapitalisasi otomatis"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Kapitalisasi otomatis"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Perbaikan cepat"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Perbaikan cepat"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Memperbaiki kesalahan ketik umum"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Memperbaiki kesalahan ketik umum"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Selalu tampilkan"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Selalu tampilkan"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Tampilkan pada mode potret"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Tampilkan pada mode potret"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Selalu sembunyikan"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Selalu sembunyikan"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Gunakan pengalih bahasa bilah spasi"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Lihat tombol setelan"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Lihat tombol setelan"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Otomatis"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Otomatis"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Selalu tampilkan"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Selalu tampilkan"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Mati"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Mati"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Sederhana"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Sederhana"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresif"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresif"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Saran Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Saran bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Gunakan kata sebelumnya untuk meningkatkan sara"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Gunakan kata sebelumnya untuk meningkatkan sara"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Prediksi bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Gunakan kata sebelumnya juga untuk prediksi"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Telah disimpan"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Telah disimpan"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Buka"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Buka"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Berikutnya"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Berikutnya"</string>
|
||||||
|
|
|
@ -18,6 +18,6 @@
|
||||||
*/
|
*/
|
||||||
-->
|
-->
|
||||||
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||||
<!-- Symbols that are commonly considered word separators in this language -->
|
<!-- Symbols that do NOT separate words -->
|
||||||
<string name="word_separators">.\u0009\u0020,;:!?\'\n()[]*&@{}/<>_+=|\u0022</string>
|
<string name="non_word_separator_symbols"></string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Suono tasti"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Suono tasti"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Popup sui tasti"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Popup sui tasti"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Generali"</string>
|
<string name="general_category" msgid="1859088467017573195">"Generali"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Correzione testo"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Suggerimenti in base alle parole precedenti"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Altre opzioni"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Maiuscole automatiche"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Maiuscole automatiche"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Correzioni veloci"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Correzioni veloci"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corregge gli errori di digitazione più comuni"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corregge gli errori di digitazione più comuni"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostra sempre"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostra sempre"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostra in modalità verticale"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostra in modalità verticale"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Nascondi sempre"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Nascondi sempre"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Selettore lingua da barra spaziatrice"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostra tasto impostaz."</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostra tasto impostaz."</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatico"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatico"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostra sempre"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostra sempre"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Off"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Off"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Media"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Media"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Massima"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Massima"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Suggerimenti sui bigrammi"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Suggerimenti sui bigrammi"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilizza parola precedente per migliorare il suggerimento"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilizza parola precedente per migliorare il suggerimento"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Previsione bigramma"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Usa anche la parola precedente per la previsione"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : parola salvata"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : parola salvata"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Vai"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Vai"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Avanti"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Avanti"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"צלילים עם לחיצה על מקשים"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"צלילים עם לחיצה על מקשים"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"חלון קופץ עם לחיצה על מקשים"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"חלון קופץ עם לחיצה על מקשים"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"כללי"</string>
|
<string name="general_category" msgid="1859088467017573195">"כללי"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"תיקון טקסט"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"הצעות המבוססות על מילים קודמות"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"אפשרויות אחרות"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"הפיכה אוטומטית של אותיות לרישיות"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"הפיכה אוטומטית של אותיות לרישיות"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"תיקונים מהירים"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"תיקונים מהירים"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"מתקן שגיאות הקלדה נפוצות"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"מתקן שגיאות הקלדה נפוצות"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"הצג תמיד"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"הצג תמיד"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"הצג בפריסה לאורך"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"הצג בפריסה לאורך"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"הסתר תמיד"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"הסתר תמיד"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"השתמש במחליף השפה שבמקש הרווח"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"הצג מקש הגדרות"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"הצג מקש הגדרות"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"אוטומטי"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"אוטומטי"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"הצג תמיד"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"הצג תמיד"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"כבוי"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"כבוי"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"מצומצם"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"מצומצם"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"מחמיר"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"מחמיר"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"הצעות של צמדי אותיות (Bigram)"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"הצעות של צמדי אותיות (Bigram)"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"השתמש במילה הקודמת כדי לשפר את ההצעה"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"השתמש במילה הקודמת כדי לשפר את ההצעה"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"חיזוי צמדי אותיות (Bigram)"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"השתמש במילה הקודמת גם עבור חיזוי"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : נשמרה"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : נשמרה"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"בצע"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"בצע"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"הבא"</string>
|
<string name="label_next_key" msgid="362972844525672568">"הבא"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"キー操作音"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"キー操作音"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"キー押下時ポップアップ"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"キー押下時ポップアップ"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"全般"</string>
|
<string name="general_category" msgid="1859088467017573195">"全般"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"テキストの修正"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"前の語句に基づいた入力候補表示"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"他のオプション"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"自動大文字変換"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"自動大文字変換"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"クイックフィックス"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"クイックフィックス"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"よくある誤字・脱字を修正します"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"よくある誤字・脱字を修正します"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"常に表示"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"常に表示"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"縦向きで表示"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"縦向きで表示"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"常に非表示"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"常に非表示"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"スペースバーで切替"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"設定キーを表示"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"設定キーを表示"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"自動"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"自動"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"常に表示"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"常に表示"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"OFF"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"OFF"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"中"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"中"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"強"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"強"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"バイグラム入力候補表示"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"バイグラム入力候補表示"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"直前の単語から入力候補を予測します"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"直前の単語から入力候補を予測します"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"バイグラム予測"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"前の語句も予測に使用"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>:保存しました"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>:保存しました"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"実行"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"実行"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"次へ"</string>
|
<string name="label_next_key" msgid="362972844525672568">"次へ"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"키를 누를 때 소리 발생"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"키를 누를 때 소리 발생"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"키를 누를 때 팝업"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"키를 누를 때 팝업"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"일반"</string>
|
<string name="general_category" msgid="1859088467017573195">"일반"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"텍스트 수정"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"이전 단어에 기반한 추천"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"기타 옵션"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"자동 대문자화"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"자동 대문자화"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"빠른 수정"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"빠른 수정"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"자주 발생하는 오타를 수정합니다."</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"자주 발생하는 오타를 수정합니다."</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"항상 표시"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"항상 표시"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"세로 모드로 표시"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"세로 모드로 표시"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"항상 숨기기"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"항상 숨기기"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"스페이스 바 언어 교환기 사용"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"설정 키 표시"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"설정 키 표시"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"자동"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"자동"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"항상 표시"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"항상 표시"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"사용 안함"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"사용 안함"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"보통"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"보통"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"적극적"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"적극적"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram 추천"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram 추천"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"이전 단어를 사용하여 추천 기능 개선"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"이전 단어를 사용하여 추천 기능 개선"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram 예측"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"이전 단어를 사용하여 예상 검색어를 표시합니다."</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: 저장됨"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: 저장됨"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"이동"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"이동"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"다음"</string>
|
<string name="label_next_key" msgid="362972844525672568">"다음"</string>
|
||||||
|
|
|
@ -19,12 +19,12 @@
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<resources>
|
<resources>
|
||||||
<!-- keyboardHeight = key_height*4 + key_bottom_gap*3 -->
|
<!-- keyboardHeight = key_height*4 + key_bottom_gap*3, key_height=0.260in -->
|
||||||
<dimen name="keyboardHeight">1.060in</dimen>
|
<dimen name="keyboardHeight">1.100in</dimen>
|
||||||
<!-- key_height + key_bottom_gap = popup_key_height -->
|
<!-- key_height + key_bottom_gap = popup_key_height -->
|
||||||
<!-- <dimen name="key_height">0.250in</dimen>-->
|
<!-- <dimen name="key_height">0.260in</dimen>-->
|
||||||
<dimen name="key_bottom_gap">0.020in</dimen>
|
<dimen name="key_bottom_gap">0.020in</dimen>
|
||||||
<dimen name="popup_key_height">0.270in</dimen>
|
<dimen name="popup_key_height">0.280in</dimen>
|
||||||
<dimen name="keyboard_top_padding">0.0in</dimen>
|
<dimen name="keyboard_top_padding">0.0in</dimen>
|
||||||
<dimen name="keyboard_bottom_padding">0.0in</dimen>
|
<dimen name="keyboard_bottom_padding">0.0in</dimen>
|
||||||
<dimen name="keyboard_horizontal_edges_padding">0.0in</dimen>
|
<dimen name="keyboard_horizontal_edges_padding">0.0in</dimen>
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
<dimen name="spacebar_vertical_correction">2dip</dimen>
|
<dimen name="spacebar_vertical_correction">2dip</dimen>
|
||||||
<!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. -->
|
<!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. -->
|
||||||
<!-- popup_key_height x 1.2 -->
|
<!-- popup_key_height x 1.2 -->
|
||||||
<dimen name="mini_keyboard_slide_allowance">0.324in</dimen>
|
<dimen name="mini_keyboard_slide_allowance">0.336in</dimen>
|
||||||
<!-- popup_key_height x -1.0 -->
|
<!-- popup_key_height x -1.0 -->
|
||||||
<dimen name="mini_keyboard_vertical_correction">-0.270in</dimen>
|
<dimen name="mini_keyboard_vertical_correction">-0.280in</dimen>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Klavišo paspaudimo garsas"</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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Iššoka paspaudus klavišą"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Bendra"</string>
|
<string name="general_category" msgid="1859088467017573195">"Bendra"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Teksto taisymas"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Pasiūlymai pagal ankstesnius žodžius"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Kitos parinktys"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Automatinis didžiųjų raidžių rašymas"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Automatinis didžiųjų raidžių rašymas"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Greiti pataisymai"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Greiti pataisymai"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Taiso dažnai padarytas rašybos klaidas"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Taiso dažnai padarytas rašybos klaidas"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Visada rodyti"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Visada rodyti"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Rodyti stačiuoju režimu"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Rodyti stačiuoju režimu"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Visada slėpti"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Visada slėpti"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Naud. tarpo kl. k. jung."</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Rodyti nustatymų raktą"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Rodyti nustatymų raktą"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatinis"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatinis"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Visada rodyti"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Visada rodyti"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Išjungta"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Išjungta"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Vidutinis"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Vidutinis"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Atkaklus"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Atkaklus"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigramų pasiūlymai"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigramų pasiūlymai"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Naudoti ankstesnį žodį pasiūlymui patobulinti"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Naudoti ankstesnį žodį pasiūlymui patobulinti"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigramų numatymas"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Numatant naudoti ir ankstesnį žodį"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: išsaugota"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: išsaugota"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Pradėti"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Pradėti"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Kitas"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Kitas"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Skaņa, 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Nospiežot taustiņu, parādīt uznirstošo izvēlni"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Vispārīgi"</string>
|
<string name="general_category" msgid="1859088467017573195">"Vispārīgi"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Teksta korekcija"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Ieteikumi, pamatojoties uz iepriekšējiem vārdiem"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Citas opcijas"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Automātiska lielo burtu lietošana"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Automātiska lielo burtu lietošana"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Ātrie labojumi"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Ātrie labojumi"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Nodrošina izplatītu drukas kļūdu labošanu."</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Nodrošina izplatītu drukas kļūdu labošanu."</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vienmēr rādīt"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vienmēr rādīt"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Rādīt portreta režīmā"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Rādīt portreta režīmā"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vienmēr slēpt"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vienmēr slēpt"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Izmantot atstarpēšanas taustiņu, lai pārslēgtu valodu"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Rādīt iestatījumu taustiņu"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Rādīt iestatījumu taustiņu"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automātiski"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automātiski"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vienmēr rādīt"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vienmēr rādīt"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Izslēgta"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Izslēgta"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mērena"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mērena"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresīva"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresīva"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram ieteikumi"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigrammu ieteikumi"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Ieteikuma uzlabošanai izmantot iepriekšējo vārdu"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Ieteikuma uzlabošanai izmantot iepriekšējo vārdu"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigrammu prognozes"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Izmantot iepriekšējo vārdu arī prognozēm"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: saglabāts"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: saglabāts"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Sākt"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Sākt"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Tālāk"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Tālāk"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Lyd 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Hurtigvindu ved tastetrykk"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Generelt"</string>
|
<string name="general_category" msgid="1859088467017573195">"Generelt"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Tekstkorrigering"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Forslag basert på tidligere ord"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Andre alternativer"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Stor forbokstav"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Stor forbokstav"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Autokorrektur"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Autokorrektur"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Retter vanlige stavefeil"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Retter vanlige stavefeil"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vis alltid"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vis alltid"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Vis i stående modus"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Vis i stående modus"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Skjul alltid"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Skjul alltid"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Skift språk med mellomromstasten"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Vis innstillingsnøkkel"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Vis innstillingsnøkkel"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisk"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisk"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vis alltid"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vis alltid"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Av"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Av"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderat"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderat"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Omfattende"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Omfattende"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram-forslag"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram-forslag"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Bruk forrige ord til å forbedre forslaget"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Bruk forrige ord til å forbedre forslaget"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram-prediksjon"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Bruk forrige ord også for forslag"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: Lagret"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: Lagret"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Gå"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Gå"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Neste"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Neste"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Geluid 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Pop-up bij toetsaanslag"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Algemeen"</string>
|
<string name="general_category" msgid="1859088467017573195">"Algemeen"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Tekstcorrectie"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Suggesties op basis van eerdere woorden"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Andere opties"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Auto-hoofdlettergebruik"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Auto-hoofdlettergebruik"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Snelle oplossingen"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Snelle oplossingen"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Hiermee worden veelvoorkomende typefouten gecorrigeerd"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Hiermee worden veelvoorkomende typefouten gecorrigeerd"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Altijd weergeven"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Altijd weergeven"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Weergeven in staande modus"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Weergeven in staande modus"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Altijd verbergen"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Altijd verbergen"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Taal schakelen via spatiebalk"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Instellingscode weergeven"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Instellingscode weergeven"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisch"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatisch"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Altijd weergeven"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Altijd weergeven"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Uitgeschakeld"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Uitgeschakeld"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Normaal"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Normaal"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agressief"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agressief"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Digram-suggesties"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Digram-suggesties"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Vorig woord gebruiken om suggestie te verbeteren"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Vorig woord gebruiken om suggestie te verbeteren"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Digram-voorspelling"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Het voorgaande woord ook voor voorspelling gebruiken"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: opgeslagen"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: opgeslagen"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Start"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Start"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Volgende"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Volgende"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Dźwięk przy naciśnięciu"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Dźwięk przy naciśnięciu"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Powiększ po naciśnięciu"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Powiększ po naciśnięciu"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Ogólne"</string>
|
<string name="general_category" msgid="1859088467017573195">"Ogólne"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Poprawianie tekstu"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Podpowiedzi na podstawie wcześniejszych słów"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Inne opcje"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Wstawiaj wielkie litery"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Wstawiaj wielkie litery"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Szybkie poprawki"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Szybkie poprawki"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Poprawia częste błędy wpisywania"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Poprawia częste błędy wpisywania"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Zawsze pokazuj"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Zawsze pokazuj"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Pokaż w trybie pionowym"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Pokaż w trybie pionowym"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Zawsze ukrywaj"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Zawsze ukrywaj"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Spacja przełącza język"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Pokaż klawisz ustawień"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Pokaż klawisz ustawień"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatycznie"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatycznie"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Zawsze pokazuj"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Zawsze pokazuj"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Wyłącz"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Wyłącz"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Umiarkowana"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Umiarkowana"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresywna"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresywna"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Sugestie dla bigramów"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Podpowiadanie dwuznaków"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Używaj poprzedniego wyrazu, aby polepszyć sugestię"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Używaj poprzedniego wyrazu, aby polepszyć sugestię"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Przewidywanie dwuznaków"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Przewiduj również na podstawie poprzedniego słowa"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Zapisano"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Zapisano"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"OK"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"OK"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Dalej"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Dalej"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Som ao premir 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Mostrar popup ao premir tecla"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Geral"</string>
|
<string name="general_category" msgid="1859088467017573195">"Geral"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Correção de texto"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Sugestões baseadas em palavras anteriores"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Outras opções"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Letras maiúsculas automáticas"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Letras maiúsculas automáticas"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Correcções rápidas"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Correcções rápidas"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige os erros de escrita comuns"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige os erros de escrita comuns"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostrar sempre"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostrar sempre"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostrar no modo de retrato"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostrar no modo de retrato"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Ocultar sempre"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Ocultar sempre"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Utilizar barra esp. alt. idioma"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostrar tecla das definições"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostrar tecla das definições"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automático"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automático"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostrar sempre"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostrar sempre"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desligar"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desligar"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderada"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderada"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agressiva"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agressiva"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Sugestões Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Sugestões Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilizar a palavra anterior para melhorar a sugestão"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilizar a palavra anterior para melhorar a sugestão"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Predição Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Utilizar a palavra anterior também para predição"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: guardada"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: guardada"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Ir"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Ir"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Seguinte"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Seguinte"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Som 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Exibir pop-up ao digitar"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Geral"</string>
|
<string name="general_category" msgid="1859088467017573195">"Geral"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Correção de texto"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Sugestões baseadas em palavras anteriores"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Outras opções"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Capitaliz. automática"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Capitaliz. automática"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Reparos rápidos"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Reparos rápidos"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige erros comuns de digitação"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corrige erros comuns de digitação"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostrar sempre"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Mostrar sempre"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostrar em modo retrato"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Mostrar em modo retrato"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Sempre ocultar"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Sempre ocultar"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Alt. idiomas c/ a barra"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostrar tecla de config."</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Mostrar tecla de config."</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automático"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automático"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostrar sempre"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Mostrar sempre"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desativado"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Desativado"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderado"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderado"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agressivo"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agressivo"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Sugestões de bigrama"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Sugestões de bigrama"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Usar palavra anterior para melhorar a sugestão"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Usar palavra anterior para melhorar a sugestão"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Previsão de bigrama"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Use também a palavra anterior para prever"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Salvo"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Salvo"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Ir"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Ir"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Avançar"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Avançar"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Sunet 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Fereastră pop-up la apăsarea tastei"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
<string name="general_category" msgid="1859088467017573195">"General"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Corectare text"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Sugestii bazate pe cuvinte anterioare"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Alte opţiuni"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Auto-capitalizare"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Auto-capitalizare"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Remedieri rapide"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Remedieri rapide"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corectează greşelile introduse frecvent"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Corectează greşelile introduse frecvent"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Afişaţi întotdeauna"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Afişaţi întotdeauna"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Afişaţi în modul Portret"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Afişaţi în modul Portret"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Ascundeţi întotdeauna"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Ascundeţi întotdeauna"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Sp. pt. comut. lb."</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Afişaţi tasta setări"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Afişaţi tasta setări"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automat"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automat"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Afişaţi întotdeauna"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Afişaţi întotdeauna"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Dezactivată"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Dezactivată"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderată"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Moderată"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivă"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivă"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Sugestii pentru cuvinte de două litere"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Sugestii pentru cuvinte de două litere"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilizaţi cuvântul anterior pentru a îmbunătăţi sugestia"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Utilizaţi cuvântul anterior pentru a îmbunătăţi sugestia"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Sugestii pentru cuvinte de două litere"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"De asemenea, utilizaţi pentru sugestii cuvântul precedent"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: salvat"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: salvat"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"OK"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"OK"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Înainte"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Înainte"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук клавиш"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук клавиш"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Увеличение нажатых"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Увеличение нажатых"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Общие"</string>
|
<string name="general_category" msgid="1859088467017573195">"Общие"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Исправление текста"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Подсказки, основанные на предыдущих словах"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Другие варианты"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Заглавные автоматически"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Заглавные автоматически"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Быстрое исправление"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Быстрое исправление"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Исправлять распространенные опечатки"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Исправлять распространенные опечатки"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Всегда показывать"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Всегда показывать"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Показать вертикально"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Показать вертикально"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Всегда скрывать"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Всегда скрывать"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Пробел меняет язык"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Кнопка настроек"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Кнопка настроек"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Автоматически"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Автоматически"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Всегда показывать"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Всегда показывать"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Откл."</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Откл."</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умеренное"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умеренное"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Активное"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Активное"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Биграммные подсказки"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Биграммные подсказки"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Используйте предыдущее слово, чтобы исправить подсказку"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Используйте предыдущее слово, чтобы исправить подсказку"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Биграммный прогноз"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Использовать предыдущее слово для прогнозирования"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: сохранено"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: сохранено"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Поиск"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Поиск"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Далее"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Далее"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk pri stlačení klávesu"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvuk pri stlačení klávesu"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Zobraziť znaky pri stlačení klávesu"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Zobraziť znaky pri stlačení klávesu"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Všeobecné"</string>
|
<string name="general_category" msgid="1859088467017573195">"Všeobecné"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Oprava textu"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Návrhy na základe predchádzajúcich slov"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Ďalšie možnosti"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Veľké písmená automaticky"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Veľké písmená automaticky"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Rýchle opravy"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Rýchle opravy"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Opravuje najčastejšie chyby pri písaní"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Opravuje najčastejšie chyby pri písaní"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vždy zobrazovať"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vždy zobrazovať"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Zobraziť v režime na výšku"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Zobraziť v režime na výšku"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vždy skrývať"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vždy skrývať"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Použite medzerník na prepínanie medzi jazykmi"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Zobraziť kláves Nastavenia"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Zobraziť kláves Nastavenia"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automaticky"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automaticky"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vždy zobrazovať"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vždy zobrazovať"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Vypnuté"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Vypnuté"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mierne"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Mierne"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresívne"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresívne"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Návrhy Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Návrhy Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Na zlepšenie návrhu použiť predchádzajúce slovo"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Na zlepšenie návrhu použiť predchádzajúce slovo"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Odhady Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Použiť predchádzajúce slovo aj pre predpoveď"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Uložené"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Uložené"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Hľadať"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Hľadať"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Ďalej"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Ďalej"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Zvok 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Pojavno okno ob pritisku tipke"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Splošno"</string>
|
<string name="general_category" msgid="1859088467017573195">"Splošno"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Popravek besedila"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Predlogi, ki temeljijo na prejšnjih besedah"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Druge možnosti"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Samodejne velike začetnice"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Samodejne velike začetnice"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Hitri popravki"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Hitri popravki"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Popravi pogoste tipkarske napake"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Popravi pogoste tipkarske napake"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vedno pokaži"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Vedno pokaži"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Pokaži v pokončnem načinu"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Pokaži v pokončnem načinu"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vedno skrij"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Vedno skrij"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Preklopite med jeziki s preslednico"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Pokaži tipko za nastavitve"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Pokaži tipko za nastavitve"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Samodejno"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Samodejno"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vedno pokaži"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Vedno pokaži"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Izklopljeno"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Izklopljeno"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Zmerno"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Zmerno"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivno"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresivno"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigramni predlogi"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigramni predlogi"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Predlog izboljšaj s prejšnjo besedo"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Predlog izboljšaj s prejšnjo besedo"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigramsko predvidevanje"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Uporabi prejšnjo besedo tudi za predvidevanje"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: shranjeno"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: shranjeno"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Pojdi"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Pojdi"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Naprej"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Naprej"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук на притисак тастера"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук на притисак тастера"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Искачући прозор приликом притиска тастера"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Искачући прозор приликом притиска тастера"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Опште"</string>
|
<string name="general_category" msgid="1859088467017573195">"Опште"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Исправљање текста"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Предлози на основу претходних речи"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Друге опције:"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Аутоматски унос великих слова"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Аутоматски унос великих слова"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Брзе исправке"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Брзе исправке"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Исправља честе грешке у куцању"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Исправља честе грешке у куцању"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Увек прикажи"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Увек прикажи"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Прикажи у усправном режиму"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Прикажи у усправном режиму"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Увек сакриј"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Увек сакриј"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Користи размак за избор језика"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Прикажи тастер за подешавања"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Прикажи тастер за подешавања"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Аутоматски"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Аутоматски"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Увек прикажи"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Увек прикажи"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Искључи"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Искључи"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умерено"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Умерено"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Агресивно"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Агресивно"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram предлози"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram предлози"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Користи претходну реч за побољшање предлога"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Користи претходну реч за побољшање предлога"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram предвиђање"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Користи претходну реч и за предвиђање"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Сачувано"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Сачувано"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Иди"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Иди"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Следеће"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Следеће"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Knappljud"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Knappljud"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Popup vid knapptryck"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Popup vid knapptryck"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Allmänt"</string>
|
<string name="general_category" msgid="1859088467017573195">"Allmänt"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Textkorrigering"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Förslag baserade på tidigare ord"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Andra alternativ"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Automatiska versaler"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Automatiska versaler"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Snabba lösningar"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Snabba lösningar"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Åtgärdar automatiskt vanliga misstag"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Åtgärdar automatiskt vanliga misstag"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Visa alltid"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Visa alltid"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Visa stående"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Visa stående"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Dölj alltid"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Dölj alltid"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Byt språk m. mellanslag"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Visa inställningsknapp"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Visa inställningsknapp"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatiskt"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Automatiskt"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Visa alltid"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Visa alltid"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Av"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Av"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Måttlig"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Måttlig"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Aggressiv"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Aggressiv"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigramförslag"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigramförslag"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Förbättra förslaget med föregående ord"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Förbättra förslaget med föregående ord"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigramförslag"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Använd även föregående ord för att ge förslag"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: sparat"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>: sparat"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Kör"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Kör"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Nästa"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Nästa"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"ส่งเสียงเมื่อกดปุ่ม"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"ส่งเสียงเมื่อกดปุ่ม"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"ป๊อปอัปเมื่อกดแป้น"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"ป๊อปอัปเมื่อกดแป้น"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"ทั่วไป"</string>
|
<string name="general_category" msgid="1859088467017573195">"ทั่วไป"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"การแก้ไขข้อความ"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"ข้อเสนอแนะตามคำก่อนหน้านี้"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"ตัวเลือกอื่นๆ"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"ปรับเป็นตัวพิมพ์ใหญ่อัตโนมัติ"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"ปรับเป็นตัวพิมพ์ใหญ่อัตโนมัติ"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"แก้ไขด่วน"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"แก้ไขด่วน"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"แก้ไขข้อผิดพลาดในการพิมพ์ที่พบบ่อย"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"แก้ไขข้อผิดพลาดในการพิมพ์ที่พบบ่อย"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"แสดงทุกครั้ง"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"แสดงทุกครั้ง"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"แสดงในโหมดแนวตั้ง"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"แสดงในโหมดแนวตั้ง"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"ซ่อนทุกครั้ง"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"ซ่อนทุกครั้ง"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"ใช้แป้น Spacebar เพื่อสลับภาษา"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"แสดงแป้นการตั้งค่า"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"แสดงแป้นการตั้งค่า"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"อัตโนมัติ"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"อัตโนมัติ"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"แสดงตลอดเวลา"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"แสดงตลอดเวลา"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"ปิด"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"ปิด"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"ปานกลาง"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"ปานกลาง"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"เข้มงวด"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"เข้มงวด"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"คำแนะนำ Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"คำแนะนำ Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"ใช้คำก่อนหน้านี้เพื่อปรับปรุงคำแนะนำ"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"ใช้คำก่อนหน้านี้เพื่อปรับปรุงคำแนะนำ"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"การคาดคะเน Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"ใช้คำก่อนหน้านี้สำหรับการคาดคะเน"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : บันทึกแล้ว"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : บันทึกแล้ว"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"ไป"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"ไป"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"ถัดไป"</string>
|
<string name="label_next_key" msgid="362972844525672568">"ถัดไป"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Tunog 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Popup sa keypress"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Pangkalahatan"</string>
|
<string name="general_category" msgid="1859088467017573195">"Pangkalahatan"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Pagwawasto ng teksto"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Mga suhestiyon batay sa mga nakaraang salita"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Iba pang mga pagpipilian"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Auto-capitalization"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Auto-capitalization"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Mga mabilisang pagsasaayos"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Mga mabilisang pagsasaayos"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Itinatama ang mga karaniwang na-type na mali"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Itinatama ang mga karaniwang na-type na mali"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Palaging ipakita"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Palaging ipakita"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Ipakita sa portrait mode"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Ipakita sa portrait mode"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Palaging itago"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Palaging itago"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Gamitin ang panglipat ng wika sa spacebar"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Ipakita ang key ng mga setting"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Ipakita ang key ng mga setting"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Awtomatiko"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Awtomatiko"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Palaging ipakita"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Palaging ipakita"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Naka-off"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Naka-off"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Modest"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Modest"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresibo"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresibo"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Mga Suhestiyon na Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Mga bigram na suhestiyon"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Gamitin ang nakaraang salita upang pahusayin ang suhestiyon"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Gamitin ang nakaraang salita upang pahusayin ang suhestiyon"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram na hula"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Gamitin ang nakaraang salita para din sa hula"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Na-save"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Na-save"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Punta"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Punta"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Susunod"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Susunod"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Tuşa basıldığında ses çıkar"</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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Tuşa basıldığında pop-up aç"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Genel"</string>
|
<string name="general_category" msgid="1859088467017573195">"Genel"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Metin düzeltme"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Önceki kelimelere dayalı öneriler"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Diğer seçenekler"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Otomatik olarak büyük harf yap"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Otomatik olarak büyük harf yap"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Hızlı onarımlar"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Hızlı onarımlar"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Yaygın olarak yapılan yazım hatalarını düzeltir"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Yaygın olarak yapılan yazım hatalarını düzeltir"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Her zaman göster"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Her zaman göster"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Dikey modda göster"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Dikey modda göster"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Her zaman gizle"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Her zaman gizle"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Dil geçişi içn boşluk çubğn kullan"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Ayarları göster tuşu"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Ayarları göster tuşu"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Otomatik"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Otomatik"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Her zaman göster"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Her zaman göster"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Kapalı"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Kapalı"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Ölçülü"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Ölçülü"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresif"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Agresif"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Bigram Önerileri"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Bigram önerileri"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Öneriyi geliştirmek için önceki kelimeyi kullanın"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Öneriyi geliştirmek için önceki kelimeyi kullanın"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Bigram tahmini"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Önceki kelimeyi de tahmin için kullan"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Kaydedildi"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Kaydedildi"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Git"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Git"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"İleri"</string>
|
<string name="label_next_key" msgid="362972844525672568">"İleri"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натиску клав."</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"Звук при натиску клав."</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"Сплив. при нат.клав."</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Сплив. при нат.клав."</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Загальні"</string>
|
<string name="general_category" msgid="1859088467017573195">"Загальні"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Виправлення тексту"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Пропозиції на основі попередніх слів"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Інші опції"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Авто викор. вел. літер"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Авто викор. вел. літер"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Шв. виправлення"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Шв. виправлення"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Виправляє поширені помилки"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Виправляє поширені помилки"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Завжди показувати"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Завжди показувати"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Показувати в книжковому режимі"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Показувати в книжковому режимі"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Завжди ховати"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Завжди ховати"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Використ. зміну мови пробілом"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Показ. клав. налашт."</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Показ. клав. налашт."</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Автоматично"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Автоматично"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Завжди показ."</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Завжди показ."</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Вимк."</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Вимк."</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Середнє"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Середнє"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Повне"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Повне"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Двобуквені пропозиції"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Пропозиції з двох слів"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Викор. попер. слово для покращ. пропозиції"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Викор. попер. слово для покращ. пропозиції"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Передбачений запит із двох слів"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Використовувати попереднє слово також як передбачений запит"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : збережено"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : збережено"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Іти"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Іти"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Далі"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Далі"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"Âm thanh 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>
|
<string name="popup_on_keypress" msgid="123894815723512944">"Cửa sổ bật lên khi nhấn phím"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"Chung"</string>
|
<string name="general_category" msgid="1859088467017573195">"Chung"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"Sửa văn bản"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"Đề xuất dựa trên các từ trước đó"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"Tùy chọn khác"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"Tự động viết hoa"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"Tự động viết hoa"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"Sửa nhanh"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"Sửa nhanh"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"Sửa lỗi nhập thông thường"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"Sửa lỗi nhập thông thường"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Luôn hiển thị"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"Luôn hiển thị"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Hiển thị trên chế độ khổ đứng"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"Hiển thị trên chế độ khổ đứng"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Luôn ẩn"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"Luôn ẩn"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"Sử dụng trình chuyển đổi ngôn ngữ thanh cách"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"Hiển thị phím cài đặt"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"Hiển thị phím cài đặt"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Tự động"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"Tự động"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Luôn hiển thị"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"Luôn hiển thị"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Tắt"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"Tắt"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Đơn giản"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"Đơn giản"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Linh hoạt"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"Linh hoạt"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"Đề xuất Bigram"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"Đề xuất Bigram"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Sử dụng từ trước đó để cải tiến đề xuất"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"Sử dụng từ trước đó để cải tiến đề xuất"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"Dự đoán Bigram"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"Cũng sử dụng từ trước đó để dự đoán"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Đã lưu"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g> : Đã lưu"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"Đến"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"Đến"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"Tiếp theo"</string>
|
<string name="label_next_key" msgid="362972844525672568">"Tiếp theo"</string>
|
||||||
|
|
|
@ -37,8 +37,7 @@
|
||||||
<bool name="config_use_spacebar_language_switcher">false</bool>
|
<bool name="config_use_spacebar_language_switcher">false</bool>
|
||||||
<!-- Showing mini keyboard, just above the touched point if true, aligned to the key if false -->
|
<!-- Showing mini keyboard, just above the touched point if true, aligned to the key if false -->
|
||||||
<bool name="config_show_mini_keyboard_at_touched_point">true</bool>
|
<bool name="config_show_mini_keyboard_at_touched_point">true</bool>
|
||||||
<!-- The language is never displayed if == 0, always displayed if < 0 -->
|
<integer name="config_delay_update_suggestions">180</integer>
|
||||||
<integer name="config_delay_before_fadeout_language_on_spacebar">1200</integer>
|
|
||||||
<!-- This configuration is the index of the array {@link KeyboardSwitcher.KEYBOARD_THEMES}. -->
|
<!-- This configuration is the index of the array {@link KeyboardSwitcher.KEYBOARD_THEMES}. -->
|
||||||
<string name="config_default_keyboard_theme_id" translatable="false">5</string>
|
<string name="config_default_keyboard_theme_id" translatable="false">5</string>
|
||||||
<string name="config_text_size_of_language_on_spacebar" translatable="false">medium</string>
|
<string name="config_text_size_of_language_on_spacebar" translatable="false">medium</string>
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
key_preview_height_holo - key_preview_offset_holo + alpha -->
|
key_preview_height_holo - key_preview_offset_holo + alpha -->
|
||||||
<dimen name="candidate_strip_minimum_height">18mm</dimen>
|
<dimen name="candidate_strip_minimum_height">18mm</dimen>
|
||||||
<dimen name="candidate_strip_padding">15.0mm</dimen>
|
<dimen name="candidate_strip_padding">15.0mm</dimen>
|
||||||
<dimen name="candidate_min_width">0.3in</dimen>
|
<dimen name="candidate_min_width">46dip</dimen>
|
||||||
<dimen name="candidate_padding">12dip</dimen>
|
<dimen name="candidate_padding">8dip</dimen>
|
||||||
<dimen name="candidate_text_size">22dip</dimen>
|
<dimen name="candidate_text_size">22dip</dimen>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"按键时播放音效"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"按键时播放音效"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"按键时显示弹出窗口"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"按键时显示弹出窗口"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"常规"</string>
|
<string name="general_category" msgid="1859088467017573195">"常规"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"文本更正"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"根据前面的字词提供建议"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"其他选项"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"自动大写"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"自动大写"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"快速纠正"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"快速纠正"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"纠正常见的输入错误"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"纠正常见的输入错误"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"始终显示"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"始终显示"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"以纵向模式显示"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"以纵向模式显示"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"始终隐藏"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"始终隐藏"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"使用空格键切换语言"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"显示设置键"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"显示设置键"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"自动"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"自动"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"始终显示"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"始终显示"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"关闭"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"关闭"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"部分"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"部分"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"全部"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"全部"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"双连词建议"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"双连词建议"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"使用以前的字词改进建议"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"使用以前的字词改进建议"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"双连词预测"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"结合前一个字词进行预测"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>:已保存"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>:已保存"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"开始"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"开始"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"下一步"</string>
|
<string name="label_next_key" msgid="362972844525672568">"下一步"</string>
|
||||||
|
|
|
@ -27,12 +27,9 @@
|
||||||
<string name="sound_on_keypress" msgid="6093592297198243644">"按鍵時播放音效"</string>
|
<string name="sound_on_keypress" msgid="6093592297198243644">"按鍵時播放音效"</string>
|
||||||
<string name="popup_on_keypress" msgid="123894815723512944">"按鍵時顯示彈出式視窗"</string>
|
<string name="popup_on_keypress" msgid="123894815723512944">"按鍵時顯示彈出式視窗"</string>
|
||||||
<string name="general_category" msgid="1859088467017573195">"一般設定"</string>
|
<string name="general_category" msgid="1859088467017573195">"一般設定"</string>
|
||||||
<!-- no translation found for correction_category (2236750915056607613) -->
|
<string name="correction_category" msgid="2236750915056607613">"文字修正"</string>
|
||||||
<skip />
|
<string name="ngram_category" msgid="5337109164339320257">"根據先前字詞產生的建議"</string>
|
||||||
<!-- no translation found for ngram_category (5337109164339320257) -->
|
<string name="misc_category" msgid="6894192814868233453">"其他選項"</string>
|
||||||
<skip />
|
|
||||||
<!-- no translation found for misc_category (6894192814868233453) -->
|
|
||||||
<skip />
|
|
||||||
<string name="auto_cap" msgid="1719746674854628252">"自動大寫"</string>
|
<string name="auto_cap" msgid="1719746674854628252">"自動大寫"</string>
|
||||||
<string name="quick_fixes" msgid="5353213327680897927">"快速修正"</string>
|
<string name="quick_fixes" msgid="5353213327680897927">"快速修正"</string>
|
||||||
<string name="quick_fixes_summary" msgid="3405028402510332373">"修正一般打字錯誤"</string>
|
<string name="quick_fixes_summary" msgid="3405028402510332373">"修正一般打字錯誤"</string>
|
||||||
|
@ -41,8 +38,7 @@
|
||||||
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"一律顯示"</string>
|
<string name="prefs_suggestion_visibility_show_name" msgid="3219916594067551303">"一律顯示"</string>
|
||||||
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"以垂直模式顯示"</string>
|
<string name="prefs_suggestion_visibility_show_only_portrait_name" msgid="3551821800439659812">"以垂直模式顯示"</string>
|
||||||
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"永遠隱藏"</string>
|
<string name="prefs_suggestion_visibility_hide_name" msgid="6309143926422234673">"永遠隱藏"</string>
|
||||||
<!-- no translation found for prefs_use_spacebar_language_switch (8828538114550634449) -->
|
<string name="prefs_use_spacebar_language_switch" msgid="8828538114550634449">"使用空白鍵切換語言"</string>
|
||||||
<skip />
|
|
||||||
<string name="prefs_settings_key" msgid="4623341240804046498">"顯示設定金鑰"</string>
|
<string name="prefs_settings_key" msgid="4623341240804046498">"顯示設定金鑰"</string>
|
||||||
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"自動"</string>
|
<string name="settings_key_mode_auto_name" msgid="2993460277873684680">"自動"</string>
|
||||||
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"一律顯示"</string>
|
<string name="settings_key_mode_always_show_name" msgid="3047567041784760575">"一律顯示"</string>
|
||||||
|
@ -52,12 +48,10 @@
|
||||||
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"關閉"</string>
|
<string name="auto_correction_threshold_mode_off" msgid="8470882665417944026">"關閉"</string>
|
||||||
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"部分"</string>
|
<string name="auto_correction_threshold_mode_modest" msgid="8788366690620799097">"部分"</string>
|
||||||
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"全部"</string>
|
<string name="auto_correction_threshold_mode_aggeressive" msgid="3524029103734923819">"全部"</string>
|
||||||
<!-- outdated translation 7146707435859263625 --> <string name="bigram_suggestion" msgid="2636414079905220518">"雙連詞建議"</string>
|
<string name="bigram_suggestion" msgid="2636414079905220518">"雙連詞建議"</string>
|
||||||
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"根據前一個字詞自動找出更適合的建議"</string>
|
<string name="bigram_suggestion_summary" msgid="4383845146070101531">"根據前一個字詞自動找出更適合的建議"</string>
|
||||||
<!-- no translation found for bigram_prediction (8914273444762259739) -->
|
<string name="bigram_prediction" msgid="8914273444762259739">"雙連詞預測"</string>
|
||||||
<skip />
|
<string name="bigram_prediction_summary" msgid="1747261921174300098">"同樣使用先前的字詞進行預測"</string>
|
||||||
<!-- no translation found for bigram_prediction_summary (1747261921174300098) -->
|
|
||||||
<skip />
|
|
||||||
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>:已儲存"</string>
|
<string name="added_word" msgid="8993883354622484372">"<xliff:g id="WORD">%s</xliff:g>:已儲存"</string>
|
||||||
<string name="label_go_key" msgid="1635148082137219148">"開始"</string>
|
<string name="label_go_key" msgid="1635148082137219148">"開始"</string>
|
||||||
<string name="label_next_key" msgid="362972844525672568">"繼續"</string>
|
<string name="label_next_key" msgid="362972844525672568">"繼續"</string>
|
||||||
|
|
|
@ -50,10 +50,13 @@
|
||||||
<bool name="config_show_mini_keyboard_at_touched_point">false</bool>
|
<bool name="config_show_mini_keyboard_at_touched_point">false</bool>
|
||||||
<!-- The language is never displayed if == 0, always displayed if < 0 -->
|
<!-- The language is never displayed if == 0, always displayed if < 0 -->
|
||||||
<integer name="config_delay_before_fadeout_language_on_spacebar">1200</integer>
|
<integer name="config_delay_before_fadeout_language_on_spacebar">1200</integer>
|
||||||
|
<integer name="config_delay_update_suggestions">100</integer>
|
||||||
|
<integer name="config_delay_update_old_suggestions">300</integer>
|
||||||
|
<integer name="config_delay_update_shift_state">100</integer>
|
||||||
<integer name="config_duration_of_fadeout_language_on_spacebar">50</integer>
|
<integer name="config_duration_of_fadeout_language_on_spacebar">50</integer>
|
||||||
<integer name="config_final_fadeout_percentage_of_language_on_spacebar">50</integer>
|
<integer name="config_final_fadeout_percentage_of_language_on_spacebar">50</integer>
|
||||||
<integer name="config_delay_before_preview">0</integer>
|
<integer name="config_delay_before_preview">0</integer>
|
||||||
<integer name="config_delay_after_preview">60</integer>
|
<integer name="config_delay_after_preview">70</integer>
|
||||||
<integer name="config_mini_keyboard_fadein_anim_time">0</integer>
|
<integer name="config_mini_keyboard_fadein_anim_time">0</integer>
|
||||||
<integer name="config_mini_keyboard_fadeout_anim_time">100</integer>
|
<integer name="config_mini_keyboard_fadeout_anim_time">100</integer>
|
||||||
<integer name="config_delay_before_key_repeat_start">400</integer>
|
<integer name="config_delay_before_key_repeat_start">400</integer>
|
||||||
|
|
|
@ -19,13 +19,13 @@
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<resources>
|
<resources>
|
||||||
<!-- keyboardHeight = key_height*4 + key_bottom_gap*3, key_height=0.290in -->
|
<!-- keyboardHeight = key_height*4 + key_bottom_gap*3, key_height=0.295in -->
|
||||||
<dimen name="keyboardHeight">1.265in</dimen>
|
<dimen name="keyboardHeight">1.285in</dimen>
|
||||||
<!-- key_height + key_bottom_gap = popup_key_height -->
|
<!-- key_height + key_bottom_gap = popup_key_height -->
|
||||||
<!-- <dimen name="key_height">0.290in</dimen> -->
|
<!-- <dimen name="key_height">0.295in</dimen> -->
|
||||||
<dimen name="key_bottom_gap">0.035in</dimen>
|
<dimen name="key_bottom_gap">0.035in</dimen>
|
||||||
<dimen name="key_horizontal_gap">0.000in</dimen>
|
<dimen name="key_horizontal_gap">0.000in</dimen>
|
||||||
<dimen name="popup_key_height">0.325in</dimen>
|
<dimen name="popup_key_height">0.330in</dimen>
|
||||||
<dimen name="keyboard_top_padding">0.00in</dimen>
|
<dimen name="keyboard_top_padding">0.00in</dimen>
|
||||||
<dimen name="keyboard_bottom_padding">0.06in</dimen>
|
<dimen name="keyboard_bottom_padding">0.06in</dimen>
|
||||||
<dimen name="keyboard_horizontal_edges_padding">0.0in</dimen>
|
<dimen name="keyboard_horizontal_edges_padding">0.0in</dimen>
|
||||||
|
@ -34,9 +34,9 @@
|
||||||
<dimen name="mini_keyboard_key_horizontal_padding">8dip</dimen>
|
<dimen name="mini_keyboard_key_horizontal_padding">8dip</dimen>
|
||||||
<!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. -->
|
<!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. -->
|
||||||
<!-- popup_key_height x 1.2 -->
|
<!-- popup_key_height x 1.2 -->
|
||||||
<dimen name="mini_keyboard_slide_allowance">0.390in</dimen>
|
<dimen name="mini_keyboard_slide_allowance">0.396in</dimen>
|
||||||
<!-- popup_key_height x -1.0 -->
|
<!-- popup_key_height x -1.0 -->
|
||||||
<dimen name="mini_keyboard_vertical_correction">-0.325in</dimen>
|
<dimen name="mini_keyboard_vertical_correction">-0.330in</dimen>
|
||||||
<!-- We use "inch", not "dip" because this value tries dealing with physical distance related
|
<!-- We use "inch", not "dip" because this value tries dealing with physical distance related
|
||||||
to user's finger. -->
|
to user's finger. -->
|
||||||
<dimen name="keyboard_vertical_correction">-0.05in</dimen>
|
<dimen name="keyboard_vertical_correction">-0.05in</dimen>
|
||||||
|
@ -57,7 +57,7 @@
|
||||||
<dimen name="candidate_strip_minimum_height">100sp</dimen>
|
<dimen name="candidate_strip_minimum_height">100sp</dimen>
|
||||||
<dimen name="candidate_strip_fading_edge_length">63dip</dimen>
|
<dimen name="candidate_strip_fading_edge_length">63dip</dimen>
|
||||||
<dimen name="candidate_strip_padding">0dip</dimen>
|
<dimen name="candidate_strip_padding">0dip</dimen>
|
||||||
<dimen name="candidate_min_width">0.3in</dimen>
|
<dimen name="candidate_min_width">32dip</dimen>
|
||||||
<dimen name="candidate_padding">6dip</dimen>
|
<dimen name="candidate_padding">6dip</dimen>
|
||||||
<dimen name="candidate_text_size">18dip</dimen>
|
<dimen name="candidate_text_size">18dip</dimen>
|
||||||
<dimen name="spacebar_vertical_correction">4dip</dimen>
|
<dimen name="spacebar_vertical_correction">4dip</dimen>
|
||||||
|
|
|
@ -18,12 +18,19 @@
|
||||||
*/
|
*/
|
||||||
-->
|
-->
|
||||||
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||||
<!-- Symbols that are commonly considered word separators in this language -->
|
|
||||||
<string name="word_separators">.\u0009\u0020,;:!?\n()[]*&@{}/<>_+=|\u0022</string>
|
|
||||||
<!-- Symbols that are sentence separators, for purposes of making it hug the last sentence. -->
|
|
||||||
<string name="sentence_separators">.,!?)</string>
|
|
||||||
<!-- Symbols that are suggested between words -->
|
<!-- Symbols that are suggested between words -->
|
||||||
<string name="suggested_punctuations">!?,\u0022\u0027:();-/@_</string>
|
<string name="suggested_punctuations">!?,\u0022\u0027:();-/@_</string>
|
||||||
|
<!-- Symbols that should be swapped with a magic space -->
|
||||||
|
<string name="magic_space_swapping_symbols">.,;:!?)]}\u0022</string>
|
||||||
|
<!-- Symbols that should strip a magic space -->
|
||||||
|
<string name="magic_space_stripping_symbols">\u0009\u0020\n/_\u0027-</string>
|
||||||
|
<!-- Symbols that should convert magic spaces into real space -->
|
||||||
|
<string name="magic_space_promoting_symbols">([*&@{<>+=|</string>
|
||||||
|
<!-- Symbols that do NOT separate words -->
|
||||||
|
<string name="non_word_separator_symbols">\u0027-</string>
|
||||||
|
<!-- Word separator list is the union of all symbols except those that are not separators:
|
||||||
|
magic_space_swapping_symbols | magic_space_stripping_symbols |
|
||||||
|
magic_space_neutral_symbols \ non_word_separator_symbols -->
|
||||||
|
|
||||||
<!-- Label for ALT modifier key. Must be short to fit on key! -->
|
<!-- Label for ALT modifier key. Must be short to fit on key! -->
|
||||||
<string name="label_alt_key">ALT</string>
|
<string name="label_alt_key">ALT</string>
|
||||||
|
|
|
@ -23,6 +23,9 @@
|
||||||
<integer name="key_tab">9</integer>
|
<integer name="key_tab">9</integer>
|
||||||
<integer name="key_return">10</integer>
|
<integer name="key_return">10</integer>
|
||||||
<integer name="key_space">32</integer>
|
<integer name="key_space">32</integer>
|
||||||
|
<integer name="key_dash">45</integer>
|
||||||
|
<integer name="key_single_quote">39</integer>
|
||||||
|
<integer name="key_double_quote">34</integer>
|
||||||
<integer name="key_shift">-1</integer>
|
<integer name="key_shift">-1</integer>
|
||||||
<integer name="key_switch_alpha_symbol">-2</integer>
|
<integer name="key_switch_alpha_symbol">-2</integer>
|
||||||
<integer name="key_delete">-5</integer>
|
<integer name="key_delete">-5</integer>
|
||||||
|
|
|
@ -283,6 +283,8 @@
|
||||||
<string name="subtype_mode_nb_keyboard">Norwegian Keyboard</string>
|
<string name="subtype_mode_nb_keyboard">Norwegian Keyboard</string>
|
||||||
<!-- Description for Dutch keyboard subtype [CHAR LIMIT=35] -->
|
<!-- Description for Dutch keyboard subtype [CHAR LIMIT=35] -->
|
||||||
<string name="subtype_mode_nl_keyboard">Dutch Keyboard</string>
|
<string name="subtype_mode_nl_keyboard">Dutch Keyboard</string>
|
||||||
|
<!-- Description for Polish keyboard subtype [CHAR LIMIT=35] -->
|
||||||
|
<string name="subtype_mode_pl_keyboard">Polish Keyboard</string>
|
||||||
<!-- Description for Russian keyboard subtype [CHAR LIMIT=35] -->
|
<!-- Description for Russian keyboard subtype [CHAR LIMIT=35] -->
|
||||||
<string name="subtype_mode_ru_keyboard">Russian Keyboard</string>
|
<string name="subtype_mode_ru_keyboard">Russian Keyboard</string>
|
||||||
<!-- Description for Serbian keyboard subtype [CHAR LIMIT=35] -->
|
<!-- Description for Serbian keyboard subtype [CHAR LIMIT=35] -->
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
<item name="backgroundDimAmount">0.5</item>
|
<item name="backgroundDimAmount">0.5</item>
|
||||||
<item name="colorScheme">white</item>
|
<item name="colorScheme">white</item>
|
||||||
</style>
|
</style>
|
||||||
<style name="MiniKeyboardAnimation">
|
<style name="PopupMiniKeyboardAnimation">
|
||||||
<item name="android:windowEnterAnimation">@anim/mini_keyboard_fadein</item>
|
<item name="android:windowEnterAnimation">@anim/mini_keyboard_fadein</item>
|
||||||
<item name="android:windowExitAnimation">@anim/mini_keyboard_fadeout</item>
|
<item name="android:windowExitAnimation">@anim/mini_keyboard_fadeout</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
35
java/res/xml-pl/kbd_qwerty.xml
Normal file
35
java/res/xml-pl/kbd_qwerty.xml
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
/*
|
||||||
|
**
|
||||||
|
** Copyright 2011, The Android Open Source Project
|
||||||
|
**
|
||||||
|
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
** you may not use this file except in compliance with the License.
|
||||||
|
** You may obtain a copy of the License at
|
||||||
|
**
|
||||||
|
** http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
**
|
||||||
|
** Unless required by applicable law or agreed to in writing, software
|
||||||
|
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
** See the License for the specific language governing permissions and
|
||||||
|
** limitations under the License.
|
||||||
|
*/
|
||||||
|
-->
|
||||||
|
|
||||||
|
<Keyboard
|
||||||
|
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
|
||||||
|
latin:keyboardHeight="@dimen/keyboardHeight"
|
||||||
|
latin:maxKeyboardHeight="50%p"
|
||||||
|
latin:rowHeight="25%p"
|
||||||
|
latin:keyWidth="10%p"
|
||||||
|
latin:horizontalGap="@dimen/key_horizontal_gap"
|
||||||
|
latin:verticalGap="@dimen/key_bottom_gap"
|
||||||
|
latin:popupKeyboardTemplate="@xml/kbd_popup_template"
|
||||||
|
latin:maxPopupKeyboardColumn="@integer/config_max_popup_keyboard_column"
|
||||||
|
latin:keyboardLocale="pl_PL"
|
||||||
|
>
|
||||||
|
<include
|
||||||
|
latin:keyboardLayout="@xml/kbd_qwerty_rows" />
|
||||||
|
</Keyboard>
|
|
@ -63,6 +63,9 @@ public class Keyboard {
|
||||||
public static final int CODE_TAB = '\t';
|
public static final int CODE_TAB = '\t';
|
||||||
public static final int CODE_SPACE = ' ';
|
public static final int CODE_SPACE = ' ';
|
||||||
public static final int CODE_PERIOD = '.';
|
public static final int CODE_PERIOD = '.';
|
||||||
|
public static final int CODE_DASH = '-';
|
||||||
|
public static final int CODE_SINGLE_QUOTE = '\'';
|
||||||
|
public static final int CODE_DOUBLE_QUOTE = '"';
|
||||||
|
|
||||||
/** Special keys code. These should be aligned with values/keycodes.xml */
|
/** Special keys code. These should be aligned with values/keycodes.xml */
|
||||||
public static final int CODE_DUMMY = 0;
|
public static final int CODE_DUMMY = 0;
|
||||||
|
|
|
@ -626,7 +626,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
|
||||||
|
|
||||||
private static boolean isQuoteCharacter(int c) {
|
private static boolean isQuoteCharacter(int c) {
|
||||||
// Apostrophe, quotation mark.
|
// Apostrophe, quotation mark.
|
||||||
if (c == '\'' || c == '"')
|
if (c == Keyboard.CODE_SINGLE_QUOTE || c == Keyboard.CODE_DOUBLE_QUOTE)
|
||||||
return true;
|
return true;
|
||||||
// \u2018: Left single quotation mark
|
// \u2018: Left single quotation mark
|
||||||
// \u2019: Right single quotation mark
|
// \u2019: Right single quotation mark
|
||||||
|
|
|
@ -35,17 +35,16 @@ import android.graphics.Typeface;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Message;
|
import android.os.Message;
|
||||||
import android.os.SystemClock;
|
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.util.TypedValue;
|
import android.util.TypedValue;
|
||||||
import android.view.GestureDetector;
|
import android.view.GestureDetector;
|
||||||
import android.view.Gravity;
|
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.MotionEvent;
|
import android.view.MotionEvent;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewConfiguration;
|
import android.view.ViewConfiguration;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
import android.view.ViewGroup.MarginLayoutParams;
|
||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.PopupWindow;
|
import android.widget.PopupWindow;
|
||||||
|
@ -53,7 +52,6 @@ import android.widget.TextView;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
|
||||||
import java.util.WeakHashMap;
|
import java.util.WeakHashMap;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -111,24 +109,18 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
private boolean mInForeground;
|
private boolean mInForeground;
|
||||||
private TextView mPreviewText;
|
private TextView mPreviewText;
|
||||||
private int mPreviewTextSizeLarge;
|
private int mPreviewTextSizeLarge;
|
||||||
private final int[] mOffsetInWindow = new int[2];
|
|
||||||
private boolean mShowKeyPreview = true;
|
private boolean mShowKeyPreview = true;
|
||||||
private int mKeyPreviewDisplayedY;
|
private int mKeyPreviewDisplayedY;
|
||||||
private final int mDelayBeforePreview;
|
private final int mDelayBeforePreview;
|
||||||
private final int mDelayAfterPreview;
|
private final int mDelayAfterPreview;
|
||||||
private ViewGroup mPreviewPlacer;
|
private ViewGroup mPreviewPlacer;
|
||||||
|
private final int[] mCoordinates = new int[2];
|
||||||
|
|
||||||
// Mini keyboard
|
// Mini keyboard
|
||||||
private PopupWindow mMiniKeyboardWindow;
|
private PopupWindow mPopupWindow;
|
||||||
private KeyboardView mMiniKeyboardView;
|
private PopupPanel mPopupMiniKeyboardPanel;
|
||||||
private final WeakHashMap<Key, View> mMiniKeyboardCache = new WeakHashMap<Key, View>();
|
private final WeakHashMap<Key, PopupPanel> mPopupPanelCache =
|
||||||
private int mMiniKeyboardOriginX;
|
new WeakHashMap<Key, PopupPanel>();
|
||||||
private int mMiniKeyboardOriginY;
|
|
||||||
private long mMiniKeyboardDisplayedTime;
|
|
||||||
private int[] mWindowOffset;
|
|
||||||
private final float mMiniKeyboardSlideAllowance;
|
|
||||||
private int mMiniKeyboardTrackerId;
|
|
||||||
private final boolean mConfigShowMiniKeyboardAtTouchedPoint;
|
|
||||||
|
|
||||||
/** Listener for {@link KeyboardActionListener}. */
|
/** Listener for {@link KeyboardActionListener}. */
|
||||||
private KeyboardActionListener mKeyboardActionListener;
|
private KeyboardActionListener mKeyboardActionListener;
|
||||||
|
@ -148,7 +140,7 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
protected KeyDetector mKeyDetector = new KeyDetector();
|
protected KeyDetector mKeyDetector = new KeyDetector();
|
||||||
|
|
||||||
// Swipe gesture detector
|
// Swipe gesture detector
|
||||||
private GestureDetector mGestureDetector;
|
protected GestureDetector mGestureDetector;
|
||||||
private final SwipeTracker mSwipeTracker = new SwipeTracker();
|
private final SwipeTracker mSwipeTracker = new SwipeTracker();
|
||||||
private final int mSwipeThreshold;
|
private final int mSwipeThreshold;
|
||||||
private final boolean mDisambiguateSwipe;
|
private final boolean mDisambiguateSwipe;
|
||||||
|
@ -196,29 +188,24 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleMessage(Message msg) {
|
public void handleMessage(Message msg) {
|
||||||
|
final PointerTracker tracker = (PointerTracker) msg.obj;
|
||||||
switch (msg.what) {
|
switch (msg.what) {
|
||||||
case MSG_SHOW_KEY_PREVIEW:
|
case MSG_SHOW_KEY_PREVIEW:
|
||||||
showKey(msg.arg1, (PointerTracker)msg.obj);
|
showKey(msg.arg1, tracker);
|
||||||
break;
|
break;
|
||||||
case MSG_DISMISS_KEY_PREVIEW:
|
case MSG_DISMISS_KEY_PREVIEW:
|
||||||
mPreviewText.setVisibility(View.INVISIBLE);
|
mPreviewText.setVisibility(View.INVISIBLE);
|
||||||
break;
|
break;
|
||||||
case MSG_REPEAT_KEY: {
|
case MSG_REPEAT_KEY:
|
||||||
final PointerTracker tracker = (PointerTracker)msg.obj;
|
tracker.onRepeatKey(msg.arg1);
|
||||||
tracker.onRepeatKey(msg.arg1);
|
startKeyRepeatTimer(mKeyRepeatInterval, msg.arg1, tracker);
|
||||||
startKeyRepeatTimer(mKeyRepeatInterval, msg.arg1, tracker);
|
break;
|
||||||
break;
|
case MSG_LONGPRESS_KEY:
|
||||||
}
|
openMiniKeyboardIfRequired(msg.arg1, tracker);
|
||||||
case MSG_LONGPRESS_KEY: {
|
break;
|
||||||
final PointerTracker tracker = (PointerTracker)msg.obj;
|
case MSG_LONGPRESS_SHIFT_KEY:
|
||||||
openMiniKeyboardIfRequired(msg.arg1, tracker);
|
onLongPressShiftKey(tracker);
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
case MSG_LONGPRESS_SHIFT_KEY: {
|
|
||||||
final PointerTracker tracker = (PointerTracker)msg.obj;
|
|
||||||
onLongPressShiftKey(tracker);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -390,12 +377,6 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
mKeyLabelHorizontalPadding = (int)res.getDimension(
|
mKeyLabelHorizontalPadding = (int)res.getDimension(
|
||||||
R.dimen.key_label_horizontal_alignment_padding);
|
R.dimen.key_label_horizontal_alignment_padding);
|
||||||
|
|
||||||
mMiniKeyboardWindow = new PopupWindow(context);
|
|
||||||
mMiniKeyboardWindow.setBackgroundDrawable(null);
|
|
||||||
mMiniKeyboardWindow.setAnimationStyle(R.style.MiniKeyboardAnimation);
|
|
||||||
// Allow popup window to be drawn off the screen.
|
|
||||||
mMiniKeyboardWindow.setClippingEnabled(false);
|
|
||||||
|
|
||||||
mPaint = new Paint();
|
mPaint = new Paint();
|
||||||
mPaint.setAntiAlias(true);
|
mPaint.setAntiAlias(true);
|
||||||
mPaint.setTextSize(keyTextSize);
|
mPaint.setTextSize(keyTextSize);
|
||||||
|
@ -406,11 +387,8 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
mKeyBackground.getPadding(mPadding);
|
mKeyBackground.getPadding(mPadding);
|
||||||
|
|
||||||
mSwipeThreshold = (int) (500 * res.getDisplayMetrics().density);
|
mSwipeThreshold = (int) (500 * res.getDisplayMetrics().density);
|
||||||
// TODO: Refer frameworks/base/core/res/res/values/config.xml
|
// TODO: Refer to frameworks/base/core/res/res/values/config.xml
|
||||||
mDisambiguateSwipe = res.getBoolean(R.bool.config_swipeDisambiguation);
|
mDisambiguateSwipe = res.getBoolean(R.bool.config_swipeDisambiguation);
|
||||||
mMiniKeyboardSlideAllowance = res.getDimension(R.dimen.mini_keyboard_slide_allowance);
|
|
||||||
mConfigShowMiniKeyboardAtTouchedPoint = res.getBoolean(
|
|
||||||
R.bool.config_show_mini_keyboard_at_touched_point);
|
|
||||||
|
|
||||||
GestureDetector.SimpleOnGestureListener listener =
|
GestureDetector.SimpleOnGestureListener listener =
|
||||||
new GestureDetector.SimpleOnGestureListener() {
|
new GestureDetector.SimpleOnGestureListener() {
|
||||||
|
@ -530,7 +508,7 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
mKeyboardChanged = true;
|
mKeyboardChanged = true;
|
||||||
invalidateAllKeys();
|
invalidateAllKeys();
|
||||||
mKeyDetector.setProximityThreshold(keyboard.getMostCommonKeyWidth());
|
mKeyDetector.setProximityThreshold(keyboard.getMostCommonKeyWidth());
|
||||||
mMiniKeyboardCache.clear();
|
mPopupPanelCache.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -694,7 +672,7 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Overlay a dark rectangle to dim the keyboard
|
// Overlay a dark rectangle to dim the keyboard
|
||||||
if (mMiniKeyboardView != null) {
|
if (mPopupMiniKeyboardPanel != null) {
|
||||||
mPaint.setColor((int) (mBackgroundDimAmount * 0xFF) << 24);
|
mPaint.setColor((int) (mBackgroundDimAmount * 0xFF) << 24);
|
||||||
canvas.drawRect(0, 0, width, height, mPaint);
|
canvas.drawRect(0, 0, width, height, mPaint);
|
||||||
}
|
}
|
||||||
|
@ -947,8 +925,10 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
mPreviewPlacer = placer;
|
mPreviewPlacer = placer;
|
||||||
}
|
}
|
||||||
if (placer instanceof FrameLayout) {
|
if (placer instanceof FrameLayout) {
|
||||||
|
// Honeycomb or later.
|
||||||
placer.addView(keyPreview, new FrameLayout.LayoutParams(0, 0));
|
placer.addView(keyPreview, new FrameLayout.LayoutParams(0, 0));
|
||||||
} else {
|
} else {
|
||||||
|
// Gingerbread or ealier.
|
||||||
placer.addView(keyPreview, new LinearLayout.LayoutParams(0, 0));
|
placer.addView(keyPreview, new LinearLayout.LayoutParams(0, 0));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -956,10 +936,11 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
// TODO: Introduce minimum duration for displaying key previews
|
// TODO: Introduce minimum duration for displaying key previews
|
||||||
// TODO: Display up to two key previews when the user presses two keys at the same time
|
// TODO: Display up to two key previews when the user presses two keys at the same time
|
||||||
private void showKey(final int keyIndex, PointerTracker tracker) {
|
private void showKey(final int keyIndex, PointerTracker tracker) {
|
||||||
|
final TextView previewText = mPreviewText;
|
||||||
// If the key preview has no parent view yet, add it to the ViewGroup which can place
|
// If the key preview has no parent view yet, add it to the ViewGroup which can place
|
||||||
// key preview absolutely in SoftInputWindow.
|
// key preview absolutely in SoftInputWindow.
|
||||||
if (mPreviewText.getParent() == null) {
|
if (previewText.getParent() == null) {
|
||||||
addKeyPreview(mPreviewText);
|
addKeyPreview(previewText);
|
||||||
}
|
}
|
||||||
|
|
||||||
final Key key = tracker.getKey(keyIndex);
|
final Key key = tracker.getKey(keyIndex);
|
||||||
|
@ -968,56 +949,51 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
// WindowManager.BadTokenException.
|
// WindowManager.BadTokenException.
|
||||||
if (key == null || !mInForeground)
|
if (key == null || !mInForeground)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
mHandler.cancelAllDismissKeyPreviews();
|
||||||
|
|
||||||
final int keyDrawX = key.mX + key.mVisualInsetsLeft;
|
final int keyDrawX = key.mX + key.mVisualInsetsLeft;
|
||||||
final int keyDrawWidth = key.mWidth - key.mVisualInsetsLeft - key.mVisualInsetsRight;
|
final int keyDrawWidth = key.mWidth - key.mVisualInsetsLeft - key.mVisualInsetsRight;
|
||||||
// What we show as preview should match what we show on key top in onBufferDraw().
|
// What we show as preview should match what we show on key top in onBufferDraw().
|
||||||
if (key.mLabel != null) {
|
if (key.mLabel != null) {
|
||||||
// TODO Should take care of temporaryShiftLabel here.
|
// TODO Should take care of temporaryShiftLabel here.
|
||||||
mPreviewText.setCompoundDrawables(null, null, null, null);
|
previewText.setCompoundDrawables(null, null, null, null);
|
||||||
mPreviewText.setText(adjustCase(tracker.getPreviewText(key)));
|
previewText.setText(adjustCase(tracker.getPreviewText(key)));
|
||||||
if (key.mLabel.length() > 1) {
|
if (key.mLabel.length() > 1) {
|
||||||
mPreviewText.setTextSize(TypedValue.COMPLEX_UNIT_PX, mKeyLetterSize);
|
previewText.setTextSize(TypedValue.COMPLEX_UNIT_PX, mKeyLetterSize);
|
||||||
mPreviewText.setTypeface(Typeface.DEFAULT_BOLD);
|
previewText.setTypeface(Typeface.DEFAULT_BOLD);
|
||||||
} else {
|
} else {
|
||||||
mPreviewText.setTextSize(TypedValue.COMPLEX_UNIT_PX, mPreviewTextSizeLarge);
|
previewText.setTextSize(TypedValue.COMPLEX_UNIT_PX, mPreviewTextSizeLarge);
|
||||||
mPreviewText.setTypeface(mKeyLetterStyle);
|
previewText.setTypeface(mKeyLetterStyle);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
final Drawable previewIcon = key.getPreviewIcon();
|
final Drawable previewIcon = key.getPreviewIcon();
|
||||||
mPreviewText.setCompoundDrawables(null, null, null,
|
previewText.setCompoundDrawables(null, null, null,
|
||||||
previewIcon != null ? previewIcon : key.getIcon());
|
previewIcon != null ? previewIcon : key.getIcon());
|
||||||
mPreviewText.setText(null);
|
previewText.setText(null);
|
||||||
}
|
}
|
||||||
// Set the preview background state
|
// Set the preview background state
|
||||||
mPreviewText.getBackground().setState(
|
previewText.getBackground().setState(
|
||||||
key.mPopupCharacters != null ? LONG_PRESSABLE_STATE_SET : EMPTY_STATE_SET);
|
key.mPopupCharacters != null ? LONG_PRESSABLE_STATE_SET : EMPTY_STATE_SET);
|
||||||
|
|
||||||
mPreviewText.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
|
previewText.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
|
||||||
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
|
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
|
||||||
int previewWidth = Math.max(mPreviewText.getMeasuredWidth(), keyDrawWidth
|
final int previewWidth = Math.max(previewText.getMeasuredWidth(), keyDrawWidth
|
||||||
+ mPreviewText.getPaddingLeft() + mPreviewText.getPaddingRight());
|
+ previewText.getPaddingLeft() + previewText.getPaddingRight());
|
||||||
final int previewHeight = mPreviewHeight;
|
final int previewHeight = mPreviewHeight;
|
||||||
final ViewGroup.LayoutParams lp = mPreviewText.getLayoutParams();
|
getLocationInWindow(mCoordinates);
|
||||||
lp.width = previewWidth;
|
final int previewX = keyDrawX - (previewWidth - keyDrawWidth) / 2 + mCoordinates[0];
|
||||||
lp.height = previewHeight;
|
final int previewY = key.mY - previewHeight + mCoordinates[1] + mPreviewOffset;
|
||||||
|
// Record key preview position to display mini-keyboard later at the same position
|
||||||
int previewX = keyDrawX - (previewWidth - keyDrawWidth) / 2;
|
mKeyPreviewDisplayedY = previewY;
|
||||||
int previewY = key.mY - previewHeight + mPreviewOffset;
|
|
||||||
|
|
||||||
mHandler.cancelAllDismissKeyPreviews();
|
|
||||||
getLocationInWindow(mOffsetInWindow);
|
|
||||||
previewX += mOffsetInWindow[0];
|
|
||||||
previewY += mOffsetInWindow[1];
|
|
||||||
|
|
||||||
// Place the key preview.
|
// Place the key preview.
|
||||||
// TODO: Adjust position of key previews which touch screen edges
|
// TODO: Adjust position of key previews which touch screen edges
|
||||||
if (lp instanceof ViewGroup.MarginLayoutParams) {
|
final MarginLayoutParams lp = (MarginLayoutParams)previewText.getLayoutParams();
|
||||||
ViewGroup.MarginLayoutParams mlp = (ViewGroup.MarginLayoutParams)lp;
|
lp.width = previewWidth;
|
||||||
mlp.setMargins(previewX, previewY, 0, 0);
|
lp.height = previewHeight;
|
||||||
}
|
lp.setMargins(previewX, previewY, 0, 0);
|
||||||
// Record key preview position to display mini-keyboard later at the same position
|
previewText.setVisibility(VISIBLE);
|
||||||
mKeyPreviewDisplayedY = previewY;
|
|
||||||
mPreviewText.setVisibility(VISIBLE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1044,8 +1020,9 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
if (key == null)
|
if (key == null)
|
||||||
return;
|
return;
|
||||||
mInvalidatedKey = key;
|
mInvalidatedKey = key;
|
||||||
mInvalidatedKeyRect.set(0, 0, key.mWidth, key.mHeight);
|
final int x = key.mX + getPaddingLeft();
|
||||||
mInvalidatedKeyRect.offset(key.mX + getPaddingLeft(), key.mY + getPaddingTop());
|
final int y = key.mY + getPaddingTop();
|
||||||
|
mInvalidatedKeyRect.set(x, y, x + key.mWidth, y + key.mHeight);
|
||||||
mDirtyRect.union(mInvalidatedKeyRect);
|
mDirtyRect.union(mInvalidatedKeyRect);
|
||||||
onBufferDraw();
|
onBufferDraw();
|
||||||
invalidate(mInvalidatedKeyRect);
|
invalidate(mInvalidatedKeyRect);
|
||||||
|
@ -1057,13 +1034,12 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Key parentKey = tracker.getKey(keyIndex);
|
final Key parentKey = tracker.getKey(keyIndex);
|
||||||
if (parentKey == null)
|
if (parentKey == null)
|
||||||
return false;
|
return false;
|
||||||
boolean result = onLongPress(parentKey, tracker);
|
boolean result = onLongPress(parentKey, tracker);
|
||||||
if (result) {
|
if (result) {
|
||||||
dismissAllKeyPreviews();
|
dismissAllKeyPreviews();
|
||||||
mMiniKeyboardTrackerId = tracker.mPointerId;
|
|
||||||
tracker.onLongPressed(mPointerQueue);
|
tracker.onLongPressed(mPointerQueue);
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
@ -1081,13 +1057,18 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
mKeyboardActionListener.onCodeInput(Keyboard.CODE_CAPSLOCK, null, 0, 0);
|
mKeyboardActionListener.onCodeInput(Keyboard.CODE_CAPSLOCK, null, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
private View inflateMiniKeyboardContainer(Key parentKey) {
|
// This default implementation returns a popup mini keyboard panel.
|
||||||
|
// A derived class may return a language switcher popup panel, for instance.
|
||||||
|
protected PopupPanel onCreatePopupPanel(Key parentKey) {
|
||||||
|
if (parentKey.mPopupCharacters == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
final View container = LayoutInflater.from(getContext()).inflate(mPopupLayout, null);
|
final View container = LayoutInflater.from(getContext()).inflate(mPopupLayout, null);
|
||||||
if (container == null)
|
if (container == null)
|
||||||
throw new NullPointerException();
|
throw new NullPointerException();
|
||||||
|
|
||||||
final KeyboardView miniKeyboardView =
|
final PopupMiniKeyboardView miniKeyboardView =
|
||||||
(KeyboardView)container.findViewById(R.id.KeyboardView);
|
(PopupMiniKeyboardView)container.findViewById(R.id.mini_keyboard_view);
|
||||||
miniKeyboardView.setOnKeyboardActionListener(new KeyboardActionListener() {
|
miniKeyboardView.setOnKeyboardActionListener(new KeyboardActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onCodeInput(int primaryCode, int[] keyCodes, int x, int y) {
|
public void onCodeInput(int primaryCode, int[] keyCodes, int x, int y) {
|
||||||
|
@ -1120,10 +1101,6 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
mKeyboardActionListener.onRelease(primaryCode, withSliding);
|
mKeyboardActionListener.onRelease(primaryCode, withSliding);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// Override default ProximityKeyDetector.
|
|
||||||
miniKeyboardView.mKeyDetector = new MiniKeyboardKeyDetector(mMiniKeyboardSlideAllowance);
|
|
||||||
// Remove gesture detector on mini-keyboard
|
|
||||||
miniKeyboardView.mGestureDetector = null;
|
|
||||||
|
|
||||||
final Keyboard keyboard = new MiniKeyboardBuilder(this, mKeyboard.getPopupKeyboardResId(),
|
final Keyboard keyboard = new MiniKeyboardBuilder(this, mKeyboard.getPopupKeyboardResId(),
|
||||||
parentKey).build();
|
parentKey).build();
|
||||||
|
@ -1132,87 +1109,39 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
container.measure(MeasureSpec.makeMeasureSpec(getWidth(), MeasureSpec.AT_MOST),
|
container.measure(MeasureSpec.makeMeasureSpec(getWidth(), MeasureSpec.AT_MOST),
|
||||||
MeasureSpec.makeMeasureSpec(getHeight(), MeasureSpec.AT_MOST));
|
MeasureSpec.makeMeasureSpec(getHeight(), MeasureSpec.AT_MOST));
|
||||||
|
|
||||||
return container;
|
return miniKeyboardView;
|
||||||
}
|
|
||||||
|
|
||||||
private static boolean isOneRowKeys(List<Key> keys) {
|
|
||||||
if (keys.size() == 0) return false;
|
|
||||||
final int edgeFlags = keys.get(0).mEdgeFlags;
|
|
||||||
// HACK: The first key of mini keyboard which was inflated from xml and has multiple rows,
|
|
||||||
// does not have both top and bottom edge flags on at the same time. On the other hand,
|
|
||||||
// the first key of mini keyboard that was created with popupCharacters must have both top
|
|
||||||
// and bottom edge flags on.
|
|
||||||
// When you want to use one row mini-keyboard from xml file, make sure that the row has
|
|
||||||
// both top and bottom edge flags set.
|
|
||||||
return (edgeFlags & Keyboard.EDGE_TOP) != 0
|
|
||||||
&& (edgeFlags & Keyboard.EDGE_BOTTOM) != 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called when a key is long pressed. By default this will open any mini keyboard associated
|
* Called when a key is long pressed. By default this will open mini keyboard associated
|
||||||
* with this key through the attributes popupLayout and popupCharacters.
|
* with this key.
|
||||||
* @param parentKey the key that was long pressed
|
* @param parentKey the key that was long pressed
|
||||||
|
* @param tracker the pointer tracker which pressed the parent key
|
||||||
* @return true if the long press is handled, false otherwise. Subclasses should call the
|
* @return true if the long press is handled, false otherwise. Subclasses should call the
|
||||||
* method on the base class if the subclass doesn't wish to handle the call.
|
* method on the base class if the subclass doesn't wish to handle the call.
|
||||||
*/
|
*/
|
||||||
protected boolean onLongPress(Key parentKey, PointerTracker tracker) {
|
protected boolean onLongPress(Key parentKey, PointerTracker tracker) {
|
||||||
if (parentKey.mPopupCharacters == null)
|
PopupPanel popupPanel = mPopupPanelCache.get(parentKey);
|
||||||
return false;
|
if (popupPanel == null) {
|
||||||
|
popupPanel = onCreatePopupPanel(parentKey);
|
||||||
View container = mMiniKeyboardCache.get(parentKey);
|
if (popupPanel == null)
|
||||||
if (container == null) {
|
return false;
|
||||||
container = inflateMiniKeyboardContainer(parentKey);
|
mPopupPanelCache.put(parentKey, popupPanel);
|
||||||
mMiniKeyboardCache.put(parentKey, container);
|
|
||||||
}
|
}
|
||||||
mMiniKeyboardView = (KeyboardView)container.findViewById(R.id.KeyboardView);
|
if (mPopupWindow == null) {
|
||||||
final MiniKeyboard miniKeyboard = (MiniKeyboard)mMiniKeyboardView.getKeyboard();
|
mPopupWindow = new PopupWindow(getContext());
|
||||||
|
mPopupWindow.setBackgroundDrawable(null);
|
||||||
if (mWindowOffset == null) {
|
mPopupWindow.setAnimationStyle(R.style.PopupMiniKeyboardAnimation);
|
||||||
mWindowOffset = new int[2];
|
// Allow popup window to be drawn off the screen.
|
||||||
getLocationInWindow(mWindowOffset);
|
mPopupWindow.setClippingEnabled(false);
|
||||||
}
|
}
|
||||||
final int pointX = (mConfigShowMiniKeyboardAtTouchedPoint) ? tracker.getLastX()
|
mPopupMiniKeyboardPanel = popupPanel;
|
||||||
: parentKey.mX + parentKey.mWidth / 2;
|
popupPanel.showPanel(this, parentKey, tracker, mKeyPreviewDisplayedY, mPopupWindow);
|
||||||
final int miniKeyboardX = pointX - miniKeyboard.getDefaultCoordX()
|
|
||||||
- container.getPaddingLeft()
|
|
||||||
+ getPaddingLeft() + mWindowOffset[0];
|
|
||||||
final int miniKeyboardY = parentKey.mY - mKeyboard.getVerticalGap()
|
|
||||||
- (container.getMeasuredHeight() - container.getPaddingBottom())
|
|
||||||
+ getPaddingTop() + mWindowOffset[1];
|
|
||||||
final int x = miniKeyboardX;
|
|
||||||
final int y = mShowKeyPreview && isOneRowKeys(miniKeyboard.getKeys())
|
|
||||||
? mKeyPreviewDisplayedY : miniKeyboardY;
|
|
||||||
|
|
||||||
mMiniKeyboardOriginX = x + container.getPaddingLeft() - mWindowOffset[0];
|
|
||||||
mMiniKeyboardOriginY = y + container.getPaddingTop() - mWindowOffset[1];
|
|
||||||
if (miniKeyboard.setShifted(
|
|
||||||
mKeyboard == null ? false : mKeyboard.isShiftedOrShiftLocked())) {
|
|
||||||
mMiniKeyboardView.invalidateAllKeys();
|
|
||||||
}
|
|
||||||
// Mini keyboard needs no pop-up key preview displayed.
|
|
||||||
mMiniKeyboardView.setKeyPreviewEnabled(false);
|
|
||||||
mMiniKeyboardWindow.setContentView(container);
|
|
||||||
mMiniKeyboardWindow.setWidth(container.getMeasuredWidth());
|
|
||||||
mMiniKeyboardWindow.setHeight(container.getMeasuredHeight());
|
|
||||||
mMiniKeyboardWindow.showAtLocation(this, Gravity.NO_GRAVITY, x, y);
|
|
||||||
|
|
||||||
// Inject down event on the key to mini keyboard.
|
|
||||||
final long eventTime = SystemClock.uptimeMillis();
|
|
||||||
mMiniKeyboardDisplayedTime = eventTime;
|
|
||||||
final MotionEvent downEvent = generateMiniKeyboardMotionEvent(MotionEvent.ACTION_DOWN,
|
|
||||||
pointX, parentKey.mY + parentKey.mHeight / 2, eventTime);
|
|
||||||
mMiniKeyboardView.onTouchEvent(downEvent);
|
|
||||||
downEvent.recycle();
|
|
||||||
|
|
||||||
invalidateAllKeys();
|
invalidateAllKeys();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private MotionEvent generateMiniKeyboardMotionEvent(int action, int x, int y, long eventTime) {
|
|
||||||
return MotionEvent.obtain(mMiniKeyboardDisplayedTime, eventTime, action,
|
|
||||||
x - mMiniKeyboardOriginX, y - mMiniKeyboardOriginY, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
private PointerTracker getPointerTracker(final int id) {
|
private PointerTracker getPointerTracker(final int id) {
|
||||||
final ArrayList<PointerTracker> pointers = mPointerTrackers;
|
final ArrayList<PointerTracker> pointers = mPointerTrackers;
|
||||||
final KeyboardActionListener listener = mKeyboardActionListener;
|
final KeyboardActionListener listener = mKeyboardActionListener;
|
||||||
|
@ -1232,8 +1161,8 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isInSlidingKeyInput() {
|
public boolean isInSlidingKeyInput() {
|
||||||
if (mMiniKeyboardView != null) {
|
if (mPopupMiniKeyboardPanel != null) {
|
||||||
return mMiniKeyboardView.isInSlidingKeyInput();
|
return mPopupMiniKeyboardPanel.isInSlidingKeyInput();
|
||||||
} else {
|
} else {
|
||||||
return mPointerQueue.isInSlidingKeyInput();
|
return mPointerQueue.isInSlidingKeyInput();
|
||||||
}
|
}
|
||||||
|
@ -1264,7 +1193,7 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
// Gesture detector must be enabled only when mini-keyboard is not on the screen and
|
// Gesture detector must be enabled only when mini-keyboard is not on the screen and
|
||||||
// accessibility is not enabled.
|
// accessibility is not enabled.
|
||||||
// TODO: Reconcile gesture detection and accessibility features.
|
// TODO: Reconcile gesture detection and accessibility features.
|
||||||
if (mMiniKeyboardView == null && !mIsAccessibilityEnabled
|
if (mPopupMiniKeyboardPanel == null && !mIsAccessibilityEnabled
|
||||||
&& mGestureDetector != null && mGestureDetector.onTouchEvent(me)) {
|
&& mGestureDetector != null && mGestureDetector.onTouchEvent(me)) {
|
||||||
dismissAllKeyPreviews();
|
dismissAllKeyPreviews();
|
||||||
mHandler.cancelKeyTimers();
|
mHandler.cancelKeyTimers();
|
||||||
|
@ -1277,19 +1206,10 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
final int x = (int)me.getX(index);
|
final int x = (int)me.getX(index);
|
||||||
final int y = (int)me.getY(index);
|
final int y = (int)me.getY(index);
|
||||||
|
|
||||||
// Needs to be called after the gesture detector gets a turn, as it may have
|
// Needs to be called after the gesture detector gets a turn, as it may have displayed the
|
||||||
// displayed the mini keyboard
|
// mini keyboard
|
||||||
if (mMiniKeyboardView != null) {
|
if (mPopupMiniKeyboardPanel != null) {
|
||||||
final int miniKeyboardPointerIndex = me.findPointerIndex(mMiniKeyboardTrackerId);
|
return mPopupMiniKeyboardPanel.onTouchEvent(me);
|
||||||
if (miniKeyboardPointerIndex >= 0 && miniKeyboardPointerIndex < pointerCount) {
|
|
||||||
final int miniKeyboardX = (int)me.getX(miniKeyboardPointerIndex);
|
|
||||||
final int miniKeyboardY = (int)me.getY(miniKeyboardPointerIndex);
|
|
||||||
MotionEvent translated = generateMiniKeyboardMotionEvent(action,
|
|
||||||
miniKeyboardX, miniKeyboardY, eventTime);
|
|
||||||
mMiniKeyboardView.onTouchEvent(translated);
|
|
||||||
translated.recycle();
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mHandler.isInKeyRepeat()) {
|
if (mHandler.isInKeyRepeat()) {
|
||||||
|
@ -1370,7 +1290,7 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
|
|
||||||
dismissMiniKeyboard();
|
dismissMiniKeyboard();
|
||||||
mDirtyRect.union(0, 0, getWidth(), getHeight());
|
mDirtyRect.union(0, 0, getWidth(), getHeight());
|
||||||
mMiniKeyboardCache.clear();
|
mPopupPanelCache.clear();
|
||||||
requestLayout();
|
requestLayout();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1385,21 +1305,17 @@ public class KeyboardView extends View implements PointerTracker.UIProxy {
|
||||||
closing();
|
closing();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void dismissMiniKeyboard() {
|
private boolean dismissMiniKeyboard() {
|
||||||
if (mMiniKeyboardWindow.isShowing()) {
|
if (mPopupWindow != null && mPopupWindow.isShowing()) {
|
||||||
mMiniKeyboardWindow.dismiss();
|
mPopupWindow.dismiss();
|
||||||
mMiniKeyboardView = null;
|
mPopupMiniKeyboardPanel = null;
|
||||||
mMiniKeyboardOriginX = 0;
|
|
||||||
mMiniKeyboardOriginY = 0;
|
|
||||||
invalidateAllKeys();
|
invalidateAllKeys();
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean handleBack() {
|
|
||||||
if (mMiniKeyboardWindow.isShowing()) {
|
|
||||||
dismissMiniKeyboard();
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean handleBack() {
|
||||||
|
return dismissMiniKeyboard();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,6 +18,8 @@ package com.android.inputmethod.keyboard;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public class MiniKeyboard extends Keyboard {
|
public class MiniKeyboard extends Keyboard {
|
||||||
private int mDefaultKeyCoordX;
|
private int mDefaultKeyCoordX;
|
||||||
|
|
||||||
|
@ -32,4 +34,19 @@ public class MiniKeyboard extends Keyboard {
|
||||||
public int getDefaultCoordX() {
|
public int getDefaultCoordX() {
|
||||||
return mDefaultKeyCoordX;
|
return mDefaultKeyCoordX;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isOneRowKeyboard() {
|
||||||
|
final List<Key> keys = getKeys();
|
||||||
|
if (keys.size() == 0) return false;
|
||||||
|
final int edgeFlags = keys.get(0).mEdgeFlags;
|
||||||
|
// HACK: The first key of mini keyboard which was inflated from xml and has multiple rows,
|
||||||
|
// does not have both top and bottom edge flags on at the same time. On the other hand,
|
||||||
|
// the first key of mini keyboard that was created with popupCharacters must have both top
|
||||||
|
// and bottom edge flags on.
|
||||||
|
// When you want to use one row mini-keyboard from xml file, make sure that the row has
|
||||||
|
// both top and bottom edge flags set.
|
||||||
|
return (edgeFlags & Keyboard.EDGE_TOP) != 0
|
||||||
|
&& (edgeFlags & Keyboard.EDGE_BOTTOM) != 0;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,124 @@
|
||||||
|
/*
|
||||||
|
* 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.keyboard;
|
||||||
|
|
||||||
|
import com.android.inputmethod.latin.R;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.res.Resources;
|
||||||
|
import android.os.SystemClock;
|
||||||
|
import android.util.AttributeSet;
|
||||||
|
import android.view.Gravity;
|
||||||
|
import android.view.MotionEvent;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.PopupWindow;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A view that renders a virtual {@link MiniKeyboard}. It handles rendering of keys and detecting
|
||||||
|
* key presses and touch movements.
|
||||||
|
*/
|
||||||
|
public class PopupMiniKeyboardView extends KeyboardView implements PopupPanel {
|
||||||
|
private final int[] mCoordinates = new int[2];
|
||||||
|
private final boolean mConfigShowMiniKeyboardAtTouchedPoint;
|
||||||
|
|
||||||
|
private int mOriginX;
|
||||||
|
private int mOriginY;
|
||||||
|
private int mTrackerId;
|
||||||
|
private long mDownTime;
|
||||||
|
|
||||||
|
public PopupMiniKeyboardView(Context context, AttributeSet attrs) {
|
||||||
|
this(context, attrs, R.attr.keyboardViewStyle);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PopupMiniKeyboardView(Context context, AttributeSet attrs, int defStyle) {
|
||||||
|
super(context, attrs, defStyle);
|
||||||
|
|
||||||
|
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));
|
||||||
|
// Remove gesture detector on mini-keyboard
|
||||||
|
mGestureDetector = null;
|
||||||
|
setKeyPreviewEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setKeyPreviewEnabled(boolean previewEnabled) {
|
||||||
|
// Mini keyboard needs no pop-up key preview displayed.
|
||||||
|
super.setKeyPreviewEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void showPanel(KeyboardView parentKeyboardView, Key parentKey,
|
||||||
|
PointerTracker tracker, int keyPreviewY, PopupWindow window) {
|
||||||
|
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;
|
||||||
|
final int miniKeyboardX = pointX - miniKeyboard.getDefaultCoordX()
|
||||||
|
- container.getPaddingLeft()
|
||||||
|
+ parentKeyboardView.getPaddingLeft() + mCoordinates[0];
|
||||||
|
final int miniKeyboardY = pointY - parentKeyboard.getVerticalGap()
|
||||||
|
- (container.getMeasuredHeight() - container.getPaddingBottom())
|
||||||
|
+ parentKeyboardView.getPaddingTop() + mCoordinates[1];
|
||||||
|
final int x = miniKeyboardX;
|
||||||
|
final int y = parentKeyboardView.isKeyPreviewEnabled() && miniKeyboard.isOneRowKeyboard()
|
||||||
|
? keyPreviewY : miniKeyboardY;
|
||||||
|
|
||||||
|
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);
|
||||||
|
|
||||||
|
mOriginX = x + container.getPaddingLeft() - mCoordinates[0];
|
||||||
|
mOriginY = y + container.getPaddingTop() - mCoordinates[1];
|
||||||
|
mTrackerId = tracker.mPointerId;
|
||||||
|
mDownTime = SystemClock.uptimeMillis();
|
||||||
|
|
||||||
|
// Inject down event on the key to mini keyboard.
|
||||||
|
final MotionEvent downEvent = translateMotionEvent(MotionEvent.ACTION_DOWN, pointX,
|
||||||
|
pointY + parentKey.mHeight / 2, mDownTime);
|
||||||
|
onTouchEvent(downEvent);
|
||||||
|
downEvent.recycle();
|
||||||
|
}
|
||||||
|
|
||||||
|
private MotionEvent translateMotionEvent(int action, float x, float y, long eventTime) {
|
||||||
|
return MotionEvent.obtain(mDownTime, eventTime, action, x - mOriginX, y - mOriginY, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onTouchEvent(MotionEvent me) {
|
||||||
|
final int index = me.getActionIndex();
|
||||||
|
final int id = me.getPointerId(index);
|
||||||
|
if (id == mTrackerId) {
|
||||||
|
final MotionEvent translated = translateMotionEvent(me.getAction(), me.getX(index),
|
||||||
|
me.getY(index), me.getEventTime());
|
||||||
|
super.onTouchEvent(translated);
|
||||||
|
translated.recycle();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
46
java/src/com/android/inputmethod/keyboard/PopupPanel.java
Normal file
46
java/src/com/android/inputmethod/keyboard/PopupPanel.java
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
/*
|
||||||
|
* 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.keyboard;
|
||||||
|
|
||||||
|
import android.view.MotionEvent;
|
||||||
|
import android.widget.PopupWindow;
|
||||||
|
|
||||||
|
public interface PopupPanel {
|
||||||
|
/**
|
||||||
|
* 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 keyPreviewY the Y-coordinate of key preview
|
||||||
|
* @param window PopupWindow to be used to show this popup panel
|
||||||
|
*/
|
||||||
|
public void showPanel(KeyboardView parentKeyboardView, Key parentKey,
|
||||||
|
PointerTracker tracker, int keyPreviewY, PopupWindow window);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if the pointer is in siding key input mode.
|
||||||
|
* @return true if the pointer is sliding key input mode.
|
||||||
|
*/
|
||||||
|
public boolean isInSlidingKeyInput();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The motion event handler.
|
||||||
|
* @param me the MotionEvent to be processed.
|
||||||
|
* @return true if the motion event is processed and should be consumed.
|
||||||
|
*/
|
||||||
|
public boolean onTouchEvent(MotionEvent me);
|
||||||
|
}
|
|
@ -150,7 +150,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo
|
||||||
tv.setOnLongClickListener(this);
|
tv.setOnLongClickListener(this);
|
||||||
ImageView divider = (ImageView)v.findViewById(R.id.candidate_divider);
|
ImageView divider = (ImageView)v.findViewById(R.id.candidate_divider);
|
||||||
// Do not display divider of first candidate.
|
// Do not display divider of first candidate.
|
||||||
divider.setVisibility(i == 0 ? GONE : VISIBLE);
|
divider.setVisibility(i == 0 ? INVISIBLE : VISIBLE);
|
||||||
mWords.add(v);
|
mWords.add(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -179,7 +179,7 @@ public class CandidateView extends LinearLayout implements OnClickListener, OnLo
|
||||||
private void updateSuggestions() {
|
private void updateSuggestions() {
|
||||||
final SuggestedWords suggestions = mSuggestions;
|
final SuggestedWords suggestions = mSuggestions;
|
||||||
clear();
|
clear();
|
||||||
final int count = suggestions.size();
|
final int count = Math.min(mWords.size(), suggestions.size());
|
||||||
for (int i = 0; i < count; i++) {
|
for (int i = 0; i < count; i++) {
|
||||||
CharSequence word = suggestions.getWord(i);
|
CharSequence word = suggestions.getWord(i);
|
||||||
if (word == null) continue;
|
if (word == null) continue;
|
||||||
|
|
|
@ -26,6 +26,8 @@ import android.provider.ContactsContract.Contacts;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.android.inputmethod.keyboard.Keyboard;
|
||||||
|
|
||||||
public class ContactsDictionary extends ExpandableDictionary {
|
public class ContactsDictionary extends ExpandableDictionary {
|
||||||
|
|
||||||
private static final String[] PROJECTION = {
|
private static final String[] PROJECTION = {
|
||||||
|
@ -123,8 +125,9 @@ public class ContactsDictionary extends ExpandableDictionary {
|
||||||
for (j = i + 1; j < len; j++) {
|
for (j = i + 1; j < len; j++) {
|
||||||
char c = name.charAt(j);
|
char c = name.charAt(j);
|
||||||
|
|
||||||
if (!(c == '-' || c == '\'' ||
|
if (!(c == Keyboard.CODE_DASH
|
||||||
Character.isLetter(c))) {
|
|| c == Keyboard.CODE_SINGLE_QUOTE
|
||||||
|
|| Character.isLetter(c))) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,8 @@ package com.android.inputmethod.latin;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.AsyncTask;
|
import android.os.AsyncTask;
|
||||||
|
|
||||||
|
import com.android.inputmethod.keyboard.Keyboard;
|
||||||
|
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -41,8 +43,6 @@ public class ExpandableDictionary extends Dictionary {
|
||||||
private int mMaxDepth;
|
private int mMaxDepth;
|
||||||
private int mInputLength;
|
private int mInputLength;
|
||||||
|
|
||||||
private static final char QUOTE = '\'';
|
|
||||||
|
|
||||||
private boolean mRequiresReload;
|
private boolean mRequiresReload;
|
||||||
|
|
||||||
private boolean mUpdatingDictionary;
|
private boolean mUpdatingDictionary;
|
||||||
|
@ -304,7 +304,8 @@ public class ExpandableDictionary extends Dictionary {
|
||||||
getWordsRec(children, codes, word, depth + 1, completion, snr, inputIndex,
|
getWordsRec(children, codes, word, depth + 1, completion, snr, inputIndex,
|
||||||
skipPos, callback);
|
skipPos, callback);
|
||||||
}
|
}
|
||||||
} else if ((c == QUOTE && currentChars[0] != QUOTE) || depth == skipPos) {
|
} else if ((c == Keyboard.CODE_SINGLE_QUOTE
|
||||||
|
&& currentChars[0] != Keyboard.CODE_SINGLE_QUOTE) || depth == skipPos) {
|
||||||
// Skip the ' and continue deeper
|
// Skip the ' and continue deeper
|
||||||
word[depth] = c;
|
word[depth] = c;
|
||||||
if (children != null) {
|
if (children != null) {
|
||||||
|
|
|
@ -68,13 +68,11 @@ import android.view.WindowManager;
|
||||||
import android.view.inputmethod.CompletionInfo;
|
import android.view.inputmethod.CompletionInfo;
|
||||||
import android.view.inputmethod.EditorInfo;
|
import android.view.inputmethod.EditorInfo;
|
||||||
import android.view.inputmethod.ExtractedText;
|
import android.view.inputmethod.ExtractedText;
|
||||||
import android.view.inputmethod.ExtractedTextRequest;
|
|
||||||
import android.view.inputmethod.InputConnection;
|
import android.view.inputmethod.InputConnection;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
|
|
||||||
import java.io.FileDescriptor;
|
import java.io.FileDescriptor;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
|
||||||
|
@ -110,9 +108,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
*/
|
*/
|
||||||
public static final String IME_OPTION_NO_SETTINGS_KEY = "noSettingsKey";
|
public static final String IME_OPTION_NO_SETTINGS_KEY = "noSettingsKey";
|
||||||
|
|
||||||
private static final int DELAY_UPDATE_SUGGESTIONS = 180;
|
|
||||||
private static final int DELAY_UPDATE_OLD_SUGGESTIONS = 300;
|
|
||||||
private static final int DELAY_UPDATE_SHIFT_STATE = 100;
|
|
||||||
private static final int EXTENDED_TOUCHABLE_REGION_HEIGHT = 100;
|
private static final int EXTENDED_TOUCHABLE_REGION_HEIGHT = 100;
|
||||||
|
|
||||||
// How many continuous deletes at which to start deleting at a higher speed.
|
// How many continuous deletes at which to start deleting at a higher speed.
|
||||||
|
@ -155,14 +150,16 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
private KeyboardSwitcher mKeyboardSwitcher;
|
private KeyboardSwitcher mKeyboardSwitcher;
|
||||||
private SubtypeSwitcher mSubtypeSwitcher;
|
private SubtypeSwitcher mSubtypeSwitcher;
|
||||||
private VoiceProxy mVoiceProxy;
|
private VoiceProxy mVoiceProxy;
|
||||||
|
private Recorrection mRecorrection;
|
||||||
|
|
||||||
private UserDictionary mUserDictionary;
|
private UserDictionary mUserDictionary;
|
||||||
private UserBigramDictionary mUserBigramDictionary;
|
private UserBigramDictionary mUserBigramDictionary;
|
||||||
private ContactsDictionary mContactsDictionary;
|
private ContactsDictionary mContactsDictionary;
|
||||||
private AutoDictionary mAutoDictionary;
|
private AutoDictionary mAutoDictionary;
|
||||||
|
|
||||||
|
// TODO: Create an inner class to group options and pseudo-options to improve readability.
|
||||||
// These variables are initialized according to the {@link EditorInfo#inputType}.
|
// These variables are initialized according to the {@link EditorInfo#inputType}.
|
||||||
private boolean mAutoSpace;
|
private boolean mShouldInsertMagicSpace;
|
||||||
private boolean mInputTypeNoAutoCorrect;
|
private boolean mInputTypeNoAutoCorrect;
|
||||||
private boolean mIsSettingsSuggestionStripOn;
|
private boolean mIsSettingsSuggestionStripOn;
|
||||||
private boolean mApplicationSpecifiedCompletionOn;
|
private boolean mApplicationSpecifiedCompletionOn;
|
||||||
|
@ -174,9 +171,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
private CharSequence mBestWord;
|
private CharSequence mBestWord;
|
||||||
private boolean mHasUncommittedTypedChars;
|
private boolean mHasUncommittedTypedChars;
|
||||||
private boolean mHasDictionary;
|
private boolean mHasDictionary;
|
||||||
private boolean mJustAddedAutoSpace;
|
// Magic space: a space that should disappear on space/apostrophe insertion, move after the
|
||||||
|
// punctuation on punctuation insertion, and become a real space on alpha char insertion.
|
||||||
|
private boolean mJustAddedMagicSpace; // This indicates whether the last char is a magic space.
|
||||||
private boolean mAutoCorrectEnabled;
|
private boolean mAutoCorrectEnabled;
|
||||||
private boolean mRecorrectionEnabled;
|
|
||||||
// Suggestion: use bigrams to adjust scores of suggestions obtained from unigram dictionary
|
// Suggestion: use bigrams to adjust scores of suggestions obtained from unigram dictionary
|
||||||
private boolean mBigramSuggestionEnabled;
|
private boolean mBigramSuggestionEnabled;
|
||||||
// Prediction: use bigrams to predict the next word when there is no input for it yet
|
// Prediction: use bigrams to predict the next word when there is no input for it yet
|
||||||
|
@ -190,6 +188,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
private boolean mConfigEnableShowSubtypeSettings;
|
private boolean mConfigEnableShowSubtypeSettings;
|
||||||
private boolean mConfigSwipeDownDismissKeyboardEnabled;
|
private boolean mConfigSwipeDownDismissKeyboardEnabled;
|
||||||
private int mConfigDelayBeforeFadeoutLanguageOnSpacebar;
|
private int mConfigDelayBeforeFadeoutLanguageOnSpacebar;
|
||||||
|
private int mConfigDelayUpdateSuggestions;
|
||||||
|
private int mConfigDelayUpdateOldSuggestions;
|
||||||
|
private int mConfigDelayUpdateShiftState;
|
||||||
private int mConfigDurationOfFadeoutLanguageOnSpacebar;
|
private int mConfigDurationOfFadeoutLanguageOnSpacebar;
|
||||||
private float mConfigFinalFadeoutFactorOfLanguageOnSpacebar;
|
private float mConfigFinalFadeoutFactorOfLanguageOnSpacebar;
|
||||||
private long mConfigDoubleSpacesTurnIntoPeriodTimeout;
|
private long mConfigDoubleSpacesTurnIntoPeriodTimeout;
|
||||||
|
@ -213,7 +214,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
private boolean mSilentMode;
|
private boolean mSilentMode;
|
||||||
|
|
||||||
/* package */ String mWordSeparators;
|
/* package */ String mWordSeparators;
|
||||||
private String mSentenceSeparators;
|
private String mMagicSpaceStrippers;
|
||||||
|
private String mMagicSpaceSwappers;
|
||||||
private String mSuggestPuncs;
|
private String mSuggestPuncs;
|
||||||
// TODO: Move this flag to VoiceProxy
|
// TODO: Move this flag to VoiceProxy
|
||||||
private boolean mConfigurationChanging;
|
private boolean mConfigurationChanging;
|
||||||
|
@ -225,39 +227,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
// Keeps track of most recently inserted text (multi-character key) for reverting
|
// Keeps track of most recently inserted text (multi-character key) for reverting
|
||||||
private CharSequence mEnteredText;
|
private CharSequence mEnteredText;
|
||||||
|
|
||||||
private final ArrayList<WordAlternatives> mWordHistory = new ArrayList<WordAlternatives>();
|
|
||||||
|
|
||||||
public class WordAlternatives {
|
|
||||||
private final CharSequence mChosenWord;
|
|
||||||
private final WordComposer mWordComposer;
|
|
||||||
|
|
||||||
public WordAlternatives(CharSequence chosenWord, WordComposer wordComposer) {
|
|
||||||
mChosenWord = chosenWord;
|
|
||||||
mWordComposer = wordComposer;
|
|
||||||
}
|
|
||||||
|
|
||||||
public CharSequence getChosenWord() {
|
|
||||||
return mChosenWord;
|
|
||||||
}
|
|
||||||
|
|
||||||
public CharSequence getOriginalWord() {
|
|
||||||
return mWordComposer.getTypedWord();
|
|
||||||
}
|
|
||||||
|
|
||||||
public SuggestedWords.Builder getAlternatives() {
|
|
||||||
return getTypedSuggestions(mWordComposer);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int hashCode() {
|
|
||||||
return mChosenWord.hashCode();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean equals(Object o) {
|
|
||||||
return o instanceof CharSequence && TextUtils.equals(mChosenWord, (CharSequence)o);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public final UIHandler mHandler = new UIHandler();
|
public final UIHandler mHandler = new UIHandler();
|
||||||
|
|
||||||
|
@ -280,7 +249,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
updateSuggestions();
|
updateSuggestions();
|
||||||
break;
|
break;
|
||||||
case MSG_UPDATE_OLD_SUGGESTIONS:
|
case MSG_UPDATE_OLD_SUGGESTIONS:
|
||||||
setOldSuggestions();
|
mRecorrection.setRecorrectionSuggestions(mVoiceProxy, mCandidateView, mSuggest,
|
||||||
|
mKeyboardSwitcher, mWord, mHasUncommittedTypedChars, mLastSelectionStart,
|
||||||
|
mLastSelectionEnd, mWordSeparators);
|
||||||
break;
|
break;
|
||||||
case MSG_UPDATE_SHIFT_STATE:
|
case MSG_UPDATE_SHIFT_STATE:
|
||||||
switcher.updateShiftState();
|
switcher.updateShiftState();
|
||||||
|
@ -310,7 +281,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
|
|
||||||
public void postUpdateSuggestions() {
|
public void postUpdateSuggestions() {
|
||||||
removeMessages(MSG_UPDATE_SUGGESTIONS);
|
removeMessages(MSG_UPDATE_SUGGESTIONS);
|
||||||
sendMessageDelayed(obtainMessage(MSG_UPDATE_SUGGESTIONS), DELAY_UPDATE_SUGGESTIONS);
|
sendMessageDelayed(obtainMessage(MSG_UPDATE_SUGGESTIONS),
|
||||||
|
mConfigDelayUpdateSuggestions);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void cancelUpdateSuggestions() {
|
public void cancelUpdateSuggestions() {
|
||||||
|
@ -324,7 +296,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
public void postUpdateOldSuggestions() {
|
public void postUpdateOldSuggestions() {
|
||||||
removeMessages(MSG_UPDATE_OLD_SUGGESTIONS);
|
removeMessages(MSG_UPDATE_OLD_SUGGESTIONS);
|
||||||
sendMessageDelayed(obtainMessage(MSG_UPDATE_OLD_SUGGESTIONS),
|
sendMessageDelayed(obtainMessage(MSG_UPDATE_OLD_SUGGESTIONS),
|
||||||
DELAY_UPDATE_OLD_SUGGESTIONS);
|
mConfigDelayUpdateOldSuggestions);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void cancelUpdateOldSuggestions() {
|
public void cancelUpdateOldSuggestions() {
|
||||||
|
@ -333,7 +305,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
|
|
||||||
public void postUpdateShiftKeyState() {
|
public void postUpdateShiftKeyState() {
|
||||||
removeMessages(MSG_UPDATE_SHIFT_STATE);
|
removeMessages(MSG_UPDATE_SHIFT_STATE);
|
||||||
sendMessageDelayed(obtainMessage(MSG_UPDATE_SHIFT_STATE), DELAY_UPDATE_SHIFT_STATE);
|
sendMessageDelayed(obtainMessage(MSG_UPDATE_SHIFT_STATE), mConfigDelayUpdateShiftState);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void cancelUpdateShiftState() {
|
public void cancelUpdateShiftState() {
|
||||||
|
@ -342,7 +314,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
|
|
||||||
public void postUpdateBigramPredictions() {
|
public void postUpdateBigramPredictions() {
|
||||||
removeMessages(MSG_SET_BIGRAM_PREDICTIONS);
|
removeMessages(MSG_SET_BIGRAM_PREDICTIONS);
|
||||||
sendMessageDelayed(obtainMessage(MSG_SET_BIGRAM_PREDICTIONS), DELAY_UPDATE_SUGGESTIONS);
|
sendMessageDelayed(obtainMessage(MSG_SET_BIGRAM_PREDICTIONS),
|
||||||
|
mConfigDelayUpdateSuggestions);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void cancelUpdateBigramPredictions() {
|
public void cancelUpdateBigramPredictions() {
|
||||||
|
@ -398,6 +371,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
SubtypeSwitcher.init(this, prefs);
|
SubtypeSwitcher.init(this, prefs);
|
||||||
KeyboardSwitcher.init(this, prefs);
|
KeyboardSwitcher.init(this, prefs);
|
||||||
AccessibilityUtils.init(this, prefs);
|
AccessibilityUtils.init(this, prefs);
|
||||||
|
Recorrection.init(this, prefs);
|
||||||
|
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
|
|
||||||
|
@ -406,25 +380,21 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mSubtypeSwitcher = SubtypeSwitcher.getInstance();
|
mSubtypeSwitcher = SubtypeSwitcher.getInstance();
|
||||||
mKeyboardSwitcher = KeyboardSwitcher.getInstance();
|
mKeyboardSwitcher = KeyboardSwitcher.getInstance();
|
||||||
mAccessibilityUtils = AccessibilityUtils.getInstance();
|
mAccessibilityUtils = AccessibilityUtils.getInstance();
|
||||||
|
mRecorrection = Recorrection.getInstance();
|
||||||
|
|
||||||
final Resources res = getResources();
|
final Resources res = getResources();
|
||||||
mResources = res;
|
mResources = res;
|
||||||
|
|
||||||
// If the option should not be shown, do not read the recorrection preference
|
|
||||||
// but always use the default setting defined in the resources.
|
|
||||||
if (res.getBoolean(R.bool.config_enable_show_recorrection_option)) {
|
|
||||||
mRecorrectionEnabled = prefs.getBoolean(Settings.PREF_RECORRECTION_ENABLED,
|
|
||||||
res.getBoolean(R.bool.config_default_recorrection_enabled));
|
|
||||||
} else {
|
|
||||||
mRecorrectionEnabled = res.getBoolean(R.bool.config_default_recorrection_enabled);
|
|
||||||
}
|
|
||||||
|
|
||||||
mConfigEnableShowSubtypeSettings = res.getBoolean(
|
mConfigEnableShowSubtypeSettings = res.getBoolean(
|
||||||
R.bool.config_enable_show_subtype_settings);
|
R.bool.config_enable_show_subtype_settings);
|
||||||
mConfigSwipeDownDismissKeyboardEnabled = res.getBoolean(
|
mConfigSwipeDownDismissKeyboardEnabled = res.getBoolean(
|
||||||
R.bool.config_swipe_down_dismiss_keyboard_enabled);
|
R.bool.config_swipe_down_dismiss_keyboard_enabled);
|
||||||
mConfigDelayBeforeFadeoutLanguageOnSpacebar = res.getInteger(
|
mConfigDelayBeforeFadeoutLanguageOnSpacebar = res.getInteger(
|
||||||
R.integer.config_delay_before_fadeout_language_on_spacebar);
|
R.integer.config_delay_before_fadeout_language_on_spacebar);
|
||||||
|
mConfigDelayUpdateSuggestions = res.getInteger(R.integer.config_delay_update_suggestions);
|
||||||
|
mConfigDelayUpdateOldSuggestions = res.getInteger(
|
||||||
|
R.integer.config_delay_update_old_suggestions);
|
||||||
|
mConfigDelayUpdateShiftState = res.getInteger(R.integer.config_delay_update_shift_state);
|
||||||
mConfigDurationOfFadeoutLanguageOnSpacebar = res.getInteger(
|
mConfigDurationOfFadeoutLanguageOnSpacebar = res.getInteger(
|
||||||
R.integer.config_duration_of_fadeout_language_on_spacebar);
|
R.integer.config_duration_of_fadeout_language_on_spacebar);
|
||||||
mConfigFinalFadeoutFactorOfLanguageOnSpacebar = res.getInteger(
|
mConfigFinalFadeoutFactorOfLanguageOnSpacebar = res.getInteger(
|
||||||
|
@ -496,8 +466,14 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mSuggest.setUserBigramDictionary(mUserBigramDictionary);
|
mSuggest.setUserBigramDictionary(mUserBigramDictionary);
|
||||||
|
|
||||||
updateCorrectionMode();
|
updateCorrectionMode();
|
||||||
mWordSeparators = res.getString(R.string.word_separators);
|
mMagicSpaceStrippers = res.getString(R.string.magic_space_stripping_symbols);
|
||||||
mSentenceSeparators = res.getString(R.string.sentence_separators);
|
mMagicSpaceSwappers = res.getString(R.string.magic_space_swapping_symbols);
|
||||||
|
String wordSeparators = mMagicSpaceStrippers + mMagicSpaceSwappers
|
||||||
|
+ res.getString(R.string.magic_space_promoting_symbols);
|
||||||
|
final String notWordSeparators = res.getString(R.string.non_word_separator_symbols);
|
||||||
|
for (int i = notWordSeparators.length() - 1; i >= 0; --i)
|
||||||
|
wordSeparators = wordSeparators.replace(notWordSeparators.substring(i, i + 1), "");
|
||||||
|
mWordSeparators = wordSeparators;
|
||||||
|
|
||||||
Utils.setSystemLocale(res, savedLocale);
|
Utils.setSystemLocale(res, savedLocale);
|
||||||
}
|
}
|
||||||
|
@ -593,7 +569,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mComposing.setLength(0);
|
mComposing.setLength(0);
|
||||||
mHasUncommittedTypedChars = false;
|
mHasUncommittedTypedChars = false;
|
||||||
mDeleteCount = 0;
|
mDeleteCount = 0;
|
||||||
mJustAddedAutoSpace = false;
|
mJustAddedMagicSpace = false;
|
||||||
|
|
||||||
loadSettings(attribute);
|
loadSettings(attribute);
|
||||||
if (mSubtypeSwitcher.isKeyboardMode()) {
|
if (mSubtypeSwitcher.isKeyboardMode()) {
|
||||||
|
@ -615,7 +591,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
inputView.setProximityCorrectionEnabled(true);
|
inputView.setProximityCorrectionEnabled(true);
|
||||||
inputView.setAccessibilityEnabled(accessibilityEnabled);
|
inputView.setAccessibilityEnabled(accessibilityEnabled);
|
||||||
// If we just entered a text field, maybe it has some old text that requires correction
|
// If we just entered a text field, maybe it has some old text that requires correction
|
||||||
checkRecorrectionOnStart();
|
mRecorrection.checkRecorrectionOnStart();
|
||||||
inputView.setForeground(true);
|
inputView.setForeground(true);
|
||||||
|
|
||||||
voiceIme.onStartInputView(inputView.getWindowToken());
|
voiceIme.onStartInputView(inputView.getWindowToken());
|
||||||
|
@ -628,7 +604,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
return;
|
return;
|
||||||
final int inputType = attribute.inputType;
|
final int inputType = attribute.inputType;
|
||||||
final int variation = inputType & InputType.TYPE_MASK_VARIATION;
|
final int variation = inputType & InputType.TYPE_MASK_VARIATION;
|
||||||
mAutoSpace = false;
|
mShouldInsertMagicSpace = false;
|
||||||
mInputTypeNoAutoCorrect = false;
|
mInputTypeNoAutoCorrect = false;
|
||||||
mIsSettingsSuggestionStripOn = false;
|
mIsSettingsSuggestionStripOn = false;
|
||||||
mApplicationSpecifiedCompletionOn = false;
|
mApplicationSpecifiedCompletionOn = false;
|
||||||
|
@ -643,9 +619,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
if (InputTypeCompatUtils.isEmailVariation(variation)
|
if (InputTypeCompatUtils.isEmailVariation(variation)
|
||||||
|| variation == InputType.TYPE_TEXT_VARIATION_PERSON_NAME) {
|
|| variation == InputType.TYPE_TEXT_VARIATION_PERSON_NAME) {
|
||||||
mAutoSpace = false;
|
mShouldInsertMagicSpace = false;
|
||||||
} else {
|
} else {
|
||||||
mAutoSpace = true;
|
mShouldInsertMagicSpace = true;
|
||||||
}
|
}
|
||||||
if (InputTypeCompatUtils.isEmailVariation(variation)) {
|
if (InputTypeCompatUtils.isEmailVariation(variation)) {
|
||||||
mIsSettingsSuggestionStripOn = false;
|
mIsSettingsSuggestionStripOn = false;
|
||||||
|
@ -678,34 +654,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void checkRecorrectionOnStart() {
|
|
||||||
if (!mRecorrectionEnabled) return;
|
|
||||||
|
|
||||||
final InputConnection ic = getCurrentInputConnection();
|
|
||||||
if (ic == null) return;
|
|
||||||
// There could be a pending composing span. Clean it up first.
|
|
||||||
ic.finishComposingText();
|
|
||||||
|
|
||||||
if (isShowingSuggestionsStrip() && isSuggestionsRequested()) {
|
|
||||||
// First get the cursor position. This is required by setOldSuggestions(), so that
|
|
||||||
// it can pass the correct range to setComposingRegion(). At this point, we don't
|
|
||||||
// have valid values for mLastSelectionStart/End because onUpdateSelection() has
|
|
||||||
// not been called yet.
|
|
||||||
ExtractedTextRequest etr = new ExtractedTextRequest();
|
|
||||||
etr.token = 0; // anything is fine here
|
|
||||||
ExtractedText et = ic.getExtractedText(etr, 0);
|
|
||||||
if (et == null) return;
|
|
||||||
|
|
||||||
mLastSelectionStart = et.startOffset + et.selectionStart;
|
|
||||||
mLastSelectionEnd = et.startOffset + et.selectionEnd;
|
|
||||||
|
|
||||||
// Then look for possible corrections in a delayed fashion
|
|
||||||
if (!TextUtils.isEmpty(et.text) && isCursorTouchingWord()) {
|
|
||||||
mHandler.postUpdateOldSuggestions();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFinishInput() {
|
public void onFinishInput() {
|
||||||
super.onFinishInput();
|
super.onFinishInput();
|
||||||
|
@ -769,7 +717,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
// If the composing span has been cleared, save the typed word in the history for
|
// If the composing span has been cleared, save the typed word in the history for
|
||||||
// recorrection before we reset the candidate strip. Then, we'll be able to show
|
// recorrection before we reset the candidate strip. Then, we'll be able to show
|
||||||
// suggestions for recorrection right away.
|
// suggestions for recorrection right away.
|
||||||
saveWordInHistory(mComposing);
|
mRecorrection.saveWordInHistory(mWord, mComposing);
|
||||||
}
|
}
|
||||||
mComposing.setLength(0);
|
mComposing.setLength(0);
|
||||||
mHasUncommittedTypedChars = false;
|
mHasUncommittedTypedChars = false;
|
||||||
|
@ -789,7 +737,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
if (TextEntryState.isAcceptedDefault() || TextEntryState.isSpaceAfterPicked()) {
|
if (TextEntryState.isAcceptedDefault() || TextEntryState.isSpaceAfterPicked()) {
|
||||||
if (TextEntryState.isAcceptedDefault())
|
if (TextEntryState.isAcceptedDefault())
|
||||||
TextEntryState.reset();
|
TextEntryState.reset();
|
||||||
mJustAddedAutoSpace = false; // The user moved the cursor.
|
mJustAddedMagicSpace = false; // The user moved the cursor.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mJustAccepted = false;
|
mJustAccepted = false;
|
||||||
|
@ -799,34 +747,15 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mLastSelectionStart = newSelStart;
|
mLastSelectionStart = newSelStart;
|
||||||
mLastSelectionEnd = newSelEnd;
|
mLastSelectionEnd = newSelEnd;
|
||||||
|
|
||||||
if (mRecorrectionEnabled && isShowingSuggestionsStrip()) {
|
mRecorrection.updateRecorrectionSelection(mKeyboardSwitcher,
|
||||||
// Don't look for corrections if the keyboard is not visible
|
mCandidateView, candidatesStart, candidatesEnd, newSelStart,
|
||||||
if (mKeyboardSwitcher.isInputViewShown()) {
|
newSelEnd, oldSelStart, mLastSelectionStart,
|
||||||
// Check if we should go in or out of correction mode.
|
mLastSelectionEnd, mHasUncommittedTypedChars);
|
||||||
if (isSuggestionsRequested()
|
}
|
||||||
&& (candidatesStart == candidatesEnd || newSelStart != oldSelStart
|
|
||||||
|| TextEntryState.isRecorrecting())
|
public void setLastSelection(int start, int end) {
|
||||||
&& (newSelStart < newSelEnd - 1 || !mHasUncommittedTypedChars)) {
|
mLastSelectionStart = start;
|
||||||
if (isCursorTouchingWord() || mLastSelectionStart < mLastSelectionEnd) {
|
mLastSelectionEnd = end;
|
||||||
mHandler.cancelUpdateBigramPredictions();
|
|
||||||
mHandler.postUpdateOldSuggestions();
|
|
||||||
} else {
|
|
||||||
abortRecorrection(false);
|
|
||||||
// If showing the "touch again to save" hint, do not replace it. Else,
|
|
||||||
// show the bigrams if we are at the end of the text, punctuation otherwise.
|
|
||||||
if (mCandidateView != null
|
|
||||||
&& !mCandidateView.isShowingAddToDictionaryHint()) {
|
|
||||||
InputConnection ic = getCurrentInputConnection();
|
|
||||||
if (null == ic || !TextUtils.isEmpty(ic.getTextAfterCursor(1, 0))) {
|
|
||||||
if (!isShowingPunctuationList()) setPunctuationSuggestions();
|
|
||||||
} else {
|
|
||||||
mHandler.postUpdateBigramPredictions();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -839,7 +768,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void onExtractedTextClicked() {
|
public void onExtractedTextClicked() {
|
||||||
if (mRecorrectionEnabled && isSuggestionsRequested()) return;
|
if (mRecorrection.isRecorrectionEnabled() && isSuggestionsRequested()) return;
|
||||||
|
|
||||||
super.onExtractedTextClicked();
|
super.onExtractedTextClicked();
|
||||||
}
|
}
|
||||||
|
@ -855,7 +784,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void onExtractedCursorMovement(int dx, int dy) {
|
public void onExtractedCursorMovement(int dx, int dy) {
|
||||||
if (mRecorrectionEnabled && isSuggestionsRequested()) return;
|
if (mRecorrection.isRecorrectionEnabled() && isSuggestionsRequested()) return;
|
||||||
|
|
||||||
super.onExtractedCursorMovement(dx, dy);
|
super.onExtractedCursorMovement(dx, dy);
|
||||||
}
|
}
|
||||||
|
@ -871,7 +800,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mOptionsDialog = null;
|
mOptionsDialog = null;
|
||||||
}
|
}
|
||||||
mVoiceProxy.hideVoiceWindow(mConfigurationChanging);
|
mVoiceProxy.hideVoiceWindow(mConfigurationChanging);
|
||||||
mWordHistory.clear();
|
mRecorrection.clearWordsInHistory();
|
||||||
super.hideWindow();
|
super.hideWindow();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1030,39 +959,22 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void swapPunctuationAndSpace() {
|
private void swapSwapperAndSpace() {
|
||||||
final InputConnection ic = getCurrentInputConnection();
|
final InputConnection ic = getCurrentInputConnection();
|
||||||
if (ic == null) return;
|
if (ic == null) return;
|
||||||
CharSequence lastTwo = ic.getTextBeforeCursor(2, 0);
|
CharSequence lastTwo = ic.getTextBeforeCursor(2, 0);
|
||||||
|
// It is guaranteed lastTwo.charAt(1) is a swapper - else this method is not called.
|
||||||
if (lastTwo != null && lastTwo.length() == 2
|
if (lastTwo != null && lastTwo.length() == 2
|
||||||
&& lastTwo.charAt(0) == Keyboard.CODE_SPACE
|
&& lastTwo.charAt(0) == Keyboard.CODE_SPACE) {
|
||||||
&& isSentenceSeparator(lastTwo.charAt(1))) {
|
|
||||||
ic.beginBatchEdit();
|
ic.beginBatchEdit();
|
||||||
ic.deleteSurroundingText(2, 0);
|
ic.deleteSurroundingText(2, 0);
|
||||||
ic.commitText(lastTwo.charAt(1) + " ", 1);
|
ic.commitText(lastTwo.charAt(1) + " ", 1);
|
||||||
ic.endBatchEdit();
|
ic.endBatchEdit();
|
||||||
mKeyboardSwitcher.updateShiftState();
|
mKeyboardSwitcher.updateShiftState();
|
||||||
mJustAddedAutoSpace = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void reswapPeriodAndSpace() {
|
private void maybeDoubleSpace() {
|
||||||
final InputConnection ic = getCurrentInputConnection();
|
|
||||||
if (ic == null) return;
|
|
||||||
CharSequence lastThree = ic.getTextBeforeCursor(3, 0);
|
|
||||||
if (lastThree != null && lastThree.length() == 3
|
|
||||||
&& lastThree.charAt(0) == Keyboard.CODE_PERIOD
|
|
||||||
&& lastThree.charAt(1) == Keyboard.CODE_SPACE
|
|
||||||
&& lastThree.charAt(2) == Keyboard.CODE_PERIOD) {
|
|
||||||
ic.beginBatchEdit();
|
|
||||||
ic.deleteSurroundingText(3, 0);
|
|
||||||
ic.commitText(" ..", 1);
|
|
||||||
ic.endBatchEdit();
|
|
||||||
mKeyboardSwitcher.updateShiftState();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void doubleSpace() {
|
|
||||||
if (mCorrectionMode == Suggest.CORRECTION_NONE) return;
|
if (mCorrectionMode == Suggest.CORRECTION_NONE) return;
|
||||||
final InputConnection ic = getCurrentInputConnection();
|
final InputConnection ic = getCurrentInputConnection();
|
||||||
if (ic == null) return;
|
if (ic == null) return;
|
||||||
|
@ -1078,7 +990,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
ic.commitText(". ", 1);
|
ic.commitText(". ", 1);
|
||||||
ic.endBatchEdit();
|
ic.endBatchEdit();
|
||||||
mKeyboardSwitcher.updateShiftState();
|
mKeyboardSwitcher.updateShiftState();
|
||||||
mJustAddedAutoSpace = true;
|
|
||||||
} else {
|
} else {
|
||||||
mHandler.startDoubleSpacesTimer();
|
mHandler.startDoubleSpacesTimer();
|
||||||
}
|
}
|
||||||
|
@ -1205,9 +1116,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
handleTab();
|
handleTab();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (primaryCode != Keyboard.CODE_ENTER) {
|
|
||||||
mJustAddedAutoSpace = false;
|
|
||||||
}
|
|
||||||
if (isWordSeparator(primaryCode)) {
|
if (isWordSeparator(primaryCode)) {
|
||||||
handleSeparator(primaryCode, x, y);
|
handleSeparator(primaryCode, x, y);
|
||||||
} else {
|
} else {
|
||||||
|
@ -1224,7 +1132,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mVoiceProxy.commitVoiceInput();
|
mVoiceProxy.commitVoiceInput();
|
||||||
InputConnection ic = getCurrentInputConnection();
|
InputConnection ic = getCurrentInputConnection();
|
||||||
if (ic == null) return;
|
if (ic == null) return;
|
||||||
abortRecorrection(false);
|
mRecorrection.abortRecorrection(false);
|
||||||
ic.beginBatchEdit();
|
ic.beginBatchEdit();
|
||||||
commitTyped(ic);
|
commitTyped(ic);
|
||||||
maybeRemovePreviousPeriod(text);
|
maybeRemovePreviousPeriod(text);
|
||||||
|
@ -1232,7 +1140,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
ic.endBatchEdit();
|
ic.endBatchEdit();
|
||||||
mKeyboardSwitcher.updateShiftState();
|
mKeyboardSwitcher.updateShiftState();
|
||||||
mKeyboardSwitcher.onKey(Keyboard.CODE_DUMMY);
|
mKeyboardSwitcher.onKey(Keyboard.CODE_DUMMY);
|
||||||
mJustAddedAutoSpace = false;
|
mJustAddedMagicSpace = false;
|
||||||
mEnteredText = text;
|
mEnteredText = text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1330,20 +1238,15 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void abortRecorrection(boolean force) {
|
|
||||||
if (force || TextEntryState.isRecorrecting()) {
|
|
||||||
TextEntryState.onAbortRecorrection();
|
|
||||||
setCandidatesViewShown(isCandidateStripVisible());
|
|
||||||
getCurrentInputConnection().finishComposingText();
|
|
||||||
clearSuggestions();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void handleCharacter(int primaryCode, int[] keyCodes, int x, int y) {
|
private void handleCharacter(int primaryCode, int[] keyCodes, int x, int y) {
|
||||||
mVoiceProxy.handleCharacter();
|
mVoiceProxy.handleCharacter();
|
||||||
|
|
||||||
if (mLastSelectionStart == mLastSelectionEnd && TextEntryState.isRecorrecting()) {
|
if (mJustAddedMagicSpace && isMagicSpaceStripper(primaryCode)) {
|
||||||
abortRecorrection(false);
|
removeTrailingSpace();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mLastSelectionStart == mLastSelectionEnd) {
|
||||||
|
mRecorrection.abortRecorrection(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
int code = primaryCode;
|
int code = primaryCode;
|
||||||
|
@ -1351,7 +1254,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
if (!mHasUncommittedTypedChars) {
|
if (!mHasUncommittedTypedChars) {
|
||||||
mHasUncommittedTypedChars = true;
|
mHasUncommittedTypedChars = true;
|
||||||
mComposing.setLength(0);
|
mComposing.setLength(0);
|
||||||
saveWordInHistory(mBestWord);
|
mRecorrection.saveWordInHistory(mWord, mBestWord);
|
||||||
mWord.reset();
|
mWord.reset();
|
||||||
clearSuggestions();
|
clearSuggestions();
|
||||||
}
|
}
|
||||||
|
@ -1394,6 +1297,12 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
} else {
|
} else {
|
||||||
sendKeyChar((char)code);
|
sendKeyChar((char)code);
|
||||||
}
|
}
|
||||||
|
if (mJustAddedMagicSpace && isMagicSpaceSwapper(primaryCode)) {
|
||||||
|
swapSwapperAndSpace();
|
||||||
|
} else {
|
||||||
|
mJustAddedMagicSpace = false;
|
||||||
|
}
|
||||||
|
|
||||||
switcher.updateShiftState();
|
switcher.updateShiftState();
|
||||||
if (LatinIME.PERF_DEBUG) measureCps();
|
if (LatinIME.PERF_DEBUG) measureCps();
|
||||||
TextEntryState.typedCharacter((char) code, isWordSeparator(code), x, y);
|
TextEntryState.typedCharacter((char) code, isWordSeparator(code), x, y);
|
||||||
|
@ -1413,43 +1322,39 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
final InputConnection ic = getCurrentInputConnection();
|
final InputConnection ic = getCurrentInputConnection();
|
||||||
if (ic != null) {
|
if (ic != null) {
|
||||||
ic.beginBatchEdit();
|
ic.beginBatchEdit();
|
||||||
abortRecorrection(false);
|
mRecorrection.abortRecorrection(false);
|
||||||
}
|
}
|
||||||
if (mHasUncommittedTypedChars) {
|
if (mHasUncommittedTypedChars) {
|
||||||
// In certain languages where single quote is a separator, it's better
|
// In certain languages where single quote is a separator, it's better
|
||||||
// not to auto correct, but accept the typed word. For instance,
|
// not to auto correct, but accept the typed word. For instance,
|
||||||
// in Italian dov' should not be expanded to dove' because the elision
|
// in Italian dov' should not be expanded to dove' because the elision
|
||||||
// requires the last vowel to be removed.
|
// requires the last vowel to be removed.
|
||||||
if (mAutoCorrectOn && primaryCode != '\'') {
|
if (mAutoCorrectOn && primaryCode != Keyboard.CODE_SINGLE_QUOTE) {
|
||||||
pickedDefault = pickDefaultSuggestion(primaryCode);
|
pickedDefault = pickDefaultSuggestion(primaryCode);
|
||||||
// Picked the suggestion by the space key. We consider this
|
|
||||||
// as "added an auto space".
|
|
||||||
if (primaryCode == Keyboard.CODE_SPACE) {
|
|
||||||
mJustAddedAutoSpace = true;
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
commitTyped(ic);
|
commitTyped(ic);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (mJustAddedAutoSpace && primaryCode == Keyboard.CODE_ENTER) {
|
|
||||||
removeTrailingSpace();
|
|
||||||
mJustAddedAutoSpace = false;
|
|
||||||
}
|
|
||||||
sendKeyChar((char)primaryCode);
|
|
||||||
|
|
||||||
// Handle the case of ". ." -> " .." with auto-space if necessary
|
if (mJustAddedMagicSpace) {
|
||||||
// before changing the TextEntryState.
|
if (isMagicSpaceSwapper(primaryCode)) {
|
||||||
if (TextEntryState.isPunctuationAfterAccepted() && primaryCode == Keyboard.CODE_PERIOD) {
|
sendKeyChar((char)primaryCode);
|
||||||
reswapPeriodAndSpace();
|
swapSwapperAndSpace();
|
||||||
|
} else {
|
||||||
|
if (isMagicSpaceStripper(primaryCode)) removeTrailingSpace();
|
||||||
|
sendKeyChar((char)primaryCode);
|
||||||
|
mJustAddedMagicSpace = false;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
sendKeyChar((char)primaryCode);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isSuggestionsRequested() && primaryCode == Keyboard.CODE_SPACE) {
|
||||||
|
maybeDoubleSpace();
|
||||||
}
|
}
|
||||||
|
|
||||||
TextEntryState.typedCharacter((char) primaryCode, true, x, y);
|
TextEntryState.typedCharacter((char) primaryCode, true, x, y);
|
||||||
|
|
||||||
if (TextEntryState.isPunctuationAfterAccepted() && primaryCode != Keyboard.CODE_ENTER) {
|
|
||||||
swapPunctuationAndSpace();
|
|
||||||
} else if (isSuggestionsRequested() && primaryCode == Keyboard.CODE_SPACE) {
|
|
||||||
doubleSpace();
|
|
||||||
}
|
|
||||||
if (pickedDefault) {
|
if (pickedDefault) {
|
||||||
CharSequence typedWord = mWord.getTypedWord();
|
CharSequence typedWord = mWord.getTypedWord();
|
||||||
TextEntryState.backToAcceptedDefault(typedWord);
|
TextEntryState.backToAcceptedDefault(typedWord);
|
||||||
|
@ -1486,38 +1391,22 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
inputView.closing();
|
inputView.closing();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void saveWordInHistory(CharSequence result) {
|
public boolean isSuggestionsRequested() {
|
||||||
if (mWord.size() <= 1) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// Skip if result is null. It happens in some edge case.
|
|
||||||
if (TextUtils.isEmpty(result)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Make a copy of the CharSequence, since it is/could be a mutable CharSequence
|
|
||||||
final String resultCopy = result.toString();
|
|
||||||
WordAlternatives entry = new WordAlternatives(resultCopy,
|
|
||||||
new WordComposer(mWord));
|
|
||||||
mWordHistory.add(entry);
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean isSuggestionsRequested() {
|
|
||||||
return mIsSettingsSuggestionStripOn
|
return mIsSettingsSuggestionStripOn
|
||||||
&& (mCorrectionMode > 0 || isShowingSuggestionsStrip());
|
&& (mCorrectionMode > 0 || isShowingSuggestionsStrip());
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isShowingPunctuationList() {
|
public boolean isShowingPunctuationList() {
|
||||||
return mSuggestPuncList == mCandidateView.getSuggestions();
|
return mSuggestPuncList == mCandidateView.getSuggestions();
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isShowingSuggestionsStrip() {
|
public boolean isShowingSuggestionsStrip() {
|
||||||
return (mSuggestionVisibility == SUGGESTION_VISIBILILTY_SHOW_VALUE)
|
return (mSuggestionVisibility == SUGGESTION_VISIBILILTY_SHOW_VALUE)
|
||||||
|| (mSuggestionVisibility == SUGGESTION_VISIBILILTY_SHOW_ONLY_PORTRAIT_VALUE
|
|| (mSuggestionVisibility == SUGGESTION_VISIBILILTY_SHOW_ONLY_PORTRAIT_VALUE
|
||||||
&& mOrientation == Configuration.ORIENTATION_PORTRAIT);
|
&& mOrientation == Configuration.ORIENTATION_PORTRAIT);
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isCandidateStripVisible() {
|
public boolean isCandidateStripVisible() {
|
||||||
if (mCandidateView == null)
|
if (mCandidateView == null)
|
||||||
return false;
|
return false;
|
||||||
if (mCandidateView.isShowingAddToDictionaryHint() || TextEntryState.isRecorrecting())
|
if (mCandidateView.isShowingAddToDictionaryHint() || TextEntryState.isRecorrecting())
|
||||||
|
@ -1579,16 +1468,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
showSuggestions(mWord);
|
showSuggestions(mWord);
|
||||||
}
|
}
|
||||||
|
|
||||||
private SuggestedWords.Builder getTypedSuggestions(WordComposer word) {
|
|
||||||
return mSuggest.getSuggestedWordBuilder(mKeyboardSwitcher.getInputView(), word, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void showCorrections(WordAlternatives alternatives) {
|
|
||||||
SuggestedWords.Builder builder = alternatives.getAlternatives();
|
|
||||||
builder.setTypedWordValid(false).setHasMinimalSuggestion(false);
|
|
||||||
showSuggestions(builder.build(), alternatives.getOriginalWord());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void showSuggestions(WordComposer word) {
|
private void showSuggestions(WordComposer word) {
|
||||||
// TODO: May need a better way of retrieving previous word
|
// TODO: May need a better way of retrieving previous word
|
||||||
CharSequence prevWord = EditingUtils.getPreviousWord(getCurrentInputConnection(),
|
CharSequence prevWord = EditingUtils.getPreviousWord(getCurrentInputConnection(),
|
||||||
|
@ -1627,7 +1506,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
showSuggestions(builder.build(), typedWord);
|
showSuggestions(builder.build(), typedWord);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showSuggestions(SuggestedWords suggestedWords, CharSequence typedWord) {
|
public void showSuggestions(SuggestedWords suggestedWords, CharSequence typedWord) {
|
||||||
setSuggestions(suggestedWords);
|
setSuggestions(suggestedWords);
|
||||||
if (suggestedWords.size() > 0) {
|
if (suggestedWords.size() > 0) {
|
||||||
if (Utils.shouldBlockedBySafetyNetForAutoCorrection(suggestedWords, mSuggest)) {
|
if (Utils.shouldBlockedBySafetyNetForAutoCorrection(suggestedWords, mSuggest)) {
|
||||||
|
@ -1694,10 +1573,17 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
// So, LatinImeLogger logs "" as a user's input.
|
// So, LatinImeLogger logs "" as a user's input.
|
||||||
LatinImeLogger.logOnManualSuggestion(
|
LatinImeLogger.logOnManualSuggestion(
|
||||||
"", suggestion.toString(), index, suggestions.mWords);
|
"", suggestion.toString(), index, suggestions.mWords);
|
||||||
|
// Find out whether the previous character is a space. If it is, as a special case
|
||||||
|
// for punctuation entered through the suggestion strip, it should be considered
|
||||||
|
// a magic space even if it was a normal space. This is meant to help in case the user
|
||||||
|
// pressed space on purpose of displaying the suggestion strip punctuation.
|
||||||
final char primaryCode = suggestion.charAt(0);
|
final char primaryCode = suggestion.charAt(0);
|
||||||
|
final int toLeft = (ic == null) ? 0 : ic.getTextBeforeCursor(1, 0).charAt(0);
|
||||||
|
if (Keyboard.CODE_SPACE == toLeft) mJustAddedMagicSpace = true;
|
||||||
onCodeInput(primaryCode, new int[] { primaryCode },
|
onCodeInput(primaryCode, new int[] { primaryCode },
|
||||||
KeyboardActionListener.NOT_A_TOUCH_COORDINATE,
|
KeyboardActionListener.NOT_A_TOUCH_COORDINATE,
|
||||||
KeyboardActionListener.NOT_A_TOUCH_COORDINATE);
|
KeyboardActionListener.NOT_A_TOUCH_COORDINATE);
|
||||||
|
mJustAddedMagicSpace = false;
|
||||||
if (ic != null) {
|
if (ic != null) {
|
||||||
ic.endBatchEdit();
|
ic.endBatchEdit();
|
||||||
}
|
}
|
||||||
|
@ -1720,9 +1606,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
index, suggestions.mWords);
|
index, suggestions.mWords);
|
||||||
TextEntryState.acceptedSuggestion(mComposing.toString(), suggestion);
|
TextEntryState.acceptedSuggestion(mComposing.toString(), suggestion);
|
||||||
// Follow it with a space
|
// Follow it with a space
|
||||||
if (mAutoSpace && !recorrecting) {
|
if (mShouldInsertMagicSpace && !recorrecting) {
|
||||||
sendSpace();
|
sendMagicSpace();
|
||||||
mJustAddedAutoSpace = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// We should show the hint if the user pressed the first entry AND either:
|
// We should show the hint if the user pressed the first entry AND either:
|
||||||
|
@ -1776,91 +1661,11 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
mVoiceProxy.rememberReplacedWord(suggestion, mWordSeparators);
|
mVoiceProxy.rememberReplacedWord(suggestion, mWordSeparators);
|
||||||
ic.commitText(suggestion, 1);
|
ic.commitText(suggestion, 1);
|
||||||
}
|
}
|
||||||
saveWordInHistory(suggestion);
|
mRecorrection.saveWordInHistory(mWord, suggestion);
|
||||||
mHasUncommittedTypedChars = false;
|
mHasUncommittedTypedChars = false;
|
||||||
mCommittedLength = suggestion.length();
|
mCommittedLength = suggestion.length();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Tries to apply any typed alternatives for the word if we have any cached alternatives,
|
|
||||||
* otherwise tries to find new corrections and completions for the word.
|
|
||||||
* @param touching The word that the cursor is touching, with position information
|
|
||||||
* @return true if an alternative was found, false otherwise.
|
|
||||||
*/
|
|
||||||
private boolean applyTypedAlternatives(EditingUtils.SelectedWord touching) {
|
|
||||||
// If we didn't find a match, search for result in typed word history
|
|
||||||
WordComposer foundWord = null;
|
|
||||||
WordAlternatives alternatives = null;
|
|
||||||
// Search old suggestions to suggest re-corrected suggestions.
|
|
||||||
for (WordAlternatives entry : mWordHistory) {
|
|
||||||
if (TextUtils.equals(entry.getChosenWord(), touching.mWord)) {
|
|
||||||
foundWord = entry.mWordComposer;
|
|
||||||
alternatives = entry;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// If we didn't find a match, at least suggest corrections as re-corrected suggestions.
|
|
||||||
if (foundWord == null
|
|
||||||
&& (AutoCorrection.isValidWord(
|
|
||||||
mSuggest.getUnigramDictionaries(), touching.mWord, true))) {
|
|
||||||
foundWord = new WordComposer();
|
|
||||||
for (int i = 0; i < touching.mWord.length(); i++) {
|
|
||||||
foundWord.add(touching.mWord.charAt(i), new int[] {
|
|
||||||
touching.mWord.charAt(i)
|
|
||||||
}, WordComposer.NOT_A_COORDINATE, WordComposer.NOT_A_COORDINATE);
|
|
||||||
}
|
|
||||||
foundWord.setFirstCharCapitalized(Character.isUpperCase(touching.mWord.charAt(0)));
|
|
||||||
}
|
|
||||||
// Found a match, show suggestions
|
|
||||||
if (foundWord != null || alternatives != null) {
|
|
||||||
if (alternatives == null) {
|
|
||||||
alternatives = new WordAlternatives(touching.mWord, foundWord);
|
|
||||||
}
|
|
||||||
showCorrections(alternatives);
|
|
||||||
if (foundWord != null) {
|
|
||||||
mWord = new WordComposer(foundWord);
|
|
||||||
} else {
|
|
||||||
mWord.reset();
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setOldSuggestions() {
|
|
||||||
if (!InputConnectionCompatUtils.RECORRECTION_SUPPORTED) return;
|
|
||||||
mVoiceProxy.setShowingVoiceSuggestions(false);
|
|
||||||
if (mCandidateView != null && mCandidateView.isShowingAddToDictionaryHint()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
InputConnection ic = getCurrentInputConnection();
|
|
||||||
if (ic == null) return;
|
|
||||||
if (!mHasUncommittedTypedChars) {
|
|
||||||
// Extract the selected or touching text
|
|
||||||
EditingUtils.SelectedWord touching = EditingUtils.getWordAtCursorOrSelection(ic,
|
|
||||||
mLastSelectionStart, mLastSelectionEnd, mWordSeparators);
|
|
||||||
|
|
||||||
if (touching != null && touching.mWord.length() > 1) {
|
|
||||||
ic.beginBatchEdit();
|
|
||||||
|
|
||||||
if (!mVoiceProxy.applyVoiceAlternatives(touching)
|
|
||||||
&& !applyTypedAlternatives(touching)) {
|
|
||||||
abortRecorrection(true);
|
|
||||||
} else {
|
|
||||||
TextEntryState.selectedForRecorrection();
|
|
||||||
InputConnectionCompatUtils.underlineWord(ic, touching);
|
|
||||||
}
|
|
||||||
|
|
||||||
ic.endBatchEdit();
|
|
||||||
} else {
|
|
||||||
abortRecorrection(true);
|
|
||||||
setPunctuationSuggestions(); // Show the punctuation suggestions list
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
abortRecorrection(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static final WordComposer sEmptyWordComposer = new WordComposer();
|
private static final WordComposer sEmptyWordComposer = new WordComposer();
|
||||||
private void updateBigramPredictions() {
|
private void updateBigramPredictions() {
|
||||||
if (mSuggest == null || !isSuggestionsRequested())
|
if (mSuggest == null || !isSuggestionsRequested())
|
||||||
|
@ -1885,7 +1690,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setPunctuationSuggestions() {
|
public void setPunctuationSuggestions() {
|
||||||
setSuggestions(mSuggestPuncList);
|
setSuggestions(mSuggestPuncList);
|
||||||
setCandidatesViewShown(isCandidateStripVisible());
|
setCandidatesViewShown(isCandidateStripVisible());
|
||||||
}
|
}
|
||||||
|
@ -1925,15 +1730,18 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mUserBigramDictionary != null) {
|
if (mUserBigramDictionary != null) {
|
||||||
|
// We don't want to register as bigrams words separated by a separator.
|
||||||
|
// For example "I will, and you too" : we don't want the pair ("will" "and") to be
|
||||||
|
// a bigram.
|
||||||
CharSequence prevWord = EditingUtils.getPreviousWord(getCurrentInputConnection(),
|
CharSequence prevWord = EditingUtils.getPreviousWord(getCurrentInputConnection(),
|
||||||
mSentenceSeparators);
|
mWordSeparators);
|
||||||
if (!TextUtils.isEmpty(prevWord)) {
|
if (!TextUtils.isEmpty(prevWord)) {
|
||||||
mUserBigramDictionary.addBigrams(prevWord.toString(), suggestion.toString());
|
mUserBigramDictionary.addBigrams(prevWord.toString(), suggestion.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isCursorTouchingWord() {
|
public boolean isCursorTouchingWord() {
|
||||||
InputConnection ic = getCurrentInputConnection();
|
InputConnection ic = getCurrentInputConnection();
|
||||||
if (ic == null) return false;
|
if (ic == null) return false;
|
||||||
CharSequence toLeft = ic.getTextBeforeCursor(1, 0);
|
CharSequence toLeft = ic.getTextBeforeCursor(1, 0);
|
||||||
|
@ -2001,12 +1809,17 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
return separators.contains(String.valueOf((char)code));
|
return separators.contains(String.valueOf((char)code));
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isSentenceSeparator(int code) {
|
private boolean isMagicSpaceStripper(int code) {
|
||||||
return mSentenceSeparators.contains(String.valueOf((char)code));
|
return mMagicSpaceStrippers.contains(String.valueOf((char)code));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendSpace() {
|
private boolean isMagicSpaceSwapper(int code) {
|
||||||
|
return mMagicSpaceSwappers.contains(String.valueOf((char)code));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void sendMagicSpace() {
|
||||||
sendKeyChar((char)Keyboard.CODE_SPACE);
|
sendKeyChar((char)Keyboard.CODE_SPACE);
|
||||||
|
mJustAddedMagicSpace = true;
|
||||||
mKeyboardSwitcher.updateShiftState();
|
mKeyboardSwitcher.updateShiftState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2402,7 +2215,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
p.println(" mCorrectionMode=" + mCorrectionMode);
|
p.println(" mCorrectionMode=" + mCorrectionMode);
|
||||||
p.println(" mHasUncommittedTypedChars=" + mHasUncommittedTypedChars);
|
p.println(" mHasUncommittedTypedChars=" + mHasUncommittedTypedChars);
|
||||||
p.println(" mAutoCorrectOn=" + mAutoCorrectOn);
|
p.println(" mAutoCorrectOn=" + mAutoCorrectOn);
|
||||||
p.println(" mAutoSpace=" + mAutoSpace);
|
p.println(" mShouldInsertMagicSpace=" + mShouldInsertMagicSpace);
|
||||||
p.println(" mApplicationSpecifiedCompletionOn=" + mApplicationSpecifiedCompletionOn);
|
p.println(" mApplicationSpecifiedCompletionOn=" + mApplicationSpecifiedCompletionOn);
|
||||||
p.println(" TextEntryState.state=" + TextEntryState.getState());
|
p.println(" TextEntryState.state=" + TextEntryState.getState());
|
||||||
p.println(" mSoundOn=" + mSoundOn);
|
p.println(" mSoundOn=" + mSoundOn);
|
||||||
|
|
255
java/src/com/android/inputmethod/latin/Recorrection.java
Normal file
255
java/src/com/android/inputmethod/latin/Recorrection.java
Normal file
|
@ -0,0 +1,255 @@
|
||||||
|
/*
|
||||||
|
* 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 com.android.inputmethod.compat.InputConnectionCompatUtils;
|
||||||
|
import com.android.inputmethod.deprecated.VoiceProxy;
|
||||||
|
import com.android.inputmethod.keyboard.KeyboardSwitcher;
|
||||||
|
|
||||||
|
import android.content.SharedPreferences;
|
||||||
|
import android.content.res.Resources;
|
||||||
|
import android.text.TextUtils;
|
||||||
|
import android.view.inputmethod.ExtractedText;
|
||||||
|
import android.view.inputmethod.ExtractedTextRequest;
|
||||||
|
import android.view.inputmethod.InputConnection;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Manager of re-correction functionalities
|
||||||
|
*/
|
||||||
|
public class Recorrection {
|
||||||
|
private static final Recorrection sInstance = new Recorrection();
|
||||||
|
|
||||||
|
private LatinIME mService;
|
||||||
|
private boolean mRecorrectionEnabled = false;
|
||||||
|
private final ArrayList<WordAlternatives> mWordHistory = new ArrayList<WordAlternatives>();
|
||||||
|
|
||||||
|
public static Recorrection getInstance() {
|
||||||
|
return sInstance;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void init(LatinIME context, SharedPreferences prefs) {
|
||||||
|
if (context == null || prefs == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
sInstance.initInternal(context, prefs);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Recorrection() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isRecorrectionEnabled() {
|
||||||
|
return mRecorrectionEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initInternal(LatinIME context, SharedPreferences prefs) {
|
||||||
|
final Resources res = context.getResources();
|
||||||
|
// If the option should not be shown, do not read the re-correction preference
|
||||||
|
// but always use the default setting defined in the resources.
|
||||||
|
if (res.getBoolean(R.bool.config_enable_show_recorrection_option)) {
|
||||||
|
mRecorrectionEnabled = prefs.getBoolean(Settings.PREF_RECORRECTION_ENABLED,
|
||||||
|
res.getBoolean(R.bool.config_default_recorrection_enabled));
|
||||||
|
} else {
|
||||||
|
mRecorrectionEnabled = res.getBoolean(R.bool.config_default_recorrection_enabled);
|
||||||
|
}
|
||||||
|
mService = context;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void checkRecorrectionOnStart() {
|
||||||
|
if (!mRecorrectionEnabled) return;
|
||||||
|
|
||||||
|
final InputConnection ic = mService.getCurrentInputConnection();
|
||||||
|
if (ic == null) return;
|
||||||
|
// There could be a pending composing span. Clean it up first.
|
||||||
|
ic.finishComposingText();
|
||||||
|
|
||||||
|
if (mService.isShowingSuggestionsStrip() && mService.isSuggestionsRequested()) {
|
||||||
|
// First get the cursor position. This is required by setOldSuggestions(), so that
|
||||||
|
// it can pass the correct range to setComposingRegion(). At this point, we don't
|
||||||
|
// have valid values for mLastSelectionStart/End because onUpdateSelection() has
|
||||||
|
// not been called yet.
|
||||||
|
ExtractedTextRequest etr = new ExtractedTextRequest();
|
||||||
|
etr.token = 0; // anything is fine here
|
||||||
|
ExtractedText et = ic.getExtractedText(etr, 0);
|
||||||
|
if (et == null) return;
|
||||||
|
mService.setLastSelection(
|
||||||
|
et.startOffset + et.selectionStart, et.startOffset + et.selectionEnd);
|
||||||
|
|
||||||
|
// Then look for possible corrections in a delayed fashion
|
||||||
|
if (!TextUtils.isEmpty(et.text) && mService.isCursorTouchingWord()) {
|
||||||
|
mService.mHandler.postUpdateOldSuggestions();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void updateRecorrectionSelection(KeyboardSwitcher keyboardSwitcher,
|
||||||
|
CandidateView candidateView, int candidatesStart, int candidatesEnd, int newSelStart,
|
||||||
|
int newSelEnd, int oldSelStart, int lastSelectionStart,
|
||||||
|
int lastSelectionEnd, boolean hasUncommittedTypedChars) {
|
||||||
|
if (mRecorrectionEnabled && mService.isShowingSuggestionsStrip()) {
|
||||||
|
// Don't look for corrections if the keyboard is not visible
|
||||||
|
if (keyboardSwitcher.isInputViewShown()) {
|
||||||
|
// Check if we should go in or out of correction mode.
|
||||||
|
if (mService.isSuggestionsRequested()
|
||||||
|
&& (candidatesStart == candidatesEnd || newSelStart != oldSelStart
|
||||||
|
|| TextEntryState.isRecorrecting())
|
||||||
|
&& (newSelStart < newSelEnd - 1 || !hasUncommittedTypedChars)) {
|
||||||
|
if (mService.isCursorTouchingWord() || lastSelectionStart < lastSelectionEnd) {
|
||||||
|
mService.mHandler.cancelUpdateBigramPredictions();
|
||||||
|
mService.mHandler.postUpdateOldSuggestions();
|
||||||
|
} else {
|
||||||
|
abortRecorrection(false);
|
||||||
|
// If showing the "touch again to save" hint, do not replace it. Else,
|
||||||
|
// show the bigrams if we are at the end of the text, punctuation otherwise.
|
||||||
|
if (candidateView != null
|
||||||
|
&& !candidateView.isShowingAddToDictionaryHint()) {
|
||||||
|
InputConnection ic = mService.getCurrentInputConnection();
|
||||||
|
if (null == ic || !TextUtils.isEmpty(ic.getTextAfterCursor(1, 0))) {
|
||||||
|
if (!mService.isShowingPunctuationList()) {
|
||||||
|
mService.setPunctuationSuggestions();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
mService.mHandler.postUpdateBigramPredictions();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void saveWordInHistory(WordComposer word, CharSequence result) {
|
||||||
|
if (word.size() <= 1) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Skip if result is null. It happens in some edge case.
|
||||||
|
if (TextUtils.isEmpty(result)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make a copy of the CharSequence, since it is/could be a mutable CharSequence
|
||||||
|
final String resultCopy = result.toString();
|
||||||
|
WordAlternatives entry = new WordAlternatives(resultCopy, new WordComposer(word));
|
||||||
|
mWordHistory.add(entry);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void clearWordsInHistory() {
|
||||||
|
mWordHistory.clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tries to apply any typed alternatives for the word if we have any cached alternatives,
|
||||||
|
* otherwise tries to find new corrections and completions for the word.
|
||||||
|
* @param touching The word that the cursor is touching, with position information
|
||||||
|
* @return true if an alternative was found, false otherwise.
|
||||||
|
*/
|
||||||
|
public boolean applyTypedAlternatives(WordComposer word, Suggest suggest,
|
||||||
|
KeyboardSwitcher keyboardSwitcher, EditingUtils.SelectedWord touching) {
|
||||||
|
// If we didn't find a match, search for result in typed word history
|
||||||
|
WordComposer foundWord = null;
|
||||||
|
WordAlternatives alternatives = null;
|
||||||
|
// Search old suggestions to suggest re-corrected suggestions.
|
||||||
|
for (WordAlternatives entry : mWordHistory) {
|
||||||
|
if (TextUtils.equals(entry.getChosenWord(), touching.mWord)) {
|
||||||
|
foundWord = entry.mWordComposer;
|
||||||
|
alternatives = entry;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// If we didn't find a match, at least suggest corrections as re-corrected suggestions.
|
||||||
|
if (foundWord == null
|
||||||
|
&& (AutoCorrection.isValidWord(suggest.getUnigramDictionaries(),
|
||||||
|
touching.mWord, true))) {
|
||||||
|
foundWord = new WordComposer();
|
||||||
|
for (int i = 0; i < touching.mWord.length(); i++) {
|
||||||
|
foundWord.add(touching.mWord.charAt(i),
|
||||||
|
new int[] { touching.mWord.charAt(i) }, WordComposer.NOT_A_COORDINATE,
|
||||||
|
WordComposer.NOT_A_COORDINATE);
|
||||||
|
}
|
||||||
|
foundWord.setFirstCharCapitalized(Character.isUpperCase(touching.mWord.charAt(0)));
|
||||||
|
}
|
||||||
|
// Found a match, show suggestions
|
||||||
|
if (foundWord != null || alternatives != null) {
|
||||||
|
if (alternatives == null) {
|
||||||
|
alternatives = new WordAlternatives(touching.mWord, foundWord);
|
||||||
|
}
|
||||||
|
showRecorrections(suggest, keyboardSwitcher, alternatives);
|
||||||
|
if (foundWord != null) {
|
||||||
|
word.init(foundWord);
|
||||||
|
} else {
|
||||||
|
word.reset();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void showRecorrections(Suggest suggest, KeyboardSwitcher keyboardSwitcher,
|
||||||
|
WordAlternatives alternatives) {
|
||||||
|
SuggestedWords.Builder builder = alternatives.getAlternatives(suggest, keyboardSwitcher);
|
||||||
|
builder.setTypedWordValid(false).setHasMinimalSuggestion(false);
|
||||||
|
mService.showSuggestions(builder.build(), alternatives.getOriginalWord());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRecorrectionSuggestions(VoiceProxy voiceProxy, CandidateView candidateView,
|
||||||
|
Suggest suggest, KeyboardSwitcher keyboardSwitcher, WordComposer word,
|
||||||
|
boolean hasUncommittedTypedChars, int lastSelectionStart, int lastSelectionEnd,
|
||||||
|
String wordSeparators) {
|
||||||
|
if (!InputConnectionCompatUtils.RECORRECTION_SUPPORTED) return;
|
||||||
|
voiceProxy.setShowingVoiceSuggestions(false);
|
||||||
|
if (candidateView != null && candidateView.isShowingAddToDictionaryHint()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
InputConnection ic = mService.getCurrentInputConnection();
|
||||||
|
if (ic == null) return;
|
||||||
|
if (!hasUncommittedTypedChars) {
|
||||||
|
// Extract the selected or touching text
|
||||||
|
EditingUtils.SelectedWord touching = EditingUtils.getWordAtCursorOrSelection(ic,
|
||||||
|
lastSelectionStart, lastSelectionEnd, wordSeparators);
|
||||||
|
|
||||||
|
if (touching != null && touching.mWord.length() > 1) {
|
||||||
|
ic.beginBatchEdit();
|
||||||
|
|
||||||
|
if (applyTypedAlternatives(word, suggest, keyboardSwitcher, touching)
|
||||||
|
|| voiceProxy.applyVoiceAlternatives(touching)) {
|
||||||
|
TextEntryState.selectedForRecorrection();
|
||||||
|
InputConnectionCompatUtils.underlineWord(ic, touching);
|
||||||
|
} else {
|
||||||
|
abortRecorrection(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
ic.endBatchEdit();
|
||||||
|
} else {
|
||||||
|
abortRecorrection(true);
|
||||||
|
mService.setPunctuationSuggestions(); // Show the punctuation suggestions list
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
abortRecorrection(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void abortRecorrection(boolean force) {
|
||||||
|
if (force || TextEntryState.isRecorrecting()) {
|
||||||
|
TextEntryState.onAbortRecorrection();
|
||||||
|
mService.setCandidatesViewShown(mService.isCandidateStripVisible());
|
||||||
|
mService.getCurrentInputConnection().finishComposingText();
|
||||||
|
mService.clearSuggestions();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
59
java/src/com/android/inputmethod/latin/WordAlternatives.java
Normal file
59
java/src/com/android/inputmethod/latin/WordAlternatives.java
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
/*
|
||||||
|
* 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 com.android.inputmethod.keyboard.KeyboardSwitcher;
|
||||||
|
|
||||||
|
import android.text.TextUtils;
|
||||||
|
|
||||||
|
public class WordAlternatives {
|
||||||
|
public final CharSequence mChosenWord;
|
||||||
|
public final WordComposer mWordComposer;
|
||||||
|
|
||||||
|
public WordAlternatives(CharSequence chosenWord, WordComposer wordComposer) {
|
||||||
|
mChosenWord = chosenWord;
|
||||||
|
mWordComposer = wordComposer;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CharSequence getChosenWord() {
|
||||||
|
return mChosenWord;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CharSequence getOriginalWord() {
|
||||||
|
return mWordComposer.getTypedWord();
|
||||||
|
}
|
||||||
|
|
||||||
|
public SuggestedWords.Builder getAlternatives(
|
||||||
|
Suggest suggest, KeyboardSwitcher keyboardSwitcher) {
|
||||||
|
return getTypedSuggestions(suggest, keyboardSwitcher, mWordComposer);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return mChosenWord.hashCode();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
return o instanceof CharSequence && TextUtils.equals(mChosenWord, (CharSequence)o);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static SuggestedWords.Builder getTypedSuggestions(
|
||||||
|
Suggest suggest, KeyboardSwitcher keyboardSwitcher, WordComposer word) {
|
||||||
|
return suggest.getSuggestedWordBuilder(keyboardSwitcher.getInputView(), word, null);
|
||||||
|
}
|
||||||
|
}
|
|
@ -31,18 +31,18 @@ public class WordComposer {
|
||||||
/**
|
/**
|
||||||
* The list of unicode values for each keystroke (including surrounding keys)
|
* The list of unicode values for each keystroke (including surrounding keys)
|
||||||
*/
|
*/
|
||||||
private final ArrayList<int[]> mCodes;
|
private ArrayList<int[]> mCodes;
|
||||||
|
|
||||||
private int mTypedLength;
|
private int mTypedLength;
|
||||||
private final int[] mXCoordinates;
|
private int[] mXCoordinates;
|
||||||
private final int[] mYCoordinates;
|
private int[] mYCoordinates;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The word chosen from the candidate list, until it is committed.
|
* The word chosen from the candidate list, until it is committed.
|
||||||
*/
|
*/
|
||||||
private String mPreferredWord;
|
private String mPreferredWord;
|
||||||
|
|
||||||
private final StringBuilder mTypedWord;
|
private StringBuilder mTypedWord;
|
||||||
|
|
||||||
private int mCapsCount;
|
private int mCapsCount;
|
||||||
|
|
||||||
|
@ -63,6 +63,10 @@ public class WordComposer {
|
||||||
}
|
}
|
||||||
|
|
||||||
WordComposer(WordComposer source) {
|
WordComposer(WordComposer source) {
|
||||||
|
init(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void init(WordComposer source) {
|
||||||
mCodes = new ArrayList<int[]>(source.mCodes);
|
mCodes = new ArrayList<int[]>(source.mCodes);
|
||||||
mPreferredWord = source.mPreferredWord;
|
mPreferredWord = source.mPreferredWord;
|
||||||
mTypedWord = new StringBuilder(source.mTypedWord);
|
mTypedWord = new StringBuilder(source.mTypedWord);
|
||||||
|
|
Loading…
Reference in a new issue