diff options
-rw-r--r-- | res/values-cs/strings.xml | 2 | ||||
-rw-r--r-- | res/values-de/strings.xml | 26 | ||||
-rw-r--r-- | res/values-es-rUS/strings.xml | 102 | ||||
-rw-r--r-- | res/values-es/strings.xml | 22 | ||||
-rw-r--r-- | res/values-fr/strings.xml | 14 | ||||
-rw-r--r-- | res/values-it/strings.xml | 26 | ||||
-rw-r--r-- | res/values-ja/strings.xml | 14 | ||||
-rw-r--r-- | res/values-ko/strings.xml | 2 | ||||
-rw-r--r-- | res/values-nb/strings.xml | 47 | ||||
-rw-r--r-- | res/values-nl/strings.xml | 4 | ||||
-rw-r--r-- | res/values-pl/strings.xml | 40 | ||||
-rw-r--r-- | res/values-ru/strings.xml | 2 | ||||
-rw-r--r-- | res/values-zh-rCN/strings.xml | 2 | ||||
-rw-r--r-- | res/values-zh-rTW/strings.xml | 2 | ||||
-rw-r--r-- | src/com/android/inputmethod/latin/KeyboardSwitcher.java | 243 |
15 files changed, 338 insertions, 210 deletions
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index 5f6437984..745cdac3f 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -63,6 +63,8 @@ <string name="alternates_for_n">"ňñ"</string> <string name="alternates_for_c">"čç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"Podržením klávesy zobrazíte diakritiku (ž, á atd.)"</string> <string name="tip_dismiss">"Stisknutím klávesy Zpět ↶ můžete klávesnici kdykoli zavřít"</string> <string name="tip_access_symbols">"Přístup k číslům a symbolům"</string> diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index 84f24a67c..243292c43 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -17,7 +17,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="english_ime_name">"Android-Tastatur"</string> <string name="english_ime_settings">"Android-Tastatureinstellungen"</string> - <string name="vibrate_on_keypress">"Vibrieren bei Tastendruck"</string> + <string name="vibrate_on_keypress">"Vibrieren auf Tastendruck"</string> <string name="sound_on_keypress">"Sound bei Tastendruck"</string> <string name="hit_correction">"Eingabefehler korrigieren"</string> <string name="hit_correction_summary">"Korrektur von Eingabefehlern aktivieren"</string> @@ -28,7 +28,7 @@ <string name="prediction">"Wortvorschläge"</string> <string name="prediction_category">"Einstellungen für Wortvorschläge"</string> <string name="prediction_summary">"Automatische Vervollständigung während der Eingabe aktivieren"</string> - <string name="auto_complete_dialog_title">"Autom. vervollständigen"</string> + <string name="auto_complete_dialog_title">"Automatische Vervollständigung"</string> <string name="prediction_landscape">"Textfeld vergrößern"</string> <string name="prediction_landscape_summary">"Wortvorschläge in Querformat ausblenden"</string> <string name="auto_cap">"Automatische Groß-/Kleinschreibung"</string> @@ -40,8 +40,8 @@ <string name="quick_fixes_summary">"Korrigiert gängige Tippfehler"</string> <string name="show_suggestions">"Vorschläge anzeigen"</string> <string name="show_suggestions_summary">"Vorgeschlagene Wörter während des Tippens anzeigen"</string> - <string name="auto_complete">"Autom. vervollständigen"</string> - <string name="auto_complete_summary">"Leertaste und Interpunktion fügen autom. ein markiertes Wort ein"</string> + <string name="auto_complete">"Automatische Vervollständigung"</string> + <string name="auto_complete_summary">"Leertaste und Interpunktion fügen automatisch ein hervorgehobenes Wort ein"</string> <string-array name="prediction_modes"> <item>"Keine"</item> <item>"Standard"</item> @@ -54,18 +54,16 @@ <!-- no translation found for prediction_modes_values:1 (7214414132844804570) --> <!-- no translation found for prediction_modes_values:2 (6678546276084314171) --> <string name="added_word">"<xliff:g id="WORD">%s</xliff:g> : Gespeichert"</string> - <string name="alternates_for_a">"ä"</string> - <!-- no translation found for alternates_for_e (3900510936875547555) --> - <skip /> - <!-- no translation found for alternates_for_i (7097915268629342242) --> - <skip /> - <string name="alternates_for_o">"ö"</string> - <string name="alternates_for_u">"ü"</string> + <string name="alternates_for_a">"àáâãäåæ"</string> + <string name="alternates_for_e">"èéêë"</string> + <string name="alternates_for_i">"ìíîï"</string> + <string name="alternates_for_o">"òóôõöœø"</string> + <string name="alternates_for_u">"ùúûü"</string> <string name="alternates_for_s">"§ß"</string> <string name="alternates_for_n">"ñ"</string> - <!-- no translation found for alternates_for_c (151699780720639892) --> - <skip /> - <!-- no translation found for alternates_for_y (1722776806607271199) --> + <string name="alternates_for_c">"ç"</string> + <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> <skip /> <string name="tip_long_press">"Zur Anzeige von Umlauten (ä, ö usw.) Taste gedrückt halten"</string> <string name="tip_dismiss">"Zum Schließen der Tastatur ↶ drücken"</string> diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml new file mode 100644 index 000000000..864e812d6 --- /dev/null +++ b/res/values-es-rUS/strings.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Copyright (C) 2009 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<resources xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> + <string name="english_ime_name">"Teclado de Android"</string> + <string name="english_ime_settings">"Configuración de teclado de Android"</string> + <string name="vibrate_on_keypress">"Vibrar al pulsar las teclas"</string> + <string name="sound_on_keypress">"Sonar al pulsar las teclas"</string> + <string name="hit_correction">"Corregir errores de escritura"</string> + <string name="hit_correction_summary">"Habilitar corrección de error de entrada"</string> + <string name="hit_correction_land">"Errores de entrada apaisada"</string> + <string name="hit_correction_land_summary">"Habilitar corrección de error de entrada"</string> + <string name="auto_correction">"Sugerencias de palabras"</string> + <string name="auto_correction_summary">"Corregir automáticamente la palabra anterior"</string> + <string name="prediction">"Sugerencias de palabras"</string> + <string name="prediction_category">"Configuración de sugerencia de palabra"</string> + <string name="prediction_summary">"Habilitar finalización automática al escribir"</string> + <string name="auto_complete_dialog_title">"Finalización automática"</string> + <string name="prediction_landscape">"Aumentar el tamaño del campo de texto"</string> + <string name="prediction_landscape_summary">"Ocultar sugerencias de palabras en vista apaisada"</string> + <string name="auto_cap">"Mayúsculas automáticas"</string> + <string name="auto_cap_summary">"Poner en mayúscula el inicio de una oración"</string> + <string name="auto_punctuate">"Puntuación automática"</string> + <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> + <skip /> + <!-- no translation found for quick_fixes (5353213327680897927) --> + <skip /> + <!-- no translation found for quick_fixes_summary (3405028402510332373) --> + <skip /> + <!-- no translation found for show_suggestions (507074425254289133) --> + <skip /> + <!-- no translation found for show_suggestions_summary (1989672863935759654) --> + <skip /> + <!-- no translation found for auto_complete (1103196318775486023) --> + <skip /> + <!-- no translation found for auto_complete_summary (6113149638718274624) --> + <skip /> + <string-array name="prediction_modes"> + <item>"Ninguno"</item> + <item>"Básico"</item> + <item>"Avanzado"</item> + </string-array> + <string name="prediction_none">"0"</string> + <string name="prediction_basic">"1"</string> + <string name="prediction_full">"2"</string> + <!-- no translation found for prediction_modes_values:0 (579944677836100459) --> + <!-- no translation found for prediction_modes_values:1 (7214414132844804570) --> + <!-- no translation found for prediction_modes_values:2 (6678546276084314171) --> + <string name="added_word">"<xliff:g id="WORD">%s</xliff:g>: guardada"</string> + <string name="alternates_for_a">"àáâãäåæ"</string> + <string name="alternates_for_e">"èéêë"</string> + <string name="alternates_for_i">"ìíîï"</string> + <string name="alternates_for_o">"òóôõöœø"</string> + <string name="alternates_for_u">"ùúûü"</string> + <string name="alternates_for_s">"§ß"</string> + <string name="alternates_for_n">"ñ"</string> + <string name="alternates_for_c">"ç"</string> + <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> + <string name="tip_long_press">"Mantén una tecla presionada para ver los acentos (ø, ö, etc.)"</string> + <string name="tip_dismiss">"Pulsa la tecla hacia atrás ↶ para cerrar el teclado en cualquier momento"</string> + <string name="tip_access_symbols">"Acceder a números y símbolos"</string> + <string name="tip_add_to_dictionary">"Presiona y mantén presionada la palabra de la izquierda para agregarla al diccionario"</string> + <!-- no translation found for touch_to_continue (7869803257948414531) --> + <skip /> + <!-- no translation found for touch_to_finish (7990196086480585789) --> + <skip /> + <!-- no translation found for tip_to_open_keyboard (6821200275486950452) --> + <skip /> + <!-- no translation found for tip_to_view_accents (5433158573693308501) --> + <skip /> + <!-- no translation found for tip_to_open_symbols (7345139325622444880) --> + <skip /> + <!-- no translation found for tip_to_close_symbols (5227724217206927185) --> + <skip /> + <!-- no translation found for tip_to_launch_settings (8402961128983196128) --> + <skip /> + <!-- no translation found for tip_to_start_typing (7213843601369174313) --> + <skip /> + <string name="label_go_key">"Ir"</string> + <string name="label_next_key">"Siguiente"</string> + <string name="label_done_key">"Finalizado"</string> + <string name="label_send_key">"Enviar"</string> + <string name="label_symbol_key">"?123"</string> + <string name="label_phone_key">"123"</string> + <string name="label_alpha_key">"ABC"</string> + <string name="label_alt_key">"ALT"</string> +</resources> diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index e561db920..aa65ef198 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -18,7 +18,7 @@ <string name="english_ime_name">"Teclado de Android"</string> <string name="english_ime_settings">"Configuración del teclado de Android"</string> <string name="vibrate_on_keypress">"Vibrar al pulsar tecla"</string> - <string name="sound_on_keypress">"Sonido al pulsar tecla"</string> + <string name="sound_on_keypress">"Sonido al pulsar una tecla"</string> <string name="hit_correction">"Corregir errores de escritura"</string> <string name="hit_correction_summary">"Habilitar la introducción de corrección de errores"</string> <string name="hit_correction_land">"Errores de introducción de datos en vista horizontal"</string> @@ -31,7 +31,7 @@ <string name="auto_complete_dialog_title">"Autocompletar"</string> <string name="prediction_landscape">"Aumentar el tamaño del campo de texto"</string> <string name="prediction_landscape_summary">"Ocultar sugerencias de palabras en la vista horizontal"</string> - <string name="auto_cap">"Uso de mayúsculas auto."</string> + <string name="auto_cap">"Uso de mayúsculas automático"</string> <string name="auto_cap_summary">"Escribir en mayúscula el principio de la frase"</string> <string name="auto_punctuate">"Puntuación automática"</string> <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> @@ -54,16 +54,16 @@ <!-- no translation found for prediction_modes_values:1 (7214414132844804570) --> <!-- no translation found for prediction_modes_values:2 (6678546276084314171) --> <string name="added_word">"<xliff:g id="WORD">%s</xliff:g> : Guardada"</string> - <string name="alternates_for_a">"á"</string> - <string name="alternates_for_e">"é"</string> - <string name="alternates_for_i">"í"</string> - <string name="alternates_for_o">"ó"</string> - <string name="alternates_for_u">"úü"</string> - <!-- no translation found for alternates_for_s (348762530927662188) --> - <skip /> + <string name="alternates_for_a">"àáâãäåæ"</string> + <string name="alternates_for_e">"èéêë"</string> + <string name="alternates_for_i">"ìíîï"</string> + <string name="alternates_for_o">"òóôõöœø"</string> + <string name="alternates_for_u">"ùúûü"</string> + <string name="alternates_for_s">"§ß"</string> <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> - <!-- no translation found for alternates_for_y (1722776806607271199) --> + <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> <skip /> <string name="tip_long_press">"Mantén pulsada una tecla para ver los caracteres acentuados (ø, ö, etc.)."</string> <string name="tip_dismiss">"Pulsa la tecla \"Atrás\" ↶ para cerrar el teclado en cualquier momento."</string> @@ -78,7 +78,7 @@ <string name="tip_to_launch_settings"><b>"Mantén pulsada esta tecla para cambiar la configuración del teclado como, por ejemplo, la opción de autocompletar"</b>"."</string> <string name="tip_to_start_typing"><b>"¡Pruébalo!"</b></string> <string name="label_go_key">"Ir"</string> - <string name="label_next_key">"Sig."</string> + <string name="label_next_key">"Siguiente"</string> <string name="label_done_key">"Hecho"</string> <string name="label_send_key">"Enviar"</string> <string name="label_symbol_key">"?123"</string> diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index 282f9a768..ce0903f4c 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -31,7 +31,7 @@ <string name="auto_complete_dialog_title">"Saisie semi-automatique"</string> <string name="prediction_landscape">"Agrandir le champ de texte"</string> <string name="prediction_landscape_summary">"Masquer la saisie prédictive en mode paysage"</string> - <string name="auto_cap">"Majuscules auto"</string> + <string name="auto_cap">"Majuscules automatiques"</string> <string name="auto_cap_summary">"Mettre en majuscule la première lettre de chaque phrase"</string> <string name="auto_punctuate">"Ponctuation automatique"</string> <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> @@ -41,7 +41,7 @@ <string name="show_suggestions">"Afficher les suggestions"</string> <string name="show_suggestions_summary">"Afficher les suggestions de terme lors de la saisie"</string> <string name="auto_complete">"Saisie semi-automatique"</string> - <string name="auto_complete_summary">"La barre d\'espace/ponctuation insèrent auto. le terme surligné."</string> + <string name="auto_complete_summary">"La barre d\'espace et la ponctuation insèrent automatiquement les termes en surbrillance."</string> <string-array name="prediction_modes"> <item>"Aucun"</item> <item>"Simple"</item> @@ -63,13 +63,15 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"Maintenir une touche enfoncée pour afficher les accents (à, é, etc.)"</string> <string name="tip_dismiss">"Appuyez sur la touche Retour ↶ pour fermer le clavier à tout moment."</string> <string name="tip_access_symbols">"Accéder aux chiffres et symboles"</string> <string name="tip_add_to_dictionary">"Appuyer et maintenir le doigt sur le mot le plus à gauche pour l\'ajouter au dictionnaire"</string> - <string name="touch_to_continue">"Touchez ce conseil pour continuer »"</string> - <string name="touch_to_finish">"Touchez ici pour fermer ce conseil et commencer à saisir votre texte."</string> - <string name="tip_to_open_keyboard"><b>"Le clavier s\'affiche à chaque fois que vous touchez une zone de texte."</b></string> + <string name="touch_to_continue">"Appuyez sur ce conseil pour continuer »"</string> + <string name="touch_to_finish">"Appuyez ici pour fermer ce conseil et commencer à saisir votre texte."</string> + <string name="tip_to_open_keyboard"><b>"Le clavier s\'affiche à chaque fois que vous appuyez sur une zone de texte."</b></string> <string name="tip_to_view_accents"><b>"Maintenez une touche enfoncée pour afficher les accents"\n"(ø, ö, ô, ó, etc.)"</b></string> <string name="tip_to_open_symbols"><b>"Appuyez sur cette touche pour basculer vers les chiffres et les symboles."</b></string> <string name="tip_to_close_symbols"><b>"Retourner au clavier en appuyant de nouveau sur cette touche"</b></string> @@ -77,7 +79,7 @@ <string name="tip_to_start_typing"><b>"Essayez !"</b></string> <string name="label_go_key">"OK"</string> <string name="label_next_key">"Suivant"</string> - <string name="label_done_key">"OK"</string> + <string name="label_done_key">"Terminé"</string> <string name="label_send_key">"Envoyer"</string> <string name="label_symbol_key">"?123"</string> <string name="label_phone_key">"123"</string> diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index 112acc198..8a814cb17 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -17,8 +17,8 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="english_ime_name">"Tastiera Android"</string> <string name="english_ime_settings">"Impostazioni tastiera Android"</string> - <string name="vibrate_on_keypress">"Vibra se premi un tasto"</string> - <string name="sound_on_keypress">"Suona se premi un tasto"</string> + <string name="vibrate_on_keypress">"Vibra quando premi un tasto"</string> + <string name="sound_on_keypress">"Suona quando premi un tasto"</string> <string name="hit_correction">"Correggi errori di digitazione"</string> <string name="hit_correction_summary">"Attiva la correzione degli errori di inserimento"</string> <string name="hit_correction_land">"Errori di inserimento in visualizzazione orizzontale"</string> @@ -33,15 +33,15 @@ <string name="prediction_landscape_summary">"Nascondi i suggerimenti delle parole in visualizzazione orizzontale"</string> <string name="auto_cap">"Maiuscole automatiche"</string> <string name="auto_cap_summary">"Rendi maiuscole le iniziali delle frasi"</string> - <string name="auto_punctuate">"Punteggiatura automat."</string> + <string name="auto_punctuate">"Punteggiatura automatica"</string> <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> <skip /> <string name="quick_fixes">"Correzioni veloci"</string> <string name="quick_fixes_summary">"Corregge gli errori di digitazione più comuni"</string> <string name="show_suggestions">"Mostra suggerimenti"</string> <string name="show_suggestions_summary">"Visualizza le parole suggerite durante la digitazione"</string> - <string name="auto_complete">"Completamento autom."</string> - <string name="auto_complete_summary">"Barra spaziatrice e punteggiatura inseriscono la parola evidenziata"</string> + <string name="auto_complete">"Completamento automatico"</string> + <string name="auto_complete_summary">"La barra spaziatrice e la punteggiatura inseriscono automaticamente la parola evidenziata"</string> <string-array name="prediction_modes"> <item>"Nessuna"</item> <item>"Base"</item> @@ -54,17 +54,19 @@ <!-- no translation found for prediction_modes_values:1 (7214414132844804570) --> <!-- no translation found for prediction_modes_values:2 (6678546276084314171) --> <string name="added_word">"<xliff:g id="WORD">%s</xliff:g> : parola salvata"</string> - <string name="alternates_for_a">"àá"</string> - <string name="alternates_for_e">"èé"</string> - <string name="alternates_for_i">"ìí"</string> - <string name="alternates_for_o">"òó"</string> - <string name="alternates_for_u">"ùú"</string> - <string name="alternates_for_s">"§"</string> + <string name="alternates_for_a">"àáâãäåæ"</string> + <string name="alternates_for_e">"èéêë"</string> + <string name="alternates_for_i">"ìíîï"</string> + <string name="alternates_for_o">"òóôõöœø"</string> + <string name="alternates_for_u">"ùúûü"</string> + <string name="alternates_for_s">"§ß"</string> <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"Tieni premuto un tasto per vedere le lettere con segni diacritici (ø, ö etc.)"</string> - <string name="tip_dismiss">"Premi il tasto Indietro ↶ per chiudere la tastiera"</string> + <string name="tip_dismiss">"Premi il tasto Indietro ↶ per chiudere la tastiera in qualsiasi punto"</string> <string name="tip_access_symbols">"Accedi a numeri e simboli"</string> <string name="tip_add_to_dictionary">"Tieni premuto sulla parola all\'estrema sinistra per aggiungerla al dizionario"</string> <string name="touch_to_continue">"Tocca questo suggerimento per continuare »"</string> diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index 53bc60f25..67c9a5e37 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -17,10 +17,10 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="english_ime_name">"Androidキーボード"</string> <string name="english_ime_settings">"Androidキーボードの設定"</string> - <string name="vibrate_on_keypress">"キー操作バイブ"</string> + <string name="vibrate_on_keypress">"キーのバイブレーション"</string> <string name="sound_on_keypress">"キー操作音"</string> - <string name="hit_correction">"入力ミス補正"</string> - <string name="hit_correction_summary">"入力間違いを自動修正する"</string> + <string name="hit_correction">"入力エラー修正"</string> + <string name="hit_correction_summary">"入力エラーを推測修正する"</string> <string name="hit_correction_land">"横表示での入力修正"</string> <string name="hit_correction_land_summary">"入力間違いを自動修正する"</string> <string name="auto_correction">"入力候補表示"</string> @@ -32,7 +32,7 @@ <string name="prediction_landscape">"入力作業スペースを広げる"</string> <string name="prediction_landscape_summary">"横表示では入力候補を表示しない"</string> <string name="auto_cap">"自動大文字変換"</string> - <string name="auto_cap_summary">"英字入力で文頭文字を大文字にする"</string> + <string name="auto_cap_summary">"先頭文字を大文字に変換する"</string> <string name="auto_punctuate">"句読点を自動入力"</string> <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> <skip /> @@ -41,7 +41,7 @@ <string name="show_suggestions">"入力候補を表示"</string> <string name="show_suggestions_summary">"入力時に入力候補を表示します"</string> <string name="auto_complete">"オートコンプリート"</string> - <string name="auto_complete_summary">"スペースまたは句読点キーで反転表示されている変換候補を挿入する"</string> + <string name="auto_complete_summary">"スペースまたは句読点キーを押すと、ハイライトされたキーワードが自動入力されます"</string> <string-array name="prediction_modes"> <item>"なし"</item> <item>"基本"</item> @@ -63,10 +63,12 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"キー長押しでアクセント文字を表示(ø、öなど)"</string> <string name="tip_dismiss">"戻るキーでキーボードを閉じます"</string> <string name="tip_access_symbols">"数字と記号"</string> - <string name="tip_add_to_dictionary">"一番左の単語を長押しすると辞書に追加されます"</string> + <string name="tip_add_to_dictionary">"一番左の語句を長押しすると辞書に追加されます"</string> <string name="touch_to_continue">"続けるにはヒントをタッチ >>"</string> <string name="touch_to_finish">"タッチしてこのヒントを終了し、入力を開始してください。"</string> <string name="tip_to_open_keyboard"><b>"テキストフィールドを選択するとキーボードが表示されます"</b></string> diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index 32d5d157e..654a1f04b 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -63,6 +63,8 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"키를 길게 누르면 악센트(ø, ö 등)가 표시됩니다."</string> <string name="tip_dismiss">"키보드를 닫으려면 언제든지 뒤로 키(↶)를 누르세요."</string> <string name="tip_access_symbols">"숫자 및 기호 액세스"</string> diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml index 28df4d45a..87273dd2f 100644 --- a/res/values-nb/strings.xml +++ b/res/values-nb/strings.xml @@ -36,12 +36,18 @@ <string name="auto_punctuate">"Automatisk punktum"</string> <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> <skip /> - <string name="quick_fixes">"Autokorrektur"</string> - <string name="quick_fixes_summary">"Retter vanlige stavefeil"</string> - <string name="show_suggestions">"Vis forslag"</string> - <string name="show_suggestions_summary">"Vis foreslåtte ord under skriving"</string> - <string name="auto_complete">"Autokomplettering"</string> - <string name="auto_complete_summary">"Mellomrom og punktum setter automatisk inn valgt ord"</string> + <!-- no translation found for quick_fixes (5353213327680897927) --> + <skip /> + <!-- no translation found for quick_fixes_summary (3405028402510332373) --> + <skip /> + <!-- no translation found for show_suggestions (507074425254289133) --> + <skip /> + <!-- no translation found for show_suggestions_summary (1989672863935759654) --> + <skip /> + <!-- no translation found for auto_complete (1103196318775486023) --> + <skip /> + <!-- no translation found for auto_complete_summary (6113149638718274624) --> + <skip /> <string-array name="prediction_modes"> <item>"Ingen"</item> <item>"Grunnleggende"</item> @@ -66,22 +72,33 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"Hold en tast nede for å se aksenterte tegn (ø, ö, osv.)"</string> <string name="tip_dismiss">"Trykk tilbakeknappen, ↶, for å lukke tastaturet"</string> <string name="tip_access_symbols">"Få tilgang til tall og symboler"</string> <string name="tip_add_to_dictionary">"Trykk lenge på ordet lengst til venstre for å legge det til i ordlisten"</string> - <string name="touch_to_continue">"Trykk på dette hintet for å forsette »"</string> - <string name="touch_to_finish">"Trykk her for å lukke dette hintet og begynne å skrive!"</string> - <string name="tip_to_open_keyboard"><b>"Tastaturet åpnes når du tar på et tekstfelt"</b></string> - <string name="tip_to_view_accents"><b>"Trykk på og hold nede en tast for å se aksenter"\n"(ø, ö, ô, ó, osv.)"</b></string> - <string name="tip_to_open_symbols"><b>"Bytt til tall og symboler ved å trykke på denne tasten"</b></string> - <string name="tip_to_close_symbols"><b>"Gå tilbake til bokstaver igjen ved å trykke på denne tasten"</b></string> - <string name="tip_to_launch_settings"><b>"Trykk på og hold nede denne tasten for å endre tastaturinnstillinger, som autofullføring"</b></string> - <string name="tip_to_start_typing"><b>"Prøv det!"</b></string> + <!-- no translation found for touch_to_continue (7869803257948414531) --> + <skip /> + <!-- no translation found for touch_to_finish (7990196086480585789) --> + <skip /> + <!-- no translation found for tip_to_open_keyboard (6821200275486950452) --> + <skip /> + <!-- no translation found for tip_to_view_accents (5433158573693308501) --> + <skip /> + <!-- no translation found for tip_to_open_symbols (7345139325622444880) --> + <skip /> + <!-- no translation found for tip_to_close_symbols (5227724217206927185) --> + <skip /> + <!-- no translation found for tip_to_launch_settings (8402961128983196128) --> + <skip /> + <!-- no translation found for tip_to_start_typing (7213843601369174313) --> + <skip /> <string name="label_go_key">"Gå"</string> <string name="label_next_key">"Neste"</string> <string name="label_done_key">"Utfør"</string> - <string name="label_send_key">"Send"</string> + <!-- no translation found for label_send_key (2815056534433717444) --> + <skip /> <string name="label_symbol_key">"?123"</string> <string name="label_phone_key">"123"</string> <string name="label_alpha_key">"ABC"</string> diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index 73d5e3fd4..467fdbc21 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -63,6 +63,8 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"Houd een toets ingedrukt om diakritische tekens weer te geven (ø, ö, enzovoort)"</string> <string name="tip_dismiss">"Druk op elk gewenst moment op de toets Terug ↶ om het toetsenbord te sluiten"</string> <string name="tip_access_symbols">"Toegang tot cijfers en symbolen"</string> @@ -70,7 +72,7 @@ <string name="touch_to_continue">"Raak deze tip aan om door te gaan »"</string> <string name="touch_to_finish">"Raak dit punt aan om deze tip te sluiten en te beginnen met typen."</string> <string name="tip_to_open_keyboard"><b>"Het toetsenbord wordt geopend wanneer u een tekstveld aanraakt"</b></string> - <string name="tip_to_view_accents"><b>"Blijf een toets aanraken om diakritische tekens weer te geven"\n"(ø, ö, ô, ó, enzovoort)"</b></string> + <string name="tip_to_view_accents"><b>"Blijf een toets aanraken om diakritische tekens weer te geven"\n" (ø, ö, ô, ó, enzovoort)"</b></string> <string name="tip_to_open_symbols"><b>"Schakel over naar cijfers en symbolen door deze toets aan te raken"</b></string> <string name="tip_to_close_symbols"><b>"Ga terug naar letters door deze toets nogmaals aan te raken"</b></string> <string name="tip_to_launch_settings"><b>"Blijf deze toets aanraken om toetsenbordinstellingen te wijzigen, zoals auto-aanvullen"</b></string> diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index a10731c1d..2cbf13173 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -17,8 +17,8 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="english_ime_name">"Klawiatura Android"</string> <string name="english_ime_settings">"Ustawienia klawiatury Android"</string> - <string name="vibrate_on_keypress">"Wibracja przy naciśnięciu"</string> - <string name="sound_on_keypress">"Dźwięk przy naciśnięciu"</string> + <string name="vibrate_on_keypress">"Wibruj przy naciśnięciu klawisza"</string> + <string name="sound_on_keypress">"Dźwięk przy naciśnięciu klawisza"</string> <string name="hit_correction">"Popraw błędy pisowni"</string> <string name="hit_correction_summary">"Włącz poprawianie błędów wprowadzania"</string> <string name="hit_correction_land">"Błędy wprowadzania w orientacji poziomej"</string> @@ -31,7 +31,7 @@ <string name="auto_complete_dialog_title">"Autouzupełnianie"</string> <string name="prediction_landscape">"Zwiększ rozmiar pola tekstowego"</string> <string name="prediction_landscape_summary">"Wyłącz propozycje słów w orientacji poziomej"</string> - <string name="auto_cap">"Wstawiaj wielkie litery"</string> + <string name="auto_cap">"Automatyczna zamiana na wielkie litery"</string> <string name="auto_cap_summary">"Zamieniaj na wielką pierwszą literę zdania"</string> <string name="auto_punctuate">"Automatyczna interpunkcja"</string> <!-- no translation found for auto_punctuate_summary (6589441565817502132) --> @@ -41,7 +41,7 @@ <string name="show_suggestions">"Pokaż sugestie"</string> <string name="show_suggestions_summary">"Wyświetl sugerowane słowa podczas wpisywania"</string> <string name="auto_complete">"Autouzupełnianie"</string> - <string name="auto_complete_summary">"Spacja i znaki przestankowe wstawiają wyróżnione słowo"</string> + <string name="auto_complete_summary">"Spacja i znaki przestankowe automatycznie wstawiają wyróżnione słowo"</string> <string-array name="prediction_modes"> <item>"Brak"</item> <item>"Podstawowy"</item> @@ -54,26 +54,28 @@ <!-- no translation found for prediction_modes_values:1 (7214414132844804570) --> <!-- no translation found for prediction_modes_values:2 (6678546276084314171) --> <string name="added_word">"<xliff:g id="WORD">%s</xliff:g> : Zapisano"</string> - <string name="alternates_for_a">"ą"</string> - <string name="alternates_for_e">"ę"</string> - <string name="alternates_for_i">""</string> - <string name="alternates_for_o">"ó"</string> - <string name="alternates_for_u">""</string> - <string name="alternates_for_s">"ś"</string> - <string name="alternates_for_n">"ń"</string> - <string name="alternates_for_c">"ć"</string> - <string name="alternates_for_y">""</string> - <string name="tip_long_press">"Przytrzymaj klawisz, aby wyświetlić znaki akcentowane (ą, ó itp.)"</string> + <string name="alternates_for_a">"àáâãäåæ"</string> + <string name="alternates_for_e">"èéêë"</string> + <string name="alternates_for_i">"ìíîï"</string> + <string name="alternates_for_o">"òóôõöœø"</string> + <string name="alternates_for_u">"ùúûü"</string> + <string name="alternates_for_s">"§ß"</string> + <string name="alternates_for_n">"ñ"</string> + <string name="alternates_for_c">"ç"</string> + <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> + <string name="tip_long_press">"Przytrzymaj klawisz, aby wyświetlić znaki akcentowane (ø, ö itp.)"</string> <string name="tip_dismiss">"Naciśnij klawisz cofania ↶, aby zamknąć klawiaturę w dowolnym momencie"</string> <string name="tip_access_symbols">"Przejdź do cyfr i symboli"</string> <string name="tip_add_to_dictionary">"Naciśnij i przytrzymaj słowo po lewej stronie w celu dodania go do słownika"</string> <string name="touch_to_continue">"Dotknij tej podpowiedzi, aby kontynuować »"</string> <string name="touch_to_finish">"Dotknij tutaj, aby zamknąć tę podpowiedź i zacząć pisać!"</string> - <string name="tip_to_open_keyboard"><b>"Klawiatura jest otwierana po każdym dotknięciu pola tekstowego."</b></string> - <string name="tip_to_view_accents"><b>"Dotknij i przytrzymaj klawisz, aby wyświetlić znaki akcentowane"\n"(ą, ę, ł, ó itd.)."</b></string> - <string name="tip_to_open_symbols"><b>"Przełącz na cyfry i symbole, dotykając tego klawisza."</b></string> - <string name="tip_to_close_symbols"><b>"Wróć do trybu liter, dotykając ponownie tego klawisza."</b></string> - <string name="tip_to_launch_settings"><b>"Dotknij i przytrzymaj ten klawisz, aby zmienić ustawienia klawiatury, takie jak autouzupełnianie."</b></string> + <string name="tip_to_open_keyboard"><b>"Klawiatura jest otwierana po każdym dotknięciu pola tekstowego"</b></string> + <string name="tip_to_view_accents"><b>"Dotknij i przytrzymaj klawisz, aby wyświetlić znaki akcentowane"\n"(ø, ö, ô, ó itd.)"</b></string> + <string name="tip_to_open_symbols"><b>"Przełącz na cyfry i symbole, dotykając tego klawisza"</b></string> + <string name="tip_to_close_symbols"><b>"Wróć do trybu liter, dotykając ponownie tego klawisza"</b></string> + <string name="tip_to_launch_settings"><b>"Dotknij i przytrzymaj ten klawisz, aby zmienić ustawienia klawiatury, takie jak autouzupełnianie"</b></string> <string name="tip_to_start_typing"><b>"Wypróbuj!"</b></string> <string name="label_go_key">"Przejdź"</string> <string name="label_next_key">"Dalej"</string> diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index 672aa77c1..644909929 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -63,6 +63,8 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"Удерживайте клавишу, чтобы увидеть варианты с диакритическими знаками (ø, ö и т.д.)"</string> <string name="tip_dismiss">"Нажмите клавишу \"Назад\" ↶, чтобы закрыть клавиатуру в любой момент"</string> <string name="tip_access_symbols">"Открыть цифры и символы"</string> diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index ac6c6d96b..789656d42 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -69,6 +69,8 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"按住某个键可以查看重音符号(ø、ö 等)"</string> <string name="tip_dismiss">"随时可以通过按后退键 ↶ 关闭键盘"</string> <string name="tip_access_symbols">"访问数字和符号"</string> diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index 23054b3ff..058445742 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -63,6 +63,8 @@ <string name="alternates_for_n">"ñ"</string> <string name="alternates_for_c">"ç"</string> <string name="alternates_for_y">"ýÿ"</string> + <!-- no translation found for alternates_for_z (8206774143334512268) --> + <skip /> <string name="tip_long_press">"按住按鍵可查看重音符號 (ø、ö 等)"</string> <string name="tip_dismiss">"隨時可以透過按後退鍵 ↶ 關閉鍵盤"</string> <string name="tip_access_symbols">"使用數字和符號"</string> diff --git a/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/src/com/android/inputmethod/latin/KeyboardSwitcher.java index b3fcbda6f..92b7cd4a1 100644 --- a/src/com/android/inputmethod/latin/KeyboardSwitcher.java +++ b/src/com/android/inputmethod/latin/KeyboardSwitcher.java @@ -16,9 +16,8 @@ package com.android.inputmethod.latin; -import android.inputmethodservice.Keyboard; - -import java.util.List; +import java.util.HashMap; +import java.util.Map; public class KeyboardSwitcher { @@ -37,31 +36,28 @@ public class KeyboardSwitcher { public static final int KEYBOARDMODE_URL = R.id.mode_url; public static final int KEYBOARDMODE_EMAIL = R.id.mode_email; public static final int KEYBOARDMODE_IM = R.id.mode_im; - LatinKeyboardView mInputView; LatinIME mContext; - private LatinKeyboard mPhoneKeyboard; - private LatinKeyboard mPhoneSymbolsKeyboard; - private LatinKeyboard mSymbolsKeyboard; - private LatinKeyboard mSymbolsShiftedKeyboard; - private LatinKeyboard mQwertyKeyboard; - private LatinKeyboard mAlphaKeyboard; - private LatinKeyboard mUrlKeyboard; - private LatinKeyboard mEmailKeyboard; - private LatinKeyboard mIMKeyboard; - - List<Keyboard> mKeyboards; + private KeyboardId mSymbolsId; + private KeyboardId mSymbolsShiftedId; + + private KeyboardId mCurrentId; + private Map<KeyboardId, LatinKeyboard> mKeyboards; private int mMode; private int mImeOptions; private int mTextMode = MODE_TEXT_QWERTY; + private boolean mIsSymbols; private int mLastDisplayWidth; KeyboardSwitcher(LatinIME context) { mContext = context; + mKeyboards = new HashMap<KeyboardId, LatinKeyboard>(); + mSymbolsId = new KeyboardId(R.xml.kbd_symbols); + mSymbolsShiftedId = new KeyboardId(R.xml.kbd_symbols_shift); } void setInputView(LatinKeyboardView inputView) { @@ -72,92 +68,109 @@ public class KeyboardSwitcher { // Configuration change is coming after the keyboard gets recreated. So don't rely on that. // If keyboards have already been made, check if we have a screen width change and // create the keyboard layouts again at the correct orientation - if (mKeyboards != null) { - int displayWidth = mContext.getMaxWidth(); - if (displayWidth == mLastDisplayWidth) return; - mLastDisplayWidth = displayWidth; + int displayWidth = mContext.getMaxWidth(); + if (displayWidth == mLastDisplayWidth) return; + mLastDisplayWidth = displayWidth; + mKeyboards.clear(); + mSymbolsId = new KeyboardId(R.xml.kbd_symbols); + mSymbolsShiftedId = new KeyboardId(R.xml.kbd_symbols_shift); + } + + /** + * Represents the parameters necessary to construct a new LatinKeyboard, + * which also serve as a unique identifier for each keyboard type. + */ + private static class KeyboardId { + public int mXml; + public int mMode; + public boolean mEnableShiftLock; + + public KeyboardId(int xml, int mode, boolean enableShiftLock) { + this.mXml = xml; + this.mMode = mode; + this.mEnableShiftLock = enableShiftLock; + } + + public KeyboardId(int xml) { + this(xml, 0, false); + } + + public boolean equals(Object other) { + return other instanceof KeyboardId && equals((KeyboardId) other); + } + + public boolean equals(KeyboardId other) { + return other.mXml == this.mXml && other.mMode == this.mMode; + } + + public int hashCode() { + return (mXml + 1) * (mMode + 1) * (mEnableShiftLock ? 2 : 1); } - // Delayed creation when keyboard mode is set. - mQwertyKeyboard = null; - mAlphaKeyboard = null; - mUrlKeyboard = null; - mEmailKeyboard = null; - mIMKeyboard = null; - mPhoneKeyboard = null; - mPhoneSymbolsKeyboard = null; - mSymbolsKeyboard = null; - mSymbolsShiftedKeyboard = null; } void setKeyboardMode(int mode, int imeOptions) { + setKeyboardMode(mode, imeOptions, false); + } + + void setKeyboardMode(int mode, int imeOptions, boolean isSymbols) { mMode = mode; mImeOptions = imeOptions; - LatinKeyboard keyboard = (LatinKeyboard) mInputView.getKeyboard(); + mIsSymbols = isSymbols; mInputView.setPreviewEnabled(true); + KeyboardId id = getKeyboardId(mode, imeOptions, isSymbols); + LatinKeyboard keyboard = getKeyboard(id); + + if (mode == MODE_PHONE) { + mInputView.setPhoneKeyboard(keyboard); + mInputView.setPreviewEnabled(false); + } + + mCurrentId = id; + mInputView.setKeyboard(keyboard); + keyboard.setShifted(false); + keyboard.setShiftLocked(keyboard.isShiftLocked()); + keyboard.setImeOptions(mContext.getResources(), mMode, imeOptions); + + } + + private LatinKeyboard getKeyboard(KeyboardId id) { + if (!mKeyboards.containsKey(id)) { + LatinKeyboard keyboard = new LatinKeyboard( + mContext, id.mXml, id.mMode); + if (id.mEnableShiftLock) { + keyboard.enableShiftLock(); + } + mKeyboards.put(id, keyboard); + } + return mKeyboards.get(id); + } + + private KeyboardId getKeyboardId(int mode, int imeOptions, boolean isSymbols) { + if (isSymbols) { + return (mode == MODE_PHONE) + ? new KeyboardId(R.xml.kbd_phone_symbols) : new KeyboardId(R.xml.kbd_symbols); + } + switch (mode) { case MODE_TEXT: if (mTextMode == MODE_TEXT_QWERTY) { - if (mQwertyKeyboard == null) { - mQwertyKeyboard = new LatinKeyboard(mContext, R.xml.kbd_qwerty, - KEYBOARDMODE_NORMAL); - mQwertyKeyboard.enableShiftLock(); - } - keyboard = mQwertyKeyboard; + return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_NORMAL, true); } else if (mTextMode == MODE_TEXT_ALPHA) { - if (mAlphaKeyboard == null) { - mAlphaKeyboard = new LatinKeyboard(mContext, R.xml.kbd_alpha, - KEYBOARDMODE_NORMAL); - mAlphaKeyboard.enableShiftLock(); - } - keyboard = mAlphaKeyboard; + return new KeyboardId(R.xml.kbd_alpha, KEYBOARDMODE_NORMAL, true); } break; case MODE_SYMBOLS: - if (mSymbolsKeyboard == null) { - mSymbolsKeyboard = new LatinKeyboard(mContext, R.xml.kbd_symbols); - } - if (mSymbolsShiftedKeyboard == null) { - mSymbolsShiftedKeyboard = new LatinKeyboard(mContext, R.xml.kbd_symbols_shift); - } - keyboard = mSymbolsKeyboard; - break; + return new KeyboardId(R.xml.kbd_symbols); case MODE_PHONE: - if (mPhoneKeyboard == null) { - mPhoneKeyboard = new LatinKeyboard(mContext, R.xml.kbd_phone); - } - mInputView.setPhoneKeyboard(mPhoneKeyboard); - if (mPhoneSymbolsKeyboard == null) { - mPhoneSymbolsKeyboard = new LatinKeyboard(mContext, R.xml.kbd_phone_symbols); - } - keyboard = mPhoneKeyboard; - mInputView.setPreviewEnabled(false); - break; + return new KeyboardId(R.xml.kbd_phone); case MODE_URL: - if (mUrlKeyboard == null) { - mUrlKeyboard = new LatinKeyboard(mContext, R.xml.kbd_qwerty, KEYBOARDMODE_URL); - mUrlKeyboard.enableShiftLock(); - } - keyboard = mUrlKeyboard; - break; + return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_URL, true); case MODE_EMAIL: - if (mEmailKeyboard == null) { - mEmailKeyboard = new LatinKeyboard(mContext, R.xml.kbd_qwerty, KEYBOARDMODE_EMAIL); - mEmailKeyboard.enableShiftLock(); - } - keyboard = mEmailKeyboard; - break; + return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_EMAIL, true); case MODE_IM: - if (mIMKeyboard == null) { - mIMKeyboard = new LatinKeyboard(mContext, R.xml.kbd_qwerty, KEYBOARDMODE_IM); - mIMKeyboard.enableShiftLock(); - } - keyboard = mIMKeyboard; - break; + return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_IM, true); } - mInputView.setKeyboard(keyboard); - keyboard.setShifted(false); - keyboard.setShiftLocked(keyboard.isShiftLocked()); - keyboard.setImeOptions(mContext.getResources(), mMode, imeOptions); + return null; } int getKeyboardMode() { @@ -186,56 +199,34 @@ public class KeyboardSwitcher { } boolean isAlphabetMode() { - Keyboard current = mInputView.getKeyboard(); - if (current == mQwertyKeyboard - || current == mAlphaKeyboard - || current == mUrlKeyboard - || current == mIMKeyboard - || current == mEmailKeyboard) { - return true; - } - return false; + KeyboardId current = mCurrentId; + return current.mMode == KEYBOARDMODE_NORMAL + || current.mMode == KEYBOARDMODE_URL + || current.mMode == KEYBOARDMODE_EMAIL + || current.mMode == KEYBOARDMODE_IM; } void toggleShift() { - Keyboard currentKeyboard = mInputView.getKeyboard(); - if (currentKeyboard == mSymbolsKeyboard) { - mSymbolsKeyboard.setShifted(true); - mInputView.setKeyboard(mSymbolsShiftedKeyboard); - mSymbolsShiftedKeyboard.setShifted(true); - mSymbolsShiftedKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); - } else if (currentKeyboard == mSymbolsShiftedKeyboard) { - mSymbolsShiftedKeyboard.setShifted(false); - mInputView.setKeyboard(mSymbolsKeyboard); - mSymbolsKeyboard.setShifted(false); - mSymbolsKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); + if (mCurrentId.equals(mSymbolsId)) { + LatinKeyboard symbolsKeyboard = getKeyboard(mSymbolsId); + LatinKeyboard symbolsShiftedKeyboard = getKeyboard(mSymbolsShiftedId); + symbolsKeyboard.setShifted(true); + mCurrentId = mSymbolsShiftedId; + mInputView.setKeyboard(symbolsShiftedKeyboard); + symbolsShiftedKeyboard.setShifted(true); + symbolsShiftedKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); + } else if (mCurrentId.equals(mSymbolsShiftedId)) { + LatinKeyboard symbolsKeyboard = getKeyboard(mSymbolsId); + LatinKeyboard symbolsShiftedKeyboard = getKeyboard(mSymbolsShiftedId); + symbolsShiftedKeyboard.setShifted(false); + mCurrentId = mSymbolsId; + mInputView.setKeyboard(getKeyboard(mSymbolsId)); + symbolsKeyboard.setShifted(false); + symbolsKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); } } void toggleSymbols() { - Keyboard current = mInputView.getKeyboard(); - if (mSymbolsKeyboard == null) { - mSymbolsKeyboard = new LatinKeyboard(mContext, R.xml.kbd_symbols); - } - if (mSymbolsShiftedKeyboard == null) { - mSymbolsShiftedKeyboard = new LatinKeyboard(mContext, R.xml.kbd_symbols_shift); - } - if (current == mSymbolsKeyboard || current == mSymbolsShiftedKeyboard) { - setKeyboardMode(mMode, mImeOptions); // Could be qwerty, alpha, url, email or im - return; - } else if (current == mPhoneKeyboard) { - current = mPhoneSymbolsKeyboard; - mPhoneSymbolsKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); - } else if (current == mPhoneSymbolsKeyboard) { - current = mPhoneKeyboard; - mPhoneKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); - } else { - current = mSymbolsKeyboard; - mSymbolsKeyboard.setImeOptions(mContext.getResources(), mMode, mImeOptions); - } - mInputView.setKeyboard(current); - if (current == mSymbolsKeyboard) { - current.setShifted(false); - } + setKeyboardMode(mMode, mImeOptions, !mIsSymbols); } } |