From f9638a4aeecf23079fa74618ad3c285a8a2abfda Mon Sep 17 00:00:00 2001 From: Amith Yamasani Date: Mon, 30 Apr 2012 16:32:39 -0700 Subject: [PATCH] Fixes PreferenceScreen padding and scrollbar position. Bug: 6399996 Changed the scrollbarStyle for tablets Bug: 6405440 Inflate the listview from a layout with padding. Change-Id: I838bb073ee2f0e23ac7163cc632679278dbccf05 --- core/java/android/preference/PreferenceScreen.java | 10 ++++++++-- core/res/res/values-h720dp/dimens.xml | 2 +- core/res/res/values-w720dp/dimens.xml | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/core/java/android/preference/PreferenceScreen.java b/core/java/android/preference/PreferenceScreen.java index 8b9945925da25..c17111ab8dcdc 100644 --- a/core/java/android/preference/PreferenceScreen.java +++ b/core/java/android/preference/PreferenceScreen.java @@ -24,6 +24,7 @@ import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; import android.util.AttributeSet; +import android.view.LayoutInflater; import android.view.View; import android.view.Window; import android.widget.AbsListView; @@ -153,7 +154,12 @@ public final class PreferenceScreen extends PreferenceGroup implements AdapterVi if (mListView != null) { mListView.setAdapter(null); } - mListView = new ListView(context); + + LayoutInflater inflater = (LayoutInflater) + context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + View childPrefScreen = inflater.inflate( + com.android.internal.R.layout.preference_list_fragment, null); + mListView = (ListView) childPrefScreen.findViewById(android.R.id.list); bind(mListView); // Set the title bar if title is available, else no title bar @@ -164,7 +170,7 @@ public final class PreferenceScreen extends PreferenceGroup implements AdapterVi } else { dialog.setTitle(title); } - dialog.setContentView(mListView); + dialog.setContentView(childPrefScreen); dialog.setOnDismissListener(this); if (state != null) { dialog.onRestoreInstanceState(state); diff --git a/core/res/res/values-h720dp/dimens.xml b/core/res/res/values-h720dp/dimens.xml index 6e991836bf8e4..5a9c777e21c2e 100644 --- a/core/res/res/values-h720dp/dimens.xml +++ b/core/res/res/values-h720dp/dimens.xml @@ -25,6 +25,6 @@ 0dip 0x0 - 0x0 + 0x02000000 diff --git a/core/res/res/values-w720dp/dimens.xml b/core/res/res/values-w720dp/dimens.xml index c62c3f5835628..a37f58851020b 100644 --- a/core/res/res/values-w720dp/dimens.xml +++ b/core/res/res/values-w720dp/dimens.xml @@ -33,5 +33,5 @@ 0dip 0x0 - 0x0 + 0x02000000