diff options
author | Alan Viverette <alanv@google.com> | 2014-11-24 15:22:11 -0800 |
---|---|---|
committer | Alan Viverette <alanv@google.com> | 2014-11-24 15:22:11 -0800 |
commit | 505e3abb8dd0d8f594280b9510adef74623630d7 (patch) | |
tree | 2e2d75520ff6cec75c912683f3dad64b8b062522 | |
parent | 29dc496a42d49a37dcd99c0465f3cec18a47e6ff (diff) | |
download | frameworks_base-505e3abb8dd0d8f594280b9510adef74623630d7.zip frameworks_base-505e3abb8dd0d8f594280b9510adef74623630d7.tar.gz frameworks_base-505e3abb8dd0d8f594280b9510adef74623630d7.tar.bz2 |
Update IME selection dialog layout for Material
Also cleans up simple_list_item_2.xml formatting.
BUG: 18314215
Change-Id: I12b6ff19fca891524da7137b85dd576f85ee266a
4 files changed, 77 insertions, 69 deletions
diff --git a/core/res/res/layout/input_method_switch_dialog_title.xml b/core/res/res/layout/input_method_switch_dialog_title.xml index 37bceb6..856a7af 100644 --- a/core/res/res/layout/input_method_switch_dialog_title.xml +++ b/core/res/res/layout/input_method_switch_dialog_title.xml @@ -24,21 +24,26 @@ <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginBottom="9dip" - android:layout_marginStart="20dip" - android:layout_marginEnd="10dip" - android:layout_marginTop="6dip" - android:gravity="center_vertical" - android:orientation="vertical" > - - <com.android.internal.widget.DialogTitle - android:id="@+id/alertTitle" - style="@android:style/DialogWindowTitle.DeviceDefault" + android:orientation="vertical"> + <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" - android:ellipsize="end" - android:singleLine="true" - android:text="@string/select_input_method" /> + android:orientation="horizontal" + android:gravity="center_vertical|start" + android:paddingStart="?attr/dialogPreferredPadding" + android:paddingEnd="?attr/dialogPreferredPadding" + android:paddingTop="@dimen/dialog_padding_top_material"> + + <com.android.internal.widget.DialogTitle + android:id="@+id/alertTitle" + style="?attr/windowTitleStyle" + android:singleLine="true" + android:ellipsize="end" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:textAlignment="viewStart" + android:text="@string/select_input_method" /> + </LinearLayout> </LinearLayout> <!-- Hard keyboard switch --> @@ -55,34 +60,34 @@ android:orientation="horizontal" > <LinearLayout - android:layout_width="0dip" + android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" - android:background="?android:attr/selectableItemBackground" + android:background="?attr/selectableItemBackground" android:ellipsize="marquee" android:gravity="center_vertical" - android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:minHeight="?attr/listPreferredItemHeightSmall" android:orientation="vertical" - android:paddingBottom="5dip" - android:paddingStart="16dip" - android:paddingEnd="0dip" - android:paddingTop="5dip" > + android:paddingBottom="5dp" + android:paddingStart="?attr/listPreferredItemPaddingStart" + android:paddingEnd="0dp" + android:paddingTop="5dp" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:text="@string/hardware" - android:textAppearance="?android:attr/textAppearanceMedium" - android:textColor="?android:attr/textColorAlertDialogListItem" /> + android:textAppearance="?attr/textAppearanceMedium" + android:textColor="?attr/textColorAlertDialogListItem" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:text="@string/show_ime" - android:textAppearance="?android:attr/textAppearanceSmall" - android:textColor="?android:attr/textColorAlertDialogListItem" /> + android:textAppearance="?attr/textAppearanceSmall" + android:textColor="?attr/textColorAlertDialogListItem" /> </LinearLayout> <Switch @@ -90,12 +95,12 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" - android:layout_marginEnd="12dip" /> + android:layout_marginEnd="?attr/listPreferredItemPaddingEnd" /> </LinearLayout> <View android:layout_width="match_parent" android:layout_height="1dp" - android:background="?android:attr/listDividerAlertDialog" /> + android:background="?attr/listDividerAlertDialog" /> </LinearLayout> </LinearLayout> diff --git a/core/res/res/layout/input_method_switch_item.xml b/core/res/res/layout/input_method_switch_item.xml index cfa8b31..6185ed6 100644 --- a/core/res/res/layout/input_method_switch_item.xml +++ b/core/res/res/layout/input_method_switch_item.xml @@ -17,44 +17,38 @@ <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" + android:minHeight="?attr/listPreferredItemHeightSmall" android:orientation="horizontal" android:gravity="center_vertical" - android:paddingStart="16dip" - android:paddingEnd="12dip" - android:minHeight="?attr/listPreferredItemHeightSmall" - android:background="@color/transparent"> + android:paddingStart="?attr/listPreferredItemPaddingStart" + android:paddingEnd="?attr/listPreferredItemPaddingEnd"> - <RadioButton - android:id="@+id/radio" - android:layout_width="35dip" + <RadioButton android:id="@+id/radio" + android:layout_width="wrap_content" android:layout_height="wrap_content" - android:paddingEnd="12dip" + android:paddingEnd="16dp" android:gravity="center_vertical" android:focusable="false" android:clickable="false" /> <LinearLayout - android:layout_width="wrap_content" + android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="vertical" android:gravity="center_vertical"> - <TextView android:id="@android:id/text1" + <TextView android:id="@id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?attr/textAppearanceListItem" - android:textColor="?attr/textColorAlertDialogListItem" - android:gravity="center_vertical|start" android:singleLine="true" android:ellipsize="marquee" /> - <TextView android:id="@android:id/text2" + <TextView android:id="@id/text2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?attr/textAppearanceListItemSecondary" - android:textColor="?attr/textColorAlertDialogListItem" - android:gravity="center_vertical|start" android:singleLine="true" android:ellipsize="marquee" /> diff --git a/core/res/res/layout/simple_list_item_2.xml b/core/res/res/layout/simple_list_item_2.xml index b47a346..bcbc6fc 100644 --- a/core/res/res/layout/simple_list_item_2.xml +++ b/core/res/res/layout/simple_list_item_2.xml @@ -17,22 +17,22 @@ <TwoLineListItem 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:minHeight="?attr/listPreferredItemHeight" android:mode="twoLine" - android:paddingStart="?android:attr/listPreferredItemPaddingStart" - android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"> + android:paddingStart="?attr/listPreferredItemPaddingStart" + android:paddingEnd="?attr/listPreferredItemPaddingEnd"> - <TextView android:id="@android:id/text1" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginTop="8dip" - android:textAppearance="?android:attr/textAppearanceListItem" /> + <TextView android:id="@id/text1" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:textAppearance="?attr/textAppearanceListItem" /> - <TextView android:id="@android:id/text2" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@android:id/text1" - android:layout_alignStart="@android:id/text1" - android:textAppearance="?android:attr/textAppearanceListItemSecondary" /> + <TextView android:id="@id/text2" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_below="@id/text1" + android:layout_alignStart="@id/text1" + android:textAppearance="?attr/textAppearanceListItemSecondary" /> </TwoLineListItem> diff --git a/services/core/java/com/android/server/InputMethodManagerService.java b/services/core/java/com/android/server/InputMethodManagerService.java index edea274..4d0868a 100644 --- a/services/core/java/com/android/server/InputMethodManagerService.java +++ b/services/core/java/com/android/server/InputMethodManagerService.java @@ -66,6 +66,7 @@ import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.TypedArray; import android.database.ContentObserver; +import android.graphics.drawable.Drawable; import android.inputmethodservice.InputMethodService; import android.net.Uri; import android.os.Binder; @@ -2830,23 +2831,30 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } } } - final Context themedContext = new ContextThemeWrapper(context, - android.R.style.Theme_DeviceDefault_Settings); - mDialogBuilder = new AlertDialog.Builder(themedContext); - final TypedArray a = themedContext.obtainStyledAttributes(null, - com.android.internal.R.styleable.DialogPreference, - com.android.internal.R.attr.alertDialogStyle, 0); - mDialogBuilder.setIcon(a.getDrawable( - com.android.internal.R.styleable.DialogPreference_dialogIcon)); - a.recycle(); + + final Context settingsContext = new ContextThemeWrapper(context, + com.android.internal.R.style.Theme_DeviceDefault_Settings); + + mDialogBuilder = new AlertDialog.Builder(settingsContext); mDialogBuilder.setOnCancelListener(new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { hideInputMethodMenu(); } }); - final LayoutInflater inflater = - (LayoutInflater)themedContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + + final Context dialogContext = mDialogBuilder.getContext(); + final TypedArray a = dialogContext.obtainStyledAttributes(null, + com.android.internal.R.styleable.DialogPreference, + com.android.internal.R.attr.alertDialogStyle, 0); + final Drawable dialogIcon = a.getDrawable( + com.android.internal.R.styleable.DialogPreference_dialogIcon); + a.recycle(); + + mDialogBuilder.setIcon(dialogIcon); + + final LayoutInflater inflater = (LayoutInflater) dialogContext.getSystemService( + Context.LAYOUT_INFLATER_SERVICE); final View tv = inflater.inflate( com.android.internal.R.layout.input_method_switch_dialog_title, null); mDialogBuilder.setCustomTitle(tv); @@ -2857,7 +2865,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub .findViewById(com.android.internal.R.id.hard_keyboard_section) .setVisibility(mWindowManagerService.isHardKeyboardAvailable() ? View.VISIBLE : View.GONE); - final Switch hardKeySwitch = (Switch)mSwitchingDialogTitleView.findViewById( + final Switch hardKeySwitch = (Switch) mSwitchingDialogTitleView.findViewById( com.android.internal.R.id.hard_keyboard_switch); hardKeySwitch.setChecked(mShowImeWithHardKeyboard); hardKeySwitch.setOnCheckedChangeListener(new OnCheckedChangeListener() { @@ -2870,7 +2878,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } }); - final ImeSubtypeListAdapter adapter = new ImeSubtypeListAdapter(themedContext, + final ImeSubtypeListAdapter adapter = new ImeSubtypeListAdapter(dialogContext, com.android.internal.R.layout.input_method_switch_item, imList, checkedItem); final OnClickListener choiceListener = new OnClickListener() { @Override @@ -2926,10 +2934,11 @@ public class InputMethodManagerService extends IInputMethodManager.Stub public ImeSubtypeListAdapter(Context context, int textViewResourceId, List<ImeSubtypeListItem> itemsList, int checkedItem) { super(context, textViewResourceId, itemsList); + mTextViewResourceId = textViewResourceId; mItemsList = itemsList; mCheckedItem = checkedItem; - mInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } @Override |