Implement new UI for IME settings
Bug: 4645160
Change-Id: If9046e7e96732f6ee4c0594cc66622b6462bdec9
diff --git a/res/layout/preference_inputmethod.xml b/res/layout/preference_inputmethod.xml
new file mode 100644
index 0000000..227b165
--- /dev/null
+++ b/res/layout/preference_inputmethod.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="?android:attr/listPreferredItemHeight"
+ android:gravity="center_vertical">
+ <LinearLayout
+ android:id="@+id/inputmethod_pref"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:gravity="center_vertical"
+ android:clickable="true"
+ android:focusable="true"
+ android:background="?android:attr/selectableItemBackground">
+ <LinearLayout
+ android:id="@android:id/widget_frame"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_marginLeft="10dip"
+ android:gravity="center_vertical"
+ android:orientation="vertical" />
+ <RelativeLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginLeft="15dip"
+ android:layout_marginRight="6dip"
+ android:layout_marginTop="6dip"
+ android:layout_marginBottom="6dip"
+ android:layout_weight="1">
+ <TextView
+ android:id="@+android:id/title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:singleLine="true"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:ellipsize="marquee"
+ android:fadingEdge="horizontal"/>
+ <TextView
+ android:id="@android:id/summary"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@android:id/title"
+ android:layout_alignLeft="@android:id/title"
+ android:visibility="gone"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textSize="13sp"
+ android:textColor="?android:attr/textColorSecondary"
+ android:maxLines="4" />
+ </RelativeLayout>
+ </LinearLayout>
+ <View
+ android:layout_width="2dip"
+ android:layout_height="match_parent"
+ android:layout_marginTop="5dip"
+ android:layout_marginBottom="5dip"
+ android:background="@android:drawable/divider_horizontal_dark" />
+ <ImageView
+ android:id="@+id/inputmethod_settings"
+ android:layout_width="wrap_content"
+ android:layout_height="fill_parent"
+ android:paddingLeft="15dip"
+ android:paddingRight="?android:attr/scrollbarSize"
+ android:src="@drawable/ic_sysbar_quicksettings"
+ android:layout_gravity="center"
+ android:clickable="true"
+ android:focusable="true"
+ android:background="?android:attr/selectableItemBackground" />
+</LinearLayout>
diff --git a/res/layout/preference_inputmethod_widget.xml b/res/layout/preference_inputmethod_widget.xml
new file mode 100644
index 0000000..ee573ad
--- /dev/null
+++ b/res/layout/preference_inputmethod_widget.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<CheckBox
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+android:id/checkbox"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:focusable="false"
+ android:clickable="false"/>
\ No newline at end of file
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 130fa03..0f73abf 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -150,4 +150,9 @@
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
</style>
+
+ <style name="InputMethodPreferenceStyle">
+ <item name="android:layout">@layout/preference_inputmethod</item>
+ <item name="android:widgetLayout">@layout/preference_inputmethod_widget</item>
+ </style>
</resources>
diff --git a/res/xml/language_settings.xml b/res/xml/language_settings.xml
index 1b5f039..fdf87fc 100644
--- a/res/xml/language_settings.xml
+++ b/res/xml/language_settings.xml
@@ -32,6 +32,35 @@
</PreferenceCategory>
+ <PreferenceCategory android:key="keyboard_settings_category"
+ android:title="@string/keyboard_settings_category">
+ <PreferenceScreen android:key="current_input_method"
+ android:title="@string/current_input_method" />
+ </PreferenceCategory>
+ <PreferenceCategory
+ android:key="hard_keyboard"
+ android:title="@string/builtin_keyboard_settings_title"
+ android:persistent="false">
+ <CheckBoxPreference
+ android:key="auto_replace"
+ android:title="@string/auto_replace"
+ android:summaryOn="@string/auto_replace_summary"
+ android:summaryOff="@string/auto_replace_summary"
+ android:persistent="false"/>
+ <CheckBoxPreference
+ android:key="auto_caps"
+ android:title="@string/auto_caps"
+ android:summaryOn="@string/auto_caps_summary"
+ android:summaryOff="@string/auto_caps_summary"
+ android:persistent="false"/>
+ <CheckBoxPreference
+ android:key="auto_punctuate"
+ android:title="@string/auto_punctuate"
+ android:summaryOn="@string/auto_punctuate_summary"
+ android:summaryOff="@string/auto_punctuate_summary"
+ android:persistent="false"/>
+ </PreferenceCategory>
+
<PreferenceCategory android:key="voice_input_category"
android:title="@string/voice_input_category" >
@@ -54,24 +83,6 @@
android:title="@string/tts_settings_title" />
</PreferenceCategory>
- <PreferenceCategory android:key="keyboard_settings_category"
- android:title="@string/keyboard_settings_category">
- <PreferenceScreen android:key="current_input_method"
- android:title="@string/current_input_method" />
-
- <ListPreference android:key="input_method_selector"
- android:title="@string/input_method_selector"
- android:persistent="true"
- android:entryValues="@array/input_method_selector_values"
- android:entries="@array/input_method_selector_titles"
- android:defaultValue="@string/input_method_selector_visibility_default_value"/>
-
- <PreferenceScreen android:key="configure_input_method"
- android:title="@string/configure_input_method">
- <intent android:action="android.settings.INPUT_METHOD_SETTINGS"/>
- </PreferenceScreen>
- </PreferenceCategory>
-
<PreferenceCategory android:key="pointer_settings_category"
android:title="@string/pointer_settings_category">
<com.android.settings.PointerSpeedPreference