Merge "Update IME selection dialog layout for Material" into lmp-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
662039c687
@@ -24,21 +24,26 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginBottom="9dip"
|
android:orientation="vertical">
|
||||||
android:layout_marginStart="20dip"
|
<LinearLayout
|
||||||
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:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:ellipsize="end"
|
android:orientation="horizontal"
|
||||||
android:singleLine="true"
|
android:gravity="center_vertical|start"
|
||||||
android:text="@string/select_input_method" />
|
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>
|
</LinearLayout>
|
||||||
|
|
||||||
<!-- Hard keyboard switch -->
|
<!-- Hard keyboard switch -->
|
||||||
@@ -55,34 +60,34 @@
|
|||||||
android:orientation="horizontal" >
|
android:orientation="horizontal" >
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="0dip"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:background="?android:attr/selectableItemBackground"
|
android:background="?attr/selectableItemBackground"
|
||||||
android:ellipsize="marquee"
|
android:ellipsize="marquee"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:minHeight="?android:attr/listPreferredItemHeightSmall"
|
android:minHeight="?attr/listPreferredItemHeightSmall"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:paddingBottom="5dip"
|
android:paddingBottom="5dp"
|
||||||
android:paddingStart="16dip"
|
android:paddingStart="?attr/listPreferredItemPaddingStart"
|
||||||
android:paddingEnd="0dip"
|
android:paddingEnd="0dp"
|
||||||
android:paddingTop="5dip" >
|
android:paddingTop="5dp" >
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:text="@string/hardware"
|
android:text="@string/hardware"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorAlertDialogListItem" />
|
android:textColor="?attr/textColorAlertDialogListItem" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:text="@string/show_ime"
|
android:text="@string/show_ime"
|
||||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
android:textAppearance="?attr/textAppearanceSmall"
|
||||||
android:textColor="?android:attr/textColorAlertDialogListItem" />
|
android:textColor="?attr/textColorAlertDialogListItem" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<Switch
|
<Switch
|
||||||
@@ -90,12 +95,12 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_vertical"
|
android:layout_gravity="center_vertical"
|
||||||
android:layout_marginEnd="12dip" />
|
android:layout_marginEnd="?attr/listPreferredItemPaddingEnd" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<View
|
<View
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="1dp"
|
android:layout_height="1dp"
|
||||||
android:background="?android:attr/listDividerAlertDialog" />
|
android:background="?attr/listDividerAlertDialog" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -17,44 +17,38 @@
|
|||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:minHeight="?attr/listPreferredItemHeightSmall"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:paddingStart="16dip"
|
android:paddingStart="?attr/listPreferredItemPaddingStart"
|
||||||
android:paddingEnd="12dip"
|
android:paddingEnd="?attr/listPreferredItemPaddingEnd">
|
||||||
android:minHeight="?attr/listPreferredItemHeightSmall"
|
|
||||||
android:background="@color/transparent">
|
|
||||||
|
|
||||||
<RadioButton
|
<RadioButton android:id="@+id/radio"
|
||||||
android:id="@+id/radio"
|
android:layout_width="wrap_content"
|
||||||
android:layout_width="35dip"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:paddingEnd="12dip"
|
android:paddingEnd="16dp"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:clickable="false" />
|
android:clickable="false" />
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:gravity="center_vertical">
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
<TextView android:id="@android:id/text1"
|
<TextView android:id="@id/text1"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textAppearance="?attr/textAppearanceListItem"
|
android:textAppearance="?attr/textAppearanceListItem"
|
||||||
android:textColor="?attr/textColorAlertDialogListItem"
|
|
||||||
android:gravity="center_vertical|start"
|
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:ellipsize="marquee" />
|
android:ellipsize="marquee" />
|
||||||
|
|
||||||
<TextView android:id="@android:id/text2"
|
<TextView android:id="@id/text2"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textAppearance="?attr/textAppearanceListItemSecondary"
|
android:textAppearance="?attr/textAppearanceListItemSecondary"
|
||||||
android:textColor="?attr/textColorAlertDialogListItem"
|
|
||||||
android:gravity="center_vertical|start"
|
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:ellipsize="marquee" />
|
android:ellipsize="marquee" />
|
||||||
|
|
||||||
|
|||||||
@@ -17,22 +17,22 @@
|
|||||||
<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
|
<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:minHeight="?android:attr/listPreferredItemHeight"
|
android:minHeight="?attr/listPreferredItemHeight"
|
||||||
android:mode="twoLine"
|
android:mode="twoLine"
|
||||||
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
|
android:paddingStart="?attr/listPreferredItemPaddingStart"
|
||||||
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
|
android:paddingEnd="?attr/listPreferredItemPaddingEnd">
|
||||||
|
|
||||||
<TextView android:id="@android:id/text1"
|
<TextView android:id="@id/text1"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="8dip"
|
android:layout_marginTop="8dp"
|
||||||
android:textAppearance="?android:attr/textAppearanceListItem" />
|
android:textAppearance="?attr/textAppearanceListItem" />
|
||||||
|
|
||||||
<TextView android:id="@android:id/text2"
|
<TextView android:id="@id/text2"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@android:id/text1"
|
android:layout_below="@id/text1"
|
||||||
android:layout_alignStart="@android:id/text1"
|
android:layout_alignStart="@id/text1"
|
||||||
android:textAppearance="?android:attr/textAppearanceListItemSecondary" />
|
android:textAppearance="?attr/textAppearanceListItemSecondary" />
|
||||||
|
|
||||||
</TwoLineListItem>
|
</TwoLineListItem>
|
||||||
|
|||||||
@@ -66,6 +66,7 @@ import android.content.res.Configuration;
|
|||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.content.res.TypedArray;
|
import android.content.res.TypedArray;
|
||||||
import android.database.ContentObserver;
|
import android.database.ContentObserver;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.inputmethodservice.InputMethodService;
|
import android.inputmethodservice.InputMethodService;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Binder;
|
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);
|
final Context settingsContext = new ContextThemeWrapper(context,
|
||||||
mDialogBuilder = new AlertDialog.Builder(themedContext);
|
com.android.internal.R.style.Theme_DeviceDefault_Settings);
|
||||||
final TypedArray a = themedContext.obtainStyledAttributes(null,
|
|
||||||
com.android.internal.R.styleable.DialogPreference,
|
mDialogBuilder = new AlertDialog.Builder(settingsContext);
|
||||||
com.android.internal.R.attr.alertDialogStyle, 0);
|
|
||||||
mDialogBuilder.setIcon(a.getDrawable(
|
|
||||||
com.android.internal.R.styleable.DialogPreference_dialogIcon));
|
|
||||||
a.recycle();
|
|
||||||
mDialogBuilder.setOnCancelListener(new OnCancelListener() {
|
mDialogBuilder.setOnCancelListener(new OnCancelListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onCancel(DialogInterface dialog) {
|
public void onCancel(DialogInterface dialog) {
|
||||||
hideInputMethodMenu();
|
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(
|
final View tv = inflater.inflate(
|
||||||
com.android.internal.R.layout.input_method_switch_dialog_title, null);
|
com.android.internal.R.layout.input_method_switch_dialog_title, null);
|
||||||
mDialogBuilder.setCustomTitle(tv);
|
mDialogBuilder.setCustomTitle(tv);
|
||||||
@@ -2857,7 +2865,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
|
|||||||
.findViewById(com.android.internal.R.id.hard_keyboard_section)
|
.findViewById(com.android.internal.R.id.hard_keyboard_section)
|
||||||
.setVisibility(mWindowManagerService.isHardKeyboardAvailable()
|
.setVisibility(mWindowManagerService.isHardKeyboardAvailable()
|
||||||
? View.VISIBLE : View.GONE);
|
? View.VISIBLE : View.GONE);
|
||||||
final Switch hardKeySwitch = (Switch)mSwitchingDialogTitleView.findViewById(
|
final Switch hardKeySwitch = (Switch) mSwitchingDialogTitleView.findViewById(
|
||||||
com.android.internal.R.id.hard_keyboard_switch);
|
com.android.internal.R.id.hard_keyboard_switch);
|
||||||
hardKeySwitch.setChecked(mShowImeWithHardKeyboard);
|
hardKeySwitch.setChecked(mShowImeWithHardKeyboard);
|
||||||
hardKeySwitch.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
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);
|
com.android.internal.R.layout.input_method_switch_item, imList, checkedItem);
|
||||||
final OnClickListener choiceListener = new OnClickListener() {
|
final OnClickListener choiceListener = new OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
@@ -2926,10 +2934,11 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
|
|||||||
public ImeSubtypeListAdapter(Context context, int textViewResourceId,
|
public ImeSubtypeListAdapter(Context context, int textViewResourceId,
|
||||||
List<ImeSubtypeListItem> itemsList, int checkedItem) {
|
List<ImeSubtypeListItem> itemsList, int checkedItem) {
|
||||||
super(context, textViewResourceId, itemsList);
|
super(context, textViewResourceId, itemsList);
|
||||||
|
|
||||||
mTextViewResourceId = textViewResourceId;
|
mTextViewResourceId = textViewResourceId;
|
||||||
mItemsList = itemsList;
|
mItemsList = itemsList;
|
||||||
mCheckedItem = checkedItem;
|
mCheckedItem = checkedItem;
|
||||||
mInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user