Input language switching. Bug: 2331173
New feature to enable fast switching between input languages for
multilingual users. Keyboard settings lets you select a bunch of
languages to switch between from the Latin IME.
Use the Globe icon to toggle between languages.
Needs more work and some layout changes in specialized keyboards.
Also added a Russian keyboard (needs some pixel TLC at the right edge).
diff --git a/res/xml/kbd_qwerty.xml b/res/xml/kbd_qwerty.xml
index 0493b99..d914f46 100755
--- a/res/xml/kbd_qwerty.xml
+++ b/res/xml/kbd_qwerty.xml
@@ -114,7 +114,8 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="10%p" />
+ <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
+ android:keyWidth="10%p"/>
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="40%p" android:isRepeatable="true"/>
@@ -130,10 +131,12 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="@string/popular_domain_0"
+ <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
+ android:keyWidth="15%p"/>
+ <!--Key android:keyLabel="@string/popular_domain_0"
android:keyOutputText="@string/popular_domain_0"
android:popupKeyboard="@xml/popup_domains"
- android:keyWidth="15%p"/>
+ android:keyWidth="15%p"/-->
<Key android:keyLabel="/" android:keyWidth="15%p"/>
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
@@ -150,11 +153,13 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
+ <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
+ android:keyWidth="15%p"/>
<Key android:keyLabel="\@" android:keyWidth="15%p"/>
- <Key android:keyLabel="@string/popular_domain_0"
+ <!--Key android:keyLabel="@string/popular_domain_0"
android:keyOutputText="@string/popular_domain_0"
android:popupKeyboard="@xml/popup_domains"
- android:keyWidth="15%p"/>
+ android:keyWidth="15%p"/-->
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="15%p" android:isRepeatable="true"/>
@@ -170,7 +175,8 @@
android:popupKeyboard="@xml/kbd_popup_template"
android:popupCharacters="_"
android:keyWidth="20%p" android:keyEdgeFlags="left"/>
- <Key android:keyLabel="," android:keyWidth="10%p"/>
+ <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe"
+ android:keyWidth="10%p"/>
<Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space"
android:iconPreview="@drawable/sym_keyboard_feedback_space"
android:keyWidth="40%p" android:isRepeatable="true"/>
@@ -181,4 +187,4 @@
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
</Keyboard>
-
+
diff --git a/res/xml/kbd_symbols.xml b/res/xml/kbd_symbols.xml
index b1b75c6..5a30c7b 100755
--- a/res/xml/kbd_symbols.xml
+++ b/res/xml/kbd_symbols.xml
@@ -120,7 +120,7 @@
android:iconPreview="@drawable/sym_keyboard_feedback_delete"
android:isRepeatable="true"/>
</Row>
-
+
<Row android:rowEdgeFlags="bottom">
<Key android:codes="-2" android:keyLabel="@string/label_alpha_key"
android:popupKeyboard="@xml/kbd_popup_template"
diff --git a/res/xml/language_prefs.xml b/res/xml/language_prefs.xml
new file mode 100644
index 0000000..b7a4c07
--- /dev/null
+++ b/res/xml/language_prefs.xml
@@ -0,0 +1,19 @@
+<?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.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+ android:title="@string/language_selection_title">
+</PreferenceScreen>
diff --git a/res/xml/prefs.xml b/res/xml/prefs.xml
index 2fc82aa..d5075c5 100644
--- a/res/xml/prefs.xml
+++ b/res/xml/prefs.xml
@@ -37,6 +37,14 @@
android:defaultValue="true"
/>
+ <PreferenceScreen
+ android:title="@string/language_selection_title">
+ <intent
+ android:action="android.intent.action.MAIN"
+ android:targetPackage="com.android.inputmethod.latin"
+ android:targetClass="com.android.inputmethod.latin.InputLanguageSelection" />
+ </PreferenceScreen>
+
<PreferenceCategory
android:title="@string/prediction_category"
android:key="prediction_settings">