From 826269c8aebb0b21f6e7650e528f0d9876b9a163 Mon Sep 17 00:00:00 2001 From: Ken Wakasa Date: Tue, 27 Apr 2010 10:28:14 +0900 Subject: [PATCH 1/6] Get rid of dependency on native AssetManager API. Confirmed the native code builds with the NDK r3. Change-Id: I0d2d3a0e262847d6948a0336a35440e21e312ad2 --- .../inputmethod/latin/BinaryDictionary.java | 39 +++++++++-- native/Android.mk | 7 -- ...oid_inputmethod_latin_BinaryDictionary.cpp | 68 ++----------------- native/src/dictionary.cpp | 10 +-- 4 files changed, 40 insertions(+), 84 deletions(-) diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionary.java b/java/src/com/android/inputmethod/latin/BinaryDictionary.java index 87de94b76..4901b210b 100644 --- a/java/src/com/android/inputmethod/latin/BinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/BinaryDictionary.java @@ -16,6 +16,11 @@ package com.android.inputmethod.latin; +import java.io.InputStream; +import java.io.IOException; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.nio.channels.Channels; import java.util.Arrays; import android.content.Context; @@ -27,6 +32,7 @@ import android.util.Log; */ public class BinaryDictionary extends Dictionary { + private static final String TAG = "BinaryDictionary"; public static final int MAX_WORD_LENGTH = 48; private static final int MAX_ALTERNATIVES = 16; private static final int MAX_WORDS = 16; @@ -35,10 +41,13 @@ public class BinaryDictionary extends Dictionary { private static final boolean ENABLE_MISSED_CHARACTERS = true; private int mNativeDict; - private int mDictLength; // This value is set from native code, don't change the name!!!! + private int mDictLength; private int[] mInputCodes = new int[MAX_WORD_LENGTH * MAX_ALTERNATIVES]; private char[] mOutputChars = new char[MAX_WORD_LENGTH * MAX_WORDS]; private int[] mFrequencies = new int[MAX_WORDS]; + // Keep a reference to the native dict direct buffer in Java to avoid + // unexpected deallocation of the direct buffer. + private ByteBuffer mNativeDictDirectBuffer; static { try { @@ -59,8 +68,7 @@ public class BinaryDictionary extends Dictionary { } } - private native int openNative(AssetManager am, String resourcePath, int typedLetterMultiplier, - int fullWordMultiplier); + private native int openNative(ByteBuffer bb, int typedLetterMultiplier, int fullWordMultiplier); private native void closeNative(int dict); private native boolean isValidWordNative(int nativeData, char[] word, int wordLength); private native int getSuggestionsNative(int dict, int[] inputCodes, int codesSize, @@ -69,9 +77,28 @@ public class BinaryDictionary extends Dictionary { int[] nextLettersFrequencies, int nextLettersSize); private final void loadDictionary(Context context, int resId) { - AssetManager am = context.getResources().getAssets(); - String assetName = context.getResources().getString(resId); - mNativeDict = openNative(am, assetName, TYPED_LETTER_MULTIPLIER, FULL_WORD_FREQ_MULTIPLIER); + InputStream is = context.getResources().openRawResource(resId); + try { + int avail = is.available(); + mNativeDictDirectBuffer = + ByteBuffer.allocateDirect(avail).order(ByteOrder.nativeOrder()); + int got = Channels.newChannel(is).read(mNativeDictDirectBuffer); + if (got != avail) { + Log.e(TAG, "Read " + got + " bytes, expected " + avail); + } else { + mNativeDict = openNative(mNativeDictDirectBuffer, + TYPED_LETTER_MULTIPLIER, FULL_WORD_FREQ_MULTIPLIER); + mDictLength = avail; + } + } catch (IOException e) { + Log.w(TAG, "No available size for binary dictionary"); + } finally { + try { + is.close(); + } catch (IOException e) { + Log.w(TAG, "Failed to close input stream"); + } + } } @Override diff --git a/native/Android.mk b/native/Android.mk index 3cf6aa83f..952448435 100644 --- a/native/Android.mk +++ b/native/Android.mk @@ -11,15 +11,8 @@ LOCAL_SRC_FILES := \ LOCAL_C_INCLUDES += \ $(JNI_H_INCLUDE) -LOCAL_LDLIBS := -lm - LOCAL_PRELINK_MODULE := false -LOCAL_SHARED_LIBRARIES := \ - libandroid_runtime \ - libcutils \ - libutils - LOCAL_MODULE := libjni_latinime LOCAL_MODULE_TAGS := user diff --git a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp index d068f3faf..bb45cb538 100644 --- a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp +++ b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp @@ -15,31 +15,18 @@ ** limitations under the License. */ -#define LOG_TAG "BinaryDictionary" -#include "utils/Log.h" - #include #include #include #include -#include -#include "utils/AssetManager.h" -#include "utils/Asset.h" - +#include #include "dictionary.h" // ---------------------------------------------------------------------------- using namespace latinime; -using namespace android; - -static jfieldID sDescriptorField; -static jfieldID sAssetManagerNativeField; -static jmethodID sAddWordMethod; -static jfieldID sDictLength; - // // helper function to throw an exception // @@ -54,35 +41,15 @@ static void throwException(JNIEnv *env, const char* ex, const char* fmt, int dat } static jint latinime_BinaryDictionary_open - (JNIEnv *env, jobject object, jobject assetManager, jstring resourceString, + (JNIEnv *env, jobject object, jobject dictDirectBuffer, jint typedLetterMultiplier, jint fullWordMultiplier) { - // Get the native file descriptor from the FileDescriptor object - AssetManager *am = (AssetManager*) env->GetIntField(assetManager, sAssetManagerNativeField); - if (!am) { - LOGE("DICT: Couldn't get AssetManager native peer\n"); - return 0; - } - const char *resourcePath = env->GetStringUTFChars(resourceString, NULL); - - Asset *dictAsset = am->openNonAsset(resourcePath, Asset::ACCESS_BUFFER); - if (dictAsset == NULL) { - LOGE("DICT: Couldn't get asset %s\n", resourcePath); - env->ReleaseStringUTFChars(resourceString, resourcePath); - return 0; - } - - void *dict = (void*) dictAsset->getBuffer(false); + void *dict = env->GetDirectBufferAddress(dictDirectBuffer); if (dict == NULL) { - LOGE("DICT: Dictionary buffer is null\n"); - env->ReleaseStringUTFChars(resourceString, resourcePath); + fprintf(stderr, "DICT: Dictionary buffer is null\n"); return 0; } Dictionary *dictionary = new Dictionary(dict, typedLetterMultiplier, fullWordMultiplier); - dictionary->setAsset(dictAsset); - env->SetIntField(object, sDictLength, (jint) dictAsset->getLength()); - - env->ReleaseStringUTFChars(resourceString, resourcePath); return (jint) dictionary; } @@ -131,14 +98,13 @@ static void latinime_BinaryDictionary_close (JNIEnv *env, jobject object, jint dict) { Dictionary *dictionary = (Dictionary*) dict; - ((Asset*) dictionary->getAsset())->close(); delete (Dictionary*) dict; } // ---------------------------------------------------------------------------- static JNINativeMethod gMethods[] = { - {"openNative", "(Landroid/content/res/AssetManager;Ljava/lang/String;II)I", + {"openNative", "(Ljava/nio/ByteBuffer;II)I", (void*)latinime_BinaryDictionary_open}, {"closeNative", "(I)V", (void*)latinime_BinaryDictionary_close}, {"getSuggestionsNative", "(I[II[C[IIIII[II)I", (void*)latinime_BinaryDictionary_getSuggestions}, @@ -167,30 +133,6 @@ static int registerNativeMethods(JNIEnv* env, const char* className, static int registerNatives(JNIEnv *env) { const char* const kClassPathName = "com/android/inputmethod/latin/BinaryDictionary"; - jclass clazz; - - clazz = env->FindClass("java/io/FileDescriptor"); - if (clazz == NULL) { - LOGE("Can't find %s", "java/io/FileDescriptor"); - return -1; - } - sDescriptorField = env->GetFieldID(clazz, "descriptor", "I"); - - clazz = env->FindClass("android/content/res/AssetManager"); - if (clazz == NULL) { - LOGE("Can't find %s", "java/io/FileDescriptor"); - return -1; - } - sAssetManagerNativeField = env->GetFieldID(clazz, "mObject", "I"); - - // Get the field pointer for the dictionary length - clazz = env->FindClass(kClassPathName); - if (clazz == NULL) { - LOGE("Can't find %s", kClassPathName); - return -1; - } - sDictLength = env->GetFieldID(clazz, "mDictLength", "I"); - return registerNativeMethods(env, kClassPathName, gMethods, sizeof(gMethods) / sizeof(gMethods[0])); } diff --git a/native/src/dictionary.cpp b/native/src/dictionary.cpp index 3f196a9ed..e75beb5b7 100644 --- a/native/src/dictionary.cpp +++ b/native/src/dictionary.cpp @@ -19,14 +19,8 @@ #include #include #include -#include - -//#define USE_ASSET_MANAGER - -#ifdef USE_ASSET_MANAGER -#include -#include -#endif +//#include +#define LOGI #include "dictionary.h" #include "basechars.h" From 6aab33105a64dabe0b85c4d4fdc4f784a7a57c4f Mon Sep 17 00:00:00 2001 From: Amith Yamasani Date: Tue, 27 Apr 2010 11:30:17 -0700 Subject: [PATCH 2/6] Remove .com key from URL and Email address keyboards. Bug: 2630268 Have the spacebar be normal width and remove the .com keys. Change-Id: I470ee4ffa2c84b91e3207e016c99bc66b34ef564 --- java/res/xml-de/kbd_qwerty.xml | 12 ++++++------ java/res/xml-fr/kbd_qwerty.xml | 12 ++++++------ java/res/xml-ru/kbd_qwerty.xml | 12 ++++++------ java/res/xml-sv/kbd_qwerty.xml | 12 ++++++------ java/res/xml/kbd_qwerty.xml | 12 ++++++------ 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/java/res/xml-de/kbd_qwerty.xml b/java/res/xml-de/kbd_qwerty.xml index 4e57c6067..da833b2c4 100755 --- a/java/res/xml-de/kbd_qwerty.xml +++ b/java/res/xml-de/kbd_qwerty.xml @@ -120,11 +120,11 @@ - + - + - + - + - + - + - + - + - + - + Date: Tue, 27 Apr 2010 14:30:47 -0700 Subject: [PATCH 3/6] Import revised translations Change-Id: I1050cb361860cbea36bba762d37b4558dee8cecb --- java/res/values-cs/strings.xml | 40 +++++++++++++++--------------- java/res/values-da/strings.xml | 14 +++++------ java/res/values-de/strings.xml | 14 +++++------ java/res/values-el/strings.xml | 2 +- java/res/values-es-rUS/strings.xml | 2 +- java/res/values-es/strings.xml | 18 +++++++------- java/res/values-fr/strings.xml | 6 ++--- java/res/values-it/strings.xml | 14 +++++------ java/res/values-ko/strings.xml | 24 +++++++++--------- java/res/values-nl/strings.xml | 8 +++--- java/res/values-pl/strings.xml | 10 ++++---- java/res/values-pt-rPT/strings.xml | 6 ++--- java/res/values-pt/strings.xml | 6 ++--- java/res/values-ru/strings.xml | 18 +++++++------- java/res/values-sv/strings.xml | 4 +-- java/res/values-zh-rCN/strings.xml | 26 +++++++++---------- java/res/values-zh-rTW/strings.xml | 2 +- 17 files changed, 107 insertions(+), 107 deletions(-) diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml index 7733d2139..4bc1f5543 100644 --- a/java/res/values-cs/strings.xml +++ b/java/res/values-cs/strings.xml @@ -42,17 +42,17 @@ "Rychlé opravy" - "Opravuje běžné překlepy" - "Zobrazovat návrhy" - "Při psaní zobrazovat návrhy slov" + "Opravuje nejčastější chyby při psaní" + "Zobrazit návrhy" + "Zobrazovat navržená slova během psaní" "Automatické dokončování" - "Stisknutí mezerníku nebo interpunkce automaticky vloží zvýrazněné slovo" + "Stisknutím mezerníku nebo interpunkčního znaménka automaticky vložíte zvýrazněné slovo." - "Není" + "Žádný" "Základní" "Pokročilé" - "%s : Uloženo" + "%s: Uloženo" "áàâãäåæ" "éěèêë" "íìîï" @@ -62,18 +62,18 @@ "ňñ" "čç" "ýÿ" - "Podržením klávesy zobrazíte diakritiku (ž, á atd.)" - "Stisknutím klávesy Zpět ↶ můžete klávesnici kdykoli zavřít" + "Podržením klávesy zobrazíte diakritiku (á, ž apod.)" + "Stisknutím klávesy Zpět ↶ můžete klávesnici kdykoli zavřít." "Přístup k číslům a symbolům" - "Stisknutím a podržením slova zcela vlevo toto slovo přidáte do slovníku" - "Chcete-li pokračovat, dotkněte se této rady »" - "Chcete-li tuto radu zavřít a začít psát, dotkněte se zde." - "Klávesnice se zobrazí, kdykoli se dotknete textového pole." - "Stisknutím a podržením klávesy zobrazíte diakritiku"\n"(ó, ø, ö, ô atd.)" - "Stisknutím této klávesy přejdete do režimu číslic a symbolů" - "Opětovným stisknutím této klávesy se vrátíte zpět do režimu písmen" - "Chcete-li změnit nastavení klávesnice, jako například automatické dokončování, stiskněte tuto klávesu a podržte ji." - "Zkuste to." + "Stisknutím a podržením slova zcela vlevo toto slovo přidáte do slovníku." + "Chcete-li pokračovat, dotkněte se tohoto tipu »" + "Chcete-li tento tip zavřít a začít psát, dotkněte se zde." + "Klávesnice se otevře vždy, když se dotknete textového pole." + "Přidržením klávesy zobrazíte diakritiku"\n"(ó, ø, ö, ô apod.)" + "Chcete-li přepnout na režim zadávání číslic a symbolů, dotkněte se této klávesy." + "Chcete-li přejít zpět k zadávání písmen, dotkněte se této klávesy znovu." + "Přidržením této klávesy změníte nastavení klávesnice (např. automatické dokončování)." + "Vyzkoušejte si to." "Přejít" "Další" "Hotovo" @@ -116,9 +116,9 @@ "Po hlasovém vstupu automaticky odeslat" "Při vyhledávání nebo přechodu na další pole automaticky stisknout Enter." - "Otevřete klávesnici"\n\n"Dotkněte se jakéhokoli textového pole." - "Zavřete klávesnici"\n\n"Stiskněte klávesu Zpět." - "Přidržením klávesy zobrazte možnosti"\n\n"Použijte interpunkční znaménka a diakritiku." + "Otevřete klávesnici"\n\n"Dotkněte se libovolného textového pole." + "Zavřete klávesnici"\n\n"Stiskněte tlačítko Zpět." + "Přidržením klávesy zobrazte možnosti"\n\n"Přístup k interpunkčním znaménkům a diakritice." "Nastavení klávesnice"\n\n"Dotkněte se klávesy ""?123"" a přidržte ji." ".com" ".cz" diff --git a/java/res/values-da/strings.xml b/java/res/values-da/strings.xml index a4dc2f22d..750d67b20 100644 --- a/java/res/values-da/strings.xml +++ b/java/res/values-da/strings.xml @@ -68,11 +68,11 @@ "Tryk og hold på ordet længst til venstre for at føje det til ordbogen" "Berør dette tip for at fortsætte »" "Berør her for at lukke dette tip og begynde at indtaste!" - "Tastaturet åbnes, når du berører et tekstfelt" - "Berør og hold en tast nede for at vise accenter"\n"(ø, ö, ô, ó osv.)" + "Tastaturet åbner når som helst, du berører et tekstfelt" + "Tryk på en tast, og hold den nede for a vise accenter"\n"(ø, ö, ô, ó osv.)" "Skift til tal og symboler ved at røre denne tast" - "Gå tilbage til bogstaverne ved at berøre denne tast igen" - "Berør og hold denne tast nede for at ændre indstillingerne for tastaturet, som f.eks. automatisk udfyldelse" + "Gå tilbage til bogstaver ved at berøre denne tast igen" + "Tryk på denne tast, og hold den nede for at ændre tastaturindstillingerne, som f.eks. automatisk udfyldelse" "Prøv det!" "Gå" "Næste" @@ -117,9 +117,9 @@ "Send automatisk efter stemme" "Tryk automatisk på enter, når du søger eller går til det næste felt." "Åbn tastaturet"\n\n"Tryk på et hvilket som helst tekstfelt." - "Luk tastaturet"\n\n"Tryk på Tilbagetasten." - "Tryk på og hold en tast nede for valgmuligheder"\n\n"Få adgang til tegnsætning og accenter." - "Indstillinger for tastatur"\n\n"Tryk på og hold tasten ""?123"" nede." + "Luk tastaturet"\n\n"Tryk på knappen Tilbage." + "Tryk på en tast, og hold den nede for valgmuligheder"\n\n"Få adgang til tegnsætning og accenter." + "Tastaturindstillinger"\n\n"Tryk på tasten ""?123"", og hold den nede." ".com" ".net" ".org" diff --git a/java/res/values-de/strings.xml b/java/res/values-de/strings.xml index f75bfc9d8..7d3d53c3c 100644 --- a/java/res/values-de/strings.xml +++ b/java/res/values-de/strings.xml @@ -52,7 +52,7 @@ "Standard" "Erweitert" - "%s : Gespeichert" + "%s: gespeichert" "ä" "èéêë" "ìíîï" @@ -69,11 +69,11 @@ "Diesen Hinweis berühren, um fortzufahren »" "Hier berühren, um diesen Hinweis zu schließen und mit dem Tippen zu beginnen!" "Die Tastatur wird immer dann geöffnet, wenn Sie ein Textfeld berühren." - "Halten Sie eine Taste gedrückt, um Sonderzeichen anzuzeigen"\n"(ø, ö, ô, ó usw.)." - "Wechseln Sie zu Nummern und Symbolen, indem Sie diese Taste berühren." - "Gehen Sie zurück zu Buchstaben, indem Sie diese Taste erneut drücken." + "Halten Sie eine Taste gedrückt, um Akzente anzuzeigen"\n"(ø, ö, ô, ó usw.)." + "Wechseln Sie zu Ziffern und Symbolen, indem Sie diese Taste berühren." + "Durch erneutes Drücken dieser Taste gelangen Sie zurück zu den Buchstaben." "Halten Sie diese Taste gedrückt, um die Tastatureinstellungen, wie beispielsweise die automatische Vervollständigung, zu ändern." - "Probieren Sie es!" + "Probieren Sie es aus!" "Los" "Weiter" "Fertig" @@ -117,8 +117,8 @@ "Nach Sprachaufnahme automatisch senden" "Drücken Sie auf die Eingabetaste, wenn Sie einen Suchvorgang durchführen oder zum nächsten Feld wechseln." "Tastatur öffnen"\n\n"Berühren Sie ein beliebiges Textfeld." - "Tastatur schließen"\n\n"Drücken Sie die Taste \"Zurück\"." - "Eine Taste für Optionen berühren und gedrückt halten"\n\n"Greifen Sie auf Satzzeichen und Akzente zu." + "Tastatur schließen"\n\n"Drücken Sie die Zurück-Taste." + "Für Optionen eine Taste berühren und gedrückt halten"\n\n"Greifen Sie auf Satzzeichen und Akzente zu." "Tastatureinstellungen"\n\n"Berühren und halten Sie die Taste ""?123"" gedrückt." ".com" ".net" diff --git a/java/res/values-el/strings.xml b/java/res/values-el/strings.xml index c41617ffa..c4a50771a 100644 --- a/java/res/values-el/strings.xml +++ b/java/res/values-el/strings.xml @@ -72,7 +72,7 @@ "Αγγίξτε και κρατήστε κάποιο πλήκτρο για να προβάλετε τους τονισμένους χαρακτήρες"\n"(ø, ö, ô, ó κ.τ.λ.)" "Αλλαγή σε αριθμούς και σύμβολα με το πάτημα αυτού του πλήκτρου" "Επιστρέψτε στα γράμματα αγγίζοντας ξανά αυτό το πλήκτρο" - "Αγγίξτε & κρατήστε πατημένο αυτό το πλήκτρο για να αλλάξετε τις ρυθμίσεις πληκτρολογίου, όπως η αυτόματη συμπλήρωση" + "Αγγίξτε και κρατήστε πατημένο αυτό το πληκτρολόγιο για να αλλάξετε τις ρυθμίσεις πληκτρολογίου, όπως η αυτόματη συμπλήρωση" "Δοκιμάστε το!" "Μετάβαση" "Επόμενο" diff --git a/java/res/values-es-rUS/strings.xml b/java/res/values-es-rUS/strings.xml index 6c43e4cc4..cd17dba31 100644 --- a/java/res/values-es-rUS/strings.xml +++ b/java/res/values-es-rUS/strings.xml @@ -118,7 +118,7 @@ "Presionar automáticamente Ingresar al buscar o ir al campo siguiente." "Abrir el teclado"\n\n"Tocar cualquier campo de texto." "Cerrar el teclado"\n\n"Presionar la tecla Atrás." - "Tocar y mantener presionada una tecla para las opciones"\n\n"Acceder a puntuación y acentos." + "Tocar & y mantener presionada una tecla para las opciones"\n\n"Acceder a puntuación y acentos." "Configuración del teclado"\n\n"Tocar & y mantener presionada la tecla ""?123""." ".com" ".net" diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml index 8a1fb9db8..fbe3ad347 100644 --- a/java/res/values-es/strings.xml +++ b/java/res/values-es/strings.xml @@ -21,7 +21,7 @@ "Teclado de Android" - "Configuración del teclado de Android" + "Ajustes del teclado de Android" "Vibrar al pulsar tecla" "Sonido al pulsar tecla" "Corregir errores de escritura" @@ -31,7 +31,7 @@ "Sugerencias de palabras" "Corregir automáticamente la palabra anterior" "Sugerencias de palabras" - "Configuración de sugerencia de palabras" + "Ajustes de sugerencia de palabras" "Habilitar Autocompletar al escribir" "Autocompletar" "Aumentar el tamaño del campo de texto" @@ -52,7 +52,7 @@ "Básico" "Avanzado" - "%s : Guardada" + "%s: guardada" "á" "é" "ìíîï" @@ -69,10 +69,10 @@ "Toca esta sugerencia para continuar »" "Toca aquí para cerrar la sugerencia y comenzar a escribir." "El teclado se abre cada vez que tocas un campo de texto""." - "Mantén pulsada una tecla para ver los caracteres acentuados "\n"(ø, ö, ô, ó, etc.)" - "Toca esta tecla para cambiar al teclado de números y símbolos""." - "Toca esta tecla de nuevo para volver a las letras" - "Mantén pulsada esta tecla para cambiar la configuración del teclado como, por ejemplo, la opción de autocompletar""." + "Mantén pulsada una tecla para ver los caracteres acentuados"\n"(ø, ö, ô, ó, etc.)." + "Cambiar a números y a símbolos tocando esta tecla" + "Volver a las letras tocando esta tecla de nuevo" + "Mantén pulsada esta tecla para cambiar la configuración de teclado a, por ejemplo, autocompletar""." "¡Pruébalo!" "Ir" "Sig." @@ -116,10 +116,10 @@ "Enviar automáticamente después de la introducción de voz" "Pulsar Intro automáticamente al buscar o al pasar al siguiente campo" - "Abrir el teclado"\n\n"Pulsa cualquier campo de texto." + "Abrir el teclado"\n\n"Toca cualquier campo de texto." "Cerrar el teclado"\n\n"Pulsa la tecla \"Atrás\"." "Mantén pulsada una tecla para acceder a las opciones."\n\n"Accede a los signos de puntuación y a los acentos." - "Configuración del teclado"\n\n"Mantén pulsada la tecla ""?123""." + "Ajustes del teclado"\n\n"Mantén pulsada la tecla ""?123""." ".com" ".net" ".org" diff --git a/java/res/values-fr/strings.xml b/java/res/values-fr/strings.xml index 2f449c488..2cabe40d9 100644 --- a/java/res/values-fr/strings.xml +++ b/java/res/values-fr/strings.xml @@ -69,9 +69,9 @@ "Touchez ce conseil pour continuer »" "Touchez ici pour fermer ce conseil et commencer à saisir votre texte." "Le clavier s\'affiche à chaque fois que vous touchez une zone de texte." - "Maintenez une touche enfoncée pour afficher les accents"\n"(ø, ö, ô, ó, etc.)" + "Maintenez une touche enfoncée pour afficher les accents"\n"(ø, ö, ô, ó, etc.)""." "Appuyez sur cette touche pour basculer vers les chiffres et les symboles." - "Retourner au clavier en appuyant de nouveau sur cette touche" + "Appuyez de nouveau sur cette touche pour retourner aux lettres." "Maintenez cette touche enfoncée afin de modifier les paramètres du clavier, tels que la saisie semi-automatique." "Essayez !" "OK" @@ -118,7 +118,7 @@ "Appuyez automatiquement sur Entrée pour effectuer une recherche ou accéder au champ suivant." "Ouvrir le clavier"\n\n"Appuyez sur un champ de texte." "Fermer le clavier"\n\n"Appuyez sur la touche Retour." - "Appuyer sur une touche de manière prolongée pour accéder aux options"\n\n"Accédez aux signes de ponctuation et aux accents." + "Appuyez sur une touche de manière prolongée pour accéder aux options"\n\n"Accédez aux signes de ponctuation et aux accents." "Paramètres du clavier"\n\n"Appuyez sur la touche ""?123"" de manière prolongée." ".com" ".net" diff --git a/java/res/values-it/strings.xml b/java/res/values-it/strings.xml index 96619269c..3844aea8f 100644 --- a/java/res/values-it/strings.xml +++ b/java/res/values-it/strings.xml @@ -69,11 +69,11 @@ "Tocca questo suggerimento per continuare »" "Tocca qui per chiudere questo suggerimento e iniziare a digitare." "La tastiera si apre ogni volta che tocchi un campo di testo" - "Tocca e tieni premuto un tasto per visualizzare le lettere con segni diacritici"\n"(ø, ö, ô, ó e così via)" - "Passa a numeri e simboli toccando questo tasto" - "Torna all\'alfabeto toccando di nuovo questo tasto" - "Tocca e tieni premuto questo tasto per modificare le impostazioni della tastiera, come il completamento automatico" - "Prova." + "Tocca e tieni premuto un pulsante per visualizzare le lettere con segni diacritici"\n"(ø, ö, ô, ó e così via)" + "Passa a numeri e simboli toccando questo pulsante" + "Torna alle lettere toccando di nuovo questo pulsante" + "Tocca e tieni premuto questo pulsante per modificare le impostazioni della tastiera, come il completamento automatico" + "Prova!" "Vai" "Avanti" "Fine" @@ -118,8 +118,8 @@ "Premi automaticamente \"Invio\" durante una ricerca o un passaggio al campo successivo." "Apertura tastiera"\n\n"Tocca qualsiasi campo di testo." "Chiusura tastiera"\n\n"Premi il tasto Indietro." - "Tocca e tieni premuto un tasto per le opzioni"\n\n"Accesso a punteggiatura e accenti." - "Impostazioni tastiera"\n\n"Tocca e tieni premuto il tasto ""?123""." + "Tocca e tieni premuto un pulsante per le opzioni"\n\n"Accesso a punteggiatura e accenti." + "Impostazioni tastiera"\n\n"Tocca e tieni premuto il pulsante ""?123""." ".com" ".net" ".org" diff --git a/java/res/values-ko/strings.xml b/java/res/values-ko/strings.xml index 4cc0933be..350957939 100644 --- a/java/res/values-ko/strings.xml +++ b/java/res/values-ko/strings.xml @@ -35,7 +35,7 @@ "입력할 때 자동 완성 사용" "자동 완성" "입력란 크기 늘리기" - "가로 보기에서 단어 추천 숨기기" + "가로 보기에서 추천 단어 숨기기" "자동 대문자화" "문장의 첫 글자를 대문자로 표시" "자동 구두점 입력" @@ -52,7 +52,7 @@ "기본" "고급" - "%s : 저장됨" + "%s: 저장됨" "àáâãäåæ" "èéêë" "ìíîï" @@ -64,16 +64,16 @@ "ýÿ" "키를 길게 누르면 악센트(ø, ö 등)가 표시됩니다." "키보드를 닫으려면 언제든지 뒤로 키(↶)를 누르세요." - "숫자 및 기호 액세스" + "숫자 및 기호 사용" "맨 왼쪽에 있는 단어를 길게 누르면 사전에 추가됩니다." "계속하려면 힌트를 터치하세요. »" "힌트를 닫고 입력을 시작하려면 여기를 터치하세요." - "입력란을 터치하면 키보드가 열립니다." - "키를 길게 누르면 악센트"\n"(ø, ö, ô, ó 등)를 볼 수 있습니다." - "이 키를 터치하면 숫자 및 기호 자판으로 변경됩니다." - "이 키를 다시 터치하면 키보드가 표시됩니다." - "자동 완성과 같은 키보드 설정을 변경하려면 이 키를 길게 누르세요." - "이제 직접 사용해 보세요!" + "언제든지 입력란을 터치하면 키보드가 열립니다." + "키를 길게 터치하면 악센트"\n"(ø, ö, ô, ó 등)가 표시됩니다." + "이 키를 터치하면 숫자 및 기호 키보드로 전환됩니다." + "이 키를 다시 터치하면 문자 키보드로 돌아갑니다." + "자동 완성과 같은 키보드 설정을 변경하려면 이 키를 길게 터치하세요." + "이제 사용해 보세요." "이동" "다음" "완료" @@ -99,7 +99,7 @@ "음성이 인식되지 않았습니다." "일치하는 항목 없음" "음성 검색이 설치되지 않았습니다." - "도움말:"" 키보드를 스와이프하고 말하세요." + "도움말:"" 키보드 위로 손가락을 미끄러지듯 움직이고 나서 말하세요." "도움말:"" 다음 번에는 \'마침표\', \'쉼표\', \'물음표\'와 같은 구두점을 말해 보세요." "취소" "확인" @@ -118,8 +118,8 @@ "검색하거나 다음 입력란으로 이동할 때 자동으로 Enter 키를 누릅니다." "키보드 열기"\n\n"아무 텍스트 입력란이나 터치하세요." "키보드 닫기"\n\n"\'뒤로\' 키를 누르세요." - "키를 길게 터치하여 옵션 보기"\n\n"문장 부호 및 악센트 기호에 액세스하세요." - "키보드 설정"\n\n"?123"" 키를 길게 터치하세요." + "키를 길게 눌러 옵션 보기"\n\n"문장 부호 및 악센트 기호 입력창이 열립니다." + "키보드 설정"\n\n"?123"" 키를 길게 누르세요." ".com" ".net" ".org" diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index a88836d9c..00b197bf1 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -22,7 +22,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> "Android-toetsenbord" "Instellingen voor Android-toetsenbord" - "Trillen bij druk op een toets" + "Trillen bij druk op toets" "Geluid bij druk op een toets" "Typefouten corrigeren" "Foutcorrectie tijdens invoer inschakelen" @@ -36,7 +36,7 @@ "Automatisch voltooien" "Tekstveld vergroten" "Woordsuggesties verbergen in liggende weergave" - "Automatisch hoofdlettergebruik" + "Auto-hoofdlettergebruik" "Hoofdletter gebruiken aan het begin van een zin" "Automatische interpunctie" @@ -52,7 +52,7 @@ "Basis" "Geavanceerd" - "%s : Opgeslagen" + "%s: opgeslagen" "àáâãäåæ" "èéêë" "ìíîï" @@ -119,7 +119,7 @@ "Het toetsenbord openen"\n\n"Raak een tekstveld aan." "Het toetsenbord sluiten"\n\n"Druk op de terugtoets." "Een toets blijven aanraken voor opties"\n\n"Toegang tot interpunctie en diakritische tekens." - "Toetsenbordinstellingen"\n\n"Blijf de toets ""?123"" aanraken." + "Toetsenbordinstellingen"\n\n"Blijf de toets \'""?123""\' aanraken." ".com" ".net" ".org" diff --git a/java/res/values-pl/strings.xml b/java/res/values-pl/strings.xml index 6db80456f..0c72727ce 100644 --- a/java/res/values-pl/strings.xml +++ b/java/res/values-pl/strings.xml @@ -28,14 +28,14 @@ "Włącz poprawianie błędów wprowadzania" "Błędy wprowadzania w orientacji poziomej" "Włącz poprawianie błędów wprowadzania" - "Propozycje słów" + "Sugestie słów" "Automatycznie poprawiaj poprzednie słowo" - "Propozycje słów" + "Sugestie słów" "Ustawienia propozycji słów" "Włącz autouzupełnianie podczas wpisywania" "Autouzupełnianie" "Zwiększ rozmiar pola tekstowego" - "Wyłącz propozycje słów w orientacji poziomej" + "Wyłącz sugestie słów w orientacji poziomej" "Wstawiaj wielkie litery" "Zamieniaj na wielką pierwszą literę zdania" "Automatyczna interpunkcja" @@ -74,7 +74,7 @@ "Wróć do trybu liter, dotykając ponownie tego klawisza." "Dotknij i przytrzymaj ten klawisz, aby zmienić ustawienia klawiatury, takie jak autouzupełnianie." "Wypróbuj!" - "Przejdź" + "OK" "Dalej" "Gotowe" "Wyślij" @@ -88,7 +88,7 @@ "Aby wyłączyć wprowadzanie głosowe, przejdź do ustawień klawiatury." "Aby skorzystać z wprowadzania głosowego, naciśnij przycisk mikrofonu lub przesuń palcem po klawiaturze ekranowej." "Mów teraz" - "Działa" + "W toku" "Błąd. Spróbuj ponownie." diff --git a/java/res/values-pt-rPT/strings.xml b/java/res/values-pt-rPT/strings.xml index 3b6fc3165..35a9cb715 100644 --- a/java/res/values-pt-rPT/strings.xml +++ b/java/res/values-pt-rPT/strings.xml @@ -52,7 +52,7 @@ "Básico" "Avançados" - "%s: Guardada" + "%s: guardada" "àáâãäåæ" "èéêë" "ìíîï" @@ -69,10 +69,10 @@ "Toque nesta sugestão para continuar »" "Toque aqui para fechar esta sugestão e começar a escrever!" "O teclado abre quando tocar num campo de texto" - "Toque e mantenha premida uma tecla para ver os acentos"\n"(ø, ö, ô, ó, etc.)" + "Mantenha premida uma tecla para ver os acentos"\n"(ø, ö, ô, ó, etc.)" "Mude para números e símbolos tocando nesta tecla" "Regresse às letras tocando novamente nesta tecla" - "Toque e mantenha premida esta tecla para alterar definições do teclado, como a conclusão automática." + "Mantenha premida esta tecla para alterar definições do teclado, tais como a conclusão automática" "Experimente!" "Ir" "Seguinte" diff --git a/java/res/values-pt/strings.xml b/java/res/values-pt/strings.xml index 0d7fbf357..235fd65ac 100644 --- a/java/res/values-pt/strings.xml +++ b/java/res/values-pt/strings.xml @@ -68,8 +68,8 @@ "Pressione e segure a palavra mais à esquerda para adicioná-la ao dicionário" "Toque nesta dica para continuar »" "Toque aqui para fechar esta dica e começar a digitar!" - "O teclado abre toda vez que você tocar em um arquivo de texto" - "Tocar e segurar a tecla para visualizar acentos"\n"(ø, ö, ô, ó e assim por diante)" + "O teclado abre toda vez que você tocar em um campo de texto" + "Tocar e segurar uma tecla para visualizar acentos"\n"(ø, ö, ô, ó e assim por diante)" "Alternar para números e símbolos tocando nessa tecla" "Voltar às letras tocando novamente nessa tecla" "Tocar e segurar esta tecla para alterar as configurações do teclado, como a conclusão automática" @@ -118,7 +118,7 @@ "Pressione Enter automaticamente ao pesquisar ou ir para o próximo campo." "Abra o teclado"\n\n"Toque em qualquer campo de texto." "Feche o teclado"\n\n"Pressione a tecla Voltar." - "Toque e mantenha pressionada uma tecla para ver as opções"\n\n"Acesse a pontuação e os acentos." + "Toque e mantenha pressionada uma tecla para ver as opções"\n\n"Acesse a pontuação e as pronúncias." "Configurações de teclado"\n\n"Toque e mantenha pressionada a tecla ""?123""." ".com" ".net" diff --git a/java/res/values-ru/strings.xml b/java/res/values-ru/strings.xml index 8a60c2844..e27402c7f 100644 --- a/java/res/values-ru/strings.xml +++ b/java/res/values-ru/strings.xml @@ -38,7 +38,7 @@ "Скрывать предложение слов в горизонтальной ориентации" "Автоподст. заглавных" "Делать заглавной первую букву предложения" - "Автоматическая пунктуация" + "Автопунктуация" "Быстрое исправление" @@ -46,13 +46,13 @@ "Предлагать варианты" "Предлагать варианты слов во время ввода" "Автозавершение" - "При нажатии пробела или знака препинания вставлять предложенное слово" + "При нажатии пробела вставлять предложенное слово" "Нет" "Основной" - "Расширенный" + "Дополнительно" - "%s : сохранено" + "%s: сохранено" "àáâãäåæ" "èéêë" "ìíîï" @@ -69,12 +69,12 @@ "Чтобы продолжить, нажмите на эту подсказку »" "Нажмите здесь, чтобы закрыть подсказку и начать вводить текст." "Клавиатура появляется автоматически при касании текстового поля" - "Нажмите и удерживайте клавишу, чтобы появились спецсимволы "\n"(ø, ö, ô, ó и т. п.)" - "Чтобы переключаться между вводом цифр и символов, используйте эту клавишу" + "Нажмите и удерживайте клавишу для отображения вариантов с диакритическими знаками "\n"(ø, ö, ô, ó и т. п.)" + "Для переключения между вводом цифр и символов используйте эту клавишу" "Чтобы вернуться к буквенной клавиатуре, снова нажмите на эту клавишу" - "Чтобы сменить настройки клавиатуры (такие как автозавершение), нажмите и удерживайте эту клавишу" + "Чтобы изменить настройки клавиатуры (такие как автозавершение), нажмите и удерживайте эту клавишу" "Попробуйте!" - "Перейти" + "Поиск" "Далее" "Готово" "Отправить" @@ -116,7 +116,7 @@ "Автоматически отправлять по окончании голосового ввода" "Автоматически нажимать \"Ввод\" при поиске или переходе к следующему полю." - "Откройте клавиатуру"\n\n"Нажмите на любое текстовое поле." + "Открытие клавиатуры"\n\n"Нажмите на любое текстовое поле." "Закрытие клавиатуры"\n\n"Нажмите клавишу \"Назад\"." "Нажмите и удерживайте клавишу для вызова параметров"\n\n"Доступ к пунктуационным и диакритическим знакам." "Настройки клавиатуры"\n\n"Нажмите и удерживайте клавишу ""?123""." diff --git a/java/res/values-sv/strings.xml b/java/res/values-sv/strings.xml index 7a467b576..9c6c22159 100644 --- a/java/res/values-sv/strings.xml +++ b/java/res/values-sv/strings.xml @@ -69,7 +69,7 @@ "Tryck på tipset för att fortsätta »" "Tryck här om du vill stänga tipset och börja skriva!" "Tangentbordet öppnas när du trycker på ett textfält" - "Tryck och håll ned en tangent om du vill visa accenter"\n"(ø, ö, ô, ó och så vidare)" + "Tryck och håll nere en tangent om du vill visa accenter"\n"(ø, ö, ô, ó och så vidare)" "Växla till siffror och symboler med den här tangenten" "Återgå till bokstäver genom att trycka på tangenten en gång till" "Tryck och håll ned tangenten om du vill ändra inställningarna för tangentbordet, till exempel Komplettera automatiskt" @@ -119,7 +119,7 @@ "Öppna tangentbordet"\n\n"Tryck på ett textfält." "Stäng tangentbordet"\n\n"Tryck på Tillbaka." "Tryck länge på en tangent om du vill se alternativ"\n\n"Använda skiljetecken och accenter." - "Tangentbordsinställningar"\n\n"Tryck länge på tangenten ""?123""." + "Tangentbordsinställningar"\n\n"Tryck länge på tangenten""?123""." ".com" ".net" ".org" diff --git a/java/res/values-zh-rCN/strings.xml b/java/res/values-zh-rCN/strings.xml index 3fe189621..9c9b25708 100644 --- a/java/res/values-zh-rCN/strings.xml +++ b/java/res/values-zh-rCN/strings.xml @@ -25,16 +25,16 @@ "按键时振动" "按键时播放音效" "纠正输入错误" - "启用输入错误纠正" + "启用输入错误纠正功能" "横向输入错误" - "启用输入错误纠正" + "启用输入错误纠正功能" "字词建议" - "自动纠正之前的字词" + "自动纠正前面的字词" "字词建议" "字词建议设置" "输入时启用自动填写功能" "自动完成" - "增加文本域的大小" + "扩大文字字段" "在横向视图中隐藏字词建议" "自动大写" "句首字母大写" @@ -50,7 +50,7 @@ "无" "基本模式" - "高级模式" + "高级" "%s:已保存" "àáâãäåæ" @@ -68,11 +68,11 @@ "长按最左侧的字可将其添加到词典中" "轻触此提示继续 »" "轻触此处可关闭该提示,然后便可开始输入内容!" - "轻触文本字段即可打开键盘" - "按住某个键可看到重音符号"\n"(例如 ø、ö、ô、ó 等)" - "轻触该键可切换到数字和符号输入模式" - "再次轻触该键可返回字母输入模式" - "长按该键可更改键盘设置,例如自动填写" + "您可以随时通过触摸文字字段打开键盘" + "轻触并按住某个键可以查看重音符号"\n"(ø、ö、ô、ó 等)" + "轻触该键即可切换到数字和符号键盘" + "再次轻触该键即可返回字母键盘" + "触摸并按住该键可更改键盘设置,例如自动完成" "试试吧!" "开始" "下一步" @@ -116,10 +116,10 @@ "语音结束后自动提交" "搜索或转到下一字段时自动按 Enter。" - "打开键盘"\n\n"轻触任意文本字段。" + "打开键盘"\n\n"触摸任意文本字段。" "关闭键盘"\n\n"按“返回”键。" - "按住某个键可开启其他字符选项"\n\n"访问标点和重音符号。" - "键盘设置"\n\n"长按 ""?123"" 键。" + "触摸并按住选项键"\n\n"进入标点/重音符号界面。" + "键盘设置"\n\n"触摸并按住 ""?123"" 键。" ".com" ".net" ".org" diff --git a/java/res/values-zh-rTW/strings.xml b/java/res/values-zh-rTW/strings.xml index 683078eef..4f83be405 100644 --- a/java/res/values-zh-rTW/strings.xml +++ b/java/res/values-zh-rTW/strings.xml @@ -75,7 +75,7 @@ "輕觸並按住此鍵即可變更鍵盤設定,例如自動完成" "試試看!" "開始" - "下一步" + "繼續" "完成" "傳送" "?123" From 8f3106e276ff04fde9f619f36b13c438589997bd Mon Sep 17 00:00:00 2001 From: Filip Miletic Date: Mon, 1 Mar 2010 22:51:49 -0800 Subject: [PATCH 4/6] Adds the basic Serbian files to LatinIME. - Adds the Serbian keyboard layout. - Adds the Serbian translatio to strings.xml. Change-Id: I29739f422fd58d31fd2e5213b72908dd1f617805 --- res/values-sr/strings.xml | 313 ++++++++++++++++++++++++++++++++++++++ res/xml-sr/kbd_qwerty.xml | 171 +++++++++++++++++++++ 2 files changed, 484 insertions(+) create mode 100644 res/values-sr/strings.xml create mode 100644 res/xml-sr/kbd_qwerty.xml diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml new file mode 100644 index 000000000..64f5af1f1 --- /dev/null +++ b/res/values-sr/strings.xml @@ -0,0 +1,313 @@ + + + + + Андроидова тастатура + + Подешавања андроидове тастатуре + + + Вибрације при притиску + + Звук при притиску + + + Исправљање грешака + + + Исправљање грешака при уносу + + + Грешке при водоравној оријентацији + + + Исправљање грешака при уносу при + водоравном положају + + + Предлози речи + + + Аутоматска исправка претходно унесене речи + + + Предлози речи + + Подешавања за предлоге речи + + Укључи аутоматске наставке при уносу + + + Аутоматски наставци + + + Увећан поље за унос текста + + Сакриј предлоге речи при водоравном положају + + + Аутоматска величина слова + + Велико слово на почетку реченице + + Аутоматска интерпункција + + Аутоматско постављање интерпункцијских знака при уносу. + + + Брзе исправке + + Аутоматска исправка честих грешака + + + Приказ предлога + + Приказује предлоге речи током уноса + + + Аутоматска допуна + + Размакница и интерпункција аутоматски убацују означену реч. + + + + Искључено + Основно + Напредно + + + + 0 + + 1 + + 2 + + + @string/prediction_none + @string/prediction_basic + @string/prediction_full + + + + %s : Saved + + Дуги притисак на тастере открива проширене знаке (ø, ö, итд.) + + Притисните тастер за назад \u21B6 како бисте затворили тастатуру + + Приступ бројевима и симболима + + Притисните и држите притиснуту реч са крајње леве стране + како бисте је додали у речник + + + Притисните овај подсетник да наставите » + + + Притисните овде да бисте затворили подсетник и наставили унос! + + + Тастатура се отвара кад год је потребно да унесете текст + + + Притисните и држите тастер како бисте видели проширене + знаке\n(„, ‟, итд.) + + + + Пребаците се на бројеве и симболе притиском на овај тастер + + + + Вратите се назад на слова притиском на овај тастер + + + Притисните и држите притиснут овај тастер да бисте променили + подешавања тастатуре, попут аутоматског настављања + + + Пробајте сами! + + + + Иди + + Даље + + Крај + + Шаљи + + \?123 + + 123 + + АБВ + + ALT + + + + + Говорни унос + + + Говорни унос није тренутно подржан на Вашем језику, + али ради на енглеском. + + + Говорни унос је експериментална могућност која користи + Google-ово мрежно препознавање говора. + + + Како бисте искључили говорни унос, изаберите подешавања + тастатуре. + + + Како бисте укључили говорни унос, притисните дугме са сличицом + микрофона или превуците прстом преко целе дужине тастатуре. + + + Говорите сада + + + Обрада је у току + + + + + + Грешка. Молимо пробајте поново. + + + Повезивање није успело + + + Грешка, говор је предугачак. + + + Проблем са звуком + + + Грешка на серверу + + + Говор није снимљен + + + Нема погодака + + + Говорна претрага није инсталирана + + + Савет: Превуците прстом преко тастатуре а онда говорите. + + + Савет: Следећи пут, изговорите назив интерпункције, + попут „тачка“, „запета“ или „знак питања“. + + + Откажи + + + У реду + + + Говорни унос + + + + На главној тастатури + На симболичкој тастатури + Искључен + + + + 0 + + 1 + + 2 + + + @string/voice_mode_main + @string/voice_mode_symbols + @string/voice_mode_off + + + + + Микрофон на главној тастатури + Микрофон на симболичкој тастатури + Говорни унос је искључен + + + + Аутоматско слање по говорном уносу + + + Дугме за претрагу се аутоматски притиска при претрази или преласку + на следеће поље за унос. + + + + Отварање тастатуре\n\nTouch any text field. + + + Затварање тастатуре\n\nPress the Back key. + + + Притисните \u0026 и држите пристиснут тастер за опције\n\nПриступ акцентима и интерпункцији. + + + Подешавање тастатуре\n\nПритисните \u0026 и држите тастер \?123\. + + + ".rs" + + ".com" + + ".net" + + ".org" + + ".edu" + + + Метод за унос + + + Језици за унос + + Превуците прстом по размакници за промену језика + + + \u2190 Притисните опет да бисте сачували + diff --git a/res/xml-sr/kbd_qwerty.xml b/res/xml-sr/kbd_qwerty.xml new file mode 100644 index 000000000..e4884a8a6 --- /dev/null +++ b/res/xml-sr/kbd_qwerty.xml @@ -0,0 +1,171 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From f02964264f196447b03a88591a2964b67c318718 Mon Sep 17 00:00:00 2001 From: Amith Yamasani Date: Mon, 3 May 2010 11:14:31 -0700 Subject: [PATCH 5/6] Don't auto-select the system language in IME language selection screen. Fixes http://b/2650378 On entering the selection screen, don't add the system language in addition to other selected languages. Change-Id: Id7a3b45df39a8493d17be668029eee139bf00ff3 --- .../latin/InputLanguageSelection.java | 5 ----- .../inputmethod/latin/LanguageSwitcher.java | 21 ++++++++++++++++++- .../android/inputmethod/latin/LatinIME.java | 2 ++ .../inputmethod/latin/LatinKeyboard.java | 7 +++++++ 4 files changed, 29 insertions(+), 6 deletions(-) diff --git a/java/src/com/android/inputmethod/latin/InputLanguageSelection.java b/java/src/com/android/inputmethod/latin/InputLanguageSelection.java index b5a11010b..5e835e543 100644 --- a/java/src/com/android/inputmethod/latin/InputLanguageSelection.java +++ b/java/src/com/android/inputmethod/latin/InputLanguageSelection.java @@ -89,11 +89,6 @@ public class InputLanguageSelection extends PreferenceActivity { for (int i = 0; i < list.length; i++) { if (lang.equalsIgnoreCase(list[i])) return true; } - // If it matches the current locale - Locale displayLocale = getResources().getConfiguration().locale; - if (lang.equalsIgnoreCase(get5Code(displayLocale))) { - return true; - } return false; } diff --git a/java/src/com/android/inputmethod/latin/LanguageSwitcher.java b/java/src/com/android/inputmethod/latin/LanguageSwitcher.java index 12045125f..578c80526 100644 --- a/java/src/com/android/inputmethod/latin/LanguageSwitcher.java +++ b/java/src/com/android/inputmethod/latin/LanguageSwitcher.java @@ -36,6 +36,7 @@ public class LanguageSwitcher { private int mCurrentIndex = 0; private String mDefaultInputLanguage; private Locale mDefaultInputLocale; + private Locale mSystemLocale; public LanguageSwitcher(LatinIME ime) { mIme = ime; @@ -97,7 +98,9 @@ public class LanguageSwitcher { private void constructLocales() { mLocales = new Locale[mSelectedLanguageArray.length]; for (int i = 0; i < mLocales.length; i++) { - mLocales[i] = new Locale(mSelectedLanguageArray[i]); + final String lang = mSelectedLanguageArray[i]; + mLocales[i] = new Locale(lang.substring(0, 2), + lang.length() > 4 ? lang.substring(3, 5) : ""); } } @@ -140,6 +143,22 @@ public class LanguageSwitcher { return mLocales[(mCurrentIndex + 1) % mLocales.length]; } + /** + * Sets the system locale (display UI) used for comparing with the input language. + * @param locale the locale of the system + */ + public void setSystemLocale(Locale locale) { + mSystemLocale = locale; + } + + /** + * Returns the system locale. + * @return the system locale + */ + public Locale getSystemLocale() { + return mSystemLocale; + } + /** * Returns the previous input locale in the list. Wraps around to the end of the * list if we're at the beginning of the list. diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 206091b9e..299b6a650 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -283,6 +283,7 @@ public class LatinIME extends InputMethodService mKeyboardSwitcher = new KeyboardSwitcher(this, this); mKeyboardSwitcher.setLanguageSwitcher(mLanguageSwitcher); mSystemLocale = conf.locale.toString(); + mLanguageSwitcher.setSystemLocale(conf.locale); String inputLanguage = mLanguageSwitcher.getInputLanguage(); if (inputLanguage == null) { inputLanguage = conf.locale.toString(); @@ -368,6 +369,7 @@ public class LatinIME extends InputMethodService if (mLanguageSwitcher != null) { mLanguageSwitcher.loadLocales( PreferenceManager.getDefaultSharedPreferences(this)); + mLanguageSwitcher.setSystemLocale(conf.locale); toggleLanguage(true, true); } else { reloadKeyboards(); diff --git a/java/src/com/android/inputmethod/latin/LatinKeyboard.java b/java/src/com/android/inputmethod/latin/LatinKeyboard.java index 58e1dc767..d3b23a47d 100644 --- a/java/src/com/android/inputmethod/latin/LatinKeyboard.java +++ b/java/src/com/android/inputmethod/latin/LatinKeyboard.java @@ -430,6 +430,13 @@ public class LatinKeyboard extends Keyboard { Locale locale = mLanguageSwitcher.getLocaleCount() > 0 ? mLanguageSwitcher.getInputLocale() : null; + // If the language count is 1 and is the same as the system language, don't show it. + if (locale != null + && mLanguageSwitcher.getLocaleCount() == 1 + && mLanguageSwitcher.getSystemLocale().getLanguage() + .equalsIgnoreCase(locale.getLanguage())) { + locale = null; + } if (mLocale != null && mLocale.equals(locale)) return; mLocale = locale; updateSpaceBarForLocale(); From bf45d3619ffd036324633b94e0847c2378459139 Mon Sep 17 00:00:00 2001 From: Dan Bornstein Date: Wed, 5 May 2010 09:38:52 -0700 Subject: [PATCH 6/6] For issue #2651381, allow library prelinking. Change-Id: If7015f2fa5932f69807797ffcc496550d5cb1630 --- native/Android.mk | 2 -- 1 file changed, 2 deletions(-) diff --git a/native/Android.mk b/native/Android.mk index 9ba9f75ec..12b6964b9 100644 --- a/native/Android.mk +++ b/native/Android.mk @@ -13,8 +13,6 @@ LOCAL_C_INCLUDES += \ LOCAL_LDLIBS := -lm -LOCAL_PRELINK_MODULE := false - LOCAL_SHARED_LIBRARIES := \ libandroid_runtime \ libcutils \