merge in jb-mr1.1-release history after reset to jb-mr1.1-dev
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 71cc520..14207db 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -252,9 +252,11 @@
             </intent-filter>
         </activity-alias>
 
-        <activity android:name="ApnSettings" android:label="@string/apn_settings"
-                  android:configChanges="orientation|keyboardHidden|screenSize"
-                  android:launchMode="singleTask">
+        <activity android:name="ApnSettings"
+                android:label="@string/apn_settings"
+                android:uiOptions="none"
+                android:configChanges="orientation|keyboardHidden|screenSize"
+                android:launchMode="singleTask">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
                 <action android:name="android.settings.APN_SETTINGS" />
@@ -304,6 +306,7 @@
 
         <activity android:name="Settings$TetherSettingsActivity"
                 android:label="@string/tether_settings_title_all"
+                android:uiOptions="none"
                 android:taskAffinity=""
                 android:excludeFromRecents="true">
             <intent-filter>
@@ -325,6 +328,7 @@
         <!-- Keep compatibility with old shortcuts. -->
         <activity-alias android:name=".TetherSettings"
                   android:label="@string/tether_settings_title_all"
+                  android:uiOptions="none"
                   android:clearTaskOnLaunch="true"
                   android:exported="true"
                   android:targetActivity="Settings$TetherSettingsActivity">
@@ -763,6 +767,7 @@
 
         <activity android:name="Settings$LocationSettingsActivity"
                 android:label="@string/location_settings_title"
+                android:uiOptions="none"
                 android:configChanges="orientation|keyboardHidden|screenSize"
                 android:taskAffinity=""
                 android:excludeFromRecents="true">
@@ -956,8 +961,6 @@
         <activity android:name="ChooseLockPassword" android:exported="false"
             android:windowSoftInputMode="stateVisible|adjustResize"/>
 
-        <activity android:name="ChooseLockPatternTutorial" android:exported="false"/>
-
         <!-- Runs in the phone process since it needs access to the Phone object -->
         <activity android:name=".deviceinfo.Status"
                 android:label="@string/device_status_activity_title"
@@ -1465,6 +1468,22 @@
                 android:resource="@id/wireless_settings" />
         </activity>
 
+        <activity android:name="Settings$DreamSettingsActivity"
+                android:label="@string/screensaver_settings_title"
+                android:taskAffinity=""
+                android:excludeFromRecents="true">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <action android:name="android.settings.DREAM_SETTINGS" />
+                <category android:name="android.intent.category.DEFAULT" />
+                <category android:name="com.android.settings.SHORTCUT" />
+            </intent-filter>
+            <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+                android:value="com.android.settings.DreamSettings" />
+            <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
+                android:resource="@id/display_settings" />
+        </activity>
+
         <receiver android:name=".widget.SettingsAppWidgetProvider"
                 android:label="@string/gadget_title"
                 android:exported="true"
diff --git a/res/layout-land/choose_lock_pattern_tutorial.xml b/res/layout-land/choose_lock_pattern_tutorial.xml
deleted file mode 100644
index 362853b..0000000
--- a/res/layout-land/choose_lock_pattern_tutorial.xml
+++ /dev/null
@@ -1,92 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 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.
--->
-
-<com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/topLayout"
-    android:orientation="vertical"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <!-- Top: pattern and information -->
-    <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="0dip"
-        android:layout_weight="1"
-        android:orientation="horizontal">
-
-        <!-- left side: lock pattern. Given the square aspect, this will be the smaller of the
-             two dimensions (height) -->
-        <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
-             android:layout_width="match_parent"
-             android:layout_height="match_parent"/>
-
-        <!-- right side: instructions and buttons -->
-        <!-- header message -->
-        <ScrollView
-            android:layout_width="0dip"
-            android:layout_height="wrap_content"
-            android:layout_weight="1"
-            android:layout_marginStart="25dip">
-
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="vertical"
-                android:padding="5dip">
-
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:gravity="center_horizontal"
-                    android:text="@string/lock_title"
-                    android:paddingBottom="10dip"
-                    style="?android:attr/textAppearanceLarge"
-                />
-
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:textSize="18sp"
-                    android:text="@string/lock_intro_message"
-                />
-
-            </LinearLayout>
-
-        </ScrollView>
-
-    </LinearLayout>
-
-    <!-- Bottom: cancel/next buttons -->
-    <LinearLayout
-        style="@style/SecurityPreferenceButtonContainer"
-        android:orientation="horizontal">
-
-        <!-- left / top button: skip, or re-try -->
-        <Button android:id="@+id/skip_button"
-            style="@style/SecurityPreferenceButton"
-            android:text="@string/lockpattern_tutorial_cancel_label"/>
-
-        <!-- right / bottom button: confirm or ok -->
-        <Button android:id="@+id/next_button"
-            style="@style/SecurityPreferenceButton"
-            android:text="@string/lockpattern_tutorial_continue_label"/>
-
-    </LinearLayout>
-
-</com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
-
diff --git a/res/layout-sw600dp-land/choose_lock_pattern_tutorial.xml b/res/layout-sw600dp-land/choose_lock_pattern_tutorial.xml
deleted file mode 100644
index 00ef039..0000000
--- a/res/layout-sw600dp-land/choose_lock_pattern_tutorial.xml
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 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.
--->
-
-<com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/topLayout"
-    android:orientation="horizontal"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <!-- left side: lock pattern example widget -->
-    <RelativeLayout
-        android:layout_width="0dip"
-        android:layout_height="match_parent"
-        android:layout_weight="1"
-        android:gravity="center_horizontal|center_vertical"
-        android:orientation="horizontal">
-
-        <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
-             android:layout_width="354dip"
-             android:layout_height="354dip"
-             aspect="square"/>
-
-     </RelativeLayout>
-
-    <!-- right side: instructions and buttons -->
-    <RelativeLayout
-        android:layout_width="0dip"
-        android:layout_height="match_parent"
-        android:layout_weight="1"
-        android:gravity="center_horizontal">
-
-        <!-- navigation buttons -->
-        <LinearLayout android:id="@+id/buttonContainer"
-            style="@style/SecurityPreferenceButtonContainer"
-            android:layout_alignParentEnd="true"
-            android:layout_alignParentBottom="true"
-            android:orientation="horizontal">
-
-            <!-- left / top button: skip, or re-try -->
-            <Button android:id="@+id/skip_button"
-                style="@style/SecurityPreferenceButton"
-                android:text="@string/lockpattern_tutorial_cancel_label"/>
-
-            <!-- right / bottom button: confirm or ok -->
-            <Button android:id="@+id/next_button"
-                style="@style/SecurityPreferenceButton"
-                android:text="@string/lockpattern_tutorial_continue_label"/>
-
-        </LinearLayout>
-
-        <!-- header message -->
-        <ScrollView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_alignParentTop="true"
-            android:layout_marginTop="20dip"
-            android:layout_marginStart="20dip"
-            android:gravity="center_vertical|center_horizontal"
-            android:layout_above="@id/buttonContainer">
-
-            <TextView android:id="@+id/headerText"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:text="@string/lock_intro_message"
-                android:textAppearance="?android:attr/textAppearanceLarge"/>
-
-        </ScrollView>
-
-    </RelativeLayout>>
-
-</com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
-
diff --git a/res/layout-sw600dp/choose_lock_pattern_tutorial.xml b/res/layout-sw600dp/choose_lock_pattern_tutorial.xml
deleted file mode 100644
index e0221bf..0000000
--- a/res/layout-sw600dp/choose_lock_pattern_tutorial.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 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.
--->
-<com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/topLayout"
-    android:orientation="vertical"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:gravity="center_horizontal">
-
-    <!-- top: instructions and buttons -->
-    <!-- header message -->
-    <ScrollView
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_marginTop="96dip">
-
-        <TextView android:id="@+id/headerText"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:text="@string/lock_intro_message"/>
-
-    </ScrollView>
-
-    <!-- bottom: lock pattern -->
-    <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
-         android:layout_width="354dip"
-         android:layout_height="354dip"
-         android:layout_marginTop="80dip"
-         aspect="square"/>
-
-    <View
-        android:layout_width="match_parent"
-        android:layout_height="0dip"
-        android:layout_weight="1"/>
-
-    <RelativeLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-
-        <LinearLayout
-            style="@style/SecurityPreferenceButtonContainer"
-            android:layout_alignParentEnd="true"
-            android:orientation="horizontal">
-
-            <!-- left / top button: skip, or re-try -->
-            <Button android:id="@+id/skip_button"
-                style="@style/SecurityPreferenceButton"
-                android:text="@string/lockpattern_tutorial_cancel_label"/>
-
-            <!-- right / bottom button: confirm or ok -->
-            <Button android:id="@+id/next_button"
-                style="@style/SecurityPreferenceButton"
-                android:text="@string/lockpattern_tutorial_continue_label"/>
-
-        </LinearLayout>
-
-    </RelativeLayout>
-
-</com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
diff --git a/res/layout/account_sync_screen.xml b/res/layout/account_sync_screen.xml
index aa080cf..4c1bf7e 100644
--- a/res/layout/account_sync_screen.xml
+++ b/res/layout/account_sync_screen.xml
@@ -22,23 +22,23 @@
     android:layout_height="match_parent"
     android:orientation="vertical">
 
-    <include layout="@layout/title"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content" />
+    <include layout="@layout/title" />
 
     <ImageView
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_marginStart="@*android:dimen/preference_fragment_padding_side"
+        android:layout_marginEnd="@*android:dimen/preference_fragment_padding_side"
         android:scaleType="fitXY"
         android:src="?android:attr/listDivider" />
 
-    <ListView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/list"
+    <ListView
+        android:id="@android:id/list"
         android:layout_width="match_parent"
         android:layout_height="0dip"
         android:layout_weight="1"
-        android:drawSelectorOnTop="false"
-        android:scrollbarAlwaysDrawVerticalTrack="true"
-    />
+        android:clipToPadding="false"
+        android:scrollbarStyle="@*android:integer/preference_fragment_scrollbarStyle" />
 
     <TextView android:id="@+id/sync_settings_error_info"
         android:layout_width="match_parent"
@@ -48,32 +48,6 @@
         android:drawablePadding="8dip"
         android:drawableLeft="@drawable/ic_sync_error_holo" />
 
-    <!--
-    <LinearLayout android:id="@+id/remove_account_area"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="horizontal"
-        android:background="@android:drawable/bottom_bar">
-
-        <View
-            android:layout_width="0dip"
-            android:layout_height="match_parent"
-            android:layout_weight="1"/>
-
-        <Button android:id="@+id/remove_account_button"
-            android:layout_width="0dip"
-            android:layout_height="wrap_content"
-            android:layout_weight="2"
-            android:layout_marginTop="5dip"
-            android:text="@string/remove_account_label" />
-
-        <View
-            android:layout_width="0dip"
-            android:layout_height="match_parent"
-            android:layout_weight="1"/>
-    </LinearLayout>
-    -->
-
     <RelativeLayout android:id="@+id/finish_button_area"
         android:layout_height="wrap_content"
         android:layout_width="match_parent"
diff --git a/res/layout/apn_preference_layout.xml b/res/layout/apn_preference_layout.xml
index 76c9c3d..b79b0b9 100644
--- a/res/layout/apn_preference_layout.xml
+++ b/res/layout/apn_preference_layout.xml
@@ -23,15 +23,14 @@
 
     <RelativeLayout
         android:id="@+android:id/text_layout"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginStart="16sp"
-        android:layout_marginEnd="6sp"
-        android:layout_marginTop="6sp"
-        android:layout_marginBottom="6sp"
+        android:layout_width="0dip"
+        android:layout_height="match_parent"
+        android:paddingStart="8dip"
+        android:paddingEnd="8dip"
+        android:gravity="center_vertical"
         android:layout_weight="1"
         android:focusable="true"
-        android:background="@android:drawable/menuitem_background">
+        android:background="?android:attr/selectableItemBackground">
 
         <TextView
             android:id="@+android:id/title"
@@ -39,7 +38,7 @@
             android:layout_height="wrap_content"
             android:focusable="true"
             android:singleLine="true"
-            android:textAppearance="?android:attr/textAppearanceLarge" />
+            android:textAppearance="?android:attr/textAppearanceMedium" />
 
         <TextView
             android:id="@+android:id/summary"
@@ -57,8 +56,8 @@
         android:id="@+android:id/apn_radiobutton"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginStart="4dip"
-        android:layout_marginEnd="4dip"
+        android:layout_marginStart="8dip"
+        android:layout_marginEnd="8dip"
         android:layout_gravity="center_vertical"
         android:clickable="true" />
 
diff --git a/res/layout/app_percentage_item.xml b/res/layout/app_percentage_item.xml
index b5e6db7..8bdbadb 100644
--- a/res/layout/app_percentage_item.xml
+++ b/res/layout/app_percentage_item.xml
@@ -26,8 +26,8 @@
 
     <ImageView
         android:id="@android:id/icon"
-        android:layout_width="48dip"
-        android:layout_height="48dip"
+        android:layout_width="@android:dimen/app_icon_size"
+        android:layout_height="@android:dimen/app_icon_size"
         android:layout_rowSpan="3"
         android:layout_marginEnd="8dip"
         android:scaleType="centerInside"
@@ -37,10 +37,11 @@
         android:id="@android:id/title"
         android:layout_width="0dip"
         android:layout_gravity="fill_horizontal"
+        android:layout_marginTop="2dip"
         android:singleLine="true"
         android:ellipsize="marquee"
         android:textAppearance="?android:attr/textAppearanceMedium"
-        android:textDirection="locale" />
+        android:textAlignment="viewStart" />
 
     <TextView
         android:id="@android:id/text1"
diff --git a/res/layout/bluetooth_discoverable.xml b/res/layout/bluetooth_discoverable.xml
deleted file mode 100644
index b3ddbb9..0000000
--- a/res/layout/bluetooth_discoverable.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 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.
-*/
--->
-
-<ScrollView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_height="match_parent"
-    android:layout_width="match_parent">
-
-    <TextView
-        android:id="@+id/message"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:paddingStart="20dip"
-        android:paddingEnd="20dip"
-        android:gravity="center_horizontal"
-        android:textAppearance="?android:attr/textAppearanceMedium" />
-</ScrollView>
diff --git a/res/layout/choose_lock_pattern_tutorial.xml b/res/layout/choose_lock_pattern_tutorial.xml
deleted file mode 100644
index 8514550..0000000
--- a/res/layout/choose_lock_pattern_tutorial.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-<?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:orientation="vertical"
-    android:layout_height="match_parent"
-    android:layout_width="match_parent"
-    android:gravity="center_horizontal">
-
-    <!-- top: instructions and buttons -->
-    <!-- header message -->
-    <ScrollView
-        android:layout_width="match_parent"
-        android:layout_height="0dip"
-        android:layout_weight="1">
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:padding="5dip">
-
-            <!-- Top: instructions -->
-            <TextView
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:gravity="center_horizontal"
-                android:text="@string/lock_title"
-                android:paddingBottom="10dip"
-                style="?android:attr/textAppearanceLarge"
-                android:visibility="visible"
-            />
-
-            <TextView
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceMedium"
-                android:text="@string/lock_intro_message"
-            />
-
-            <!-- bottom: lock pattern -->
-            <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
-                 android:layout_width="200dip"
-                 android:layout_height="200dip"
-                 android:layout_marginTop="10dip"
-                 android:layout_gravity="start"/>
-
-        </LinearLayout>
-
-    </ScrollView>
-
-    <LinearLayout
-        style="@style/SecurityPreferenceButtonContainer"
-        android:orientation="horizontal">
-
-        <!-- left / top button: skip, or re-try -->
-        <Button android:id="@+id/skip_button"
-            style="@style/SecurityPreferenceButton"
-            android:text="@string/lockpattern_tutorial_cancel_label"/>
-
-        <!-- right / bottom button: confirm or ok -->
-        <Button android:id="@+id/next_button"
-            style="@style/SecurityPreferenceButton"
-            android:text="@string/lockpattern_tutorial_continue_label"/>
-
-    </LinearLayout>
-
-</LinearLayout>
diff --git a/res/layout/dream_info_row.xml b/res/layout/dream_info_row.xml
index a2f81c6..acc3a65 100644
--- a/res/layout/dream_info_row.xml
+++ b/res/layout/dream_info_row.xml
@@ -54,7 +54,7 @@
             android:ellipsize="end"
             android:singleLine="true"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textDirection="locale"
+            android:textAlignment="viewStart"
             android:labelFor="@android:id/button2" />
 
         <!-- Dream radio button -->
diff --git a/res/layout/installed_app_details.xml b/res/layout/installed_app_details.xml
index 7829596..b7f8f15 100644
--- a/res/layout/installed_app_details.xml
+++ b/res/layout/installed_app_details.xml
@@ -19,12 +19,14 @@
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:clipToPadding="false"
+    android:scrollbarStyle="@*android:integer/preference_fragment_scrollbarStyle">
+
     <LinearLayout
         android:id="@+id/all_details"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:paddingEnd="6dip"
         android:paddingBottom="5dip"
         android:orientation="vertical">
 
@@ -33,16 +35,14 @@
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_gravity="center_vertical"
-            android:orientation="vertical"
-            android:paddingEnd="6dip"
-            android:paddingStart="6dip"
-            android:paddingTop="5dip"
-            android:paddingBottom="5dip" >
+            android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+            android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+            android:orientation="vertical">
 
             <!-- Application snippet label, version and icon -->
             <include
                 layout="@layout/manage_applications_item"
-                android:id="@+id/app_snippet"/>
+                android:id="@+id/app_snippet" />
 
             <!-- Force stop and uninstall buttons -->
             <include
@@ -58,8 +58,8 @@
             <CheckBox android:id="@+id/notification_switch"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_marginStart="12dip"
                 android:layout_gravity="start"
+                android:layout_marginTop="4dip"
                 android:text="@string/app_notifications_switch_label" />
 
         </LinearLayout>
@@ -72,8 +72,9 @@
         <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:paddingStart="6dip"
-            android:orientation="vertical">
+            android:orientation="vertical"
+            android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+            android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
             <LinearLayout
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
@@ -87,9 +88,7 @@
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1"
-                    android:paddingTop="6dip"
-                    android:paddingStart="6dip"/>
-
+                    android:paddingTop="6dip" />
                 <ImageView
                     android:id="@+id/info_size_dots"
                     android:src="@drawable/dotted_line_480px"
@@ -105,13 +104,12 @@
                 <TextView
                     android:id="@+id/total_size_text"
                     android:paddingTop="6dip"
-                    android:paddingEnd="6dip"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1" />
-
             </LinearLayout>
+
             <LinearLayout
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
@@ -125,8 +123,7 @@
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1"
-                    android:paddingTop="6dip"
-                    android:paddingStart="6dip"/>
+                    android:paddingTop="6dip" />
                 <ImageView
                     android:id="@+id/info_size_dots"
                     android:src="@drawable/dotted_line_480px"
@@ -143,11 +140,9 @@
                     android:id="@+id/application_size_text"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:paddingTop="6dip"
-                    android:paddingEnd="6dip"
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1" />
-
             </LinearLayout>
 
             <LinearLayout
@@ -163,8 +158,7 @@
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1"
-                    android:paddingTop="6dip"
-                    android:paddingStart="6dip"/>
+                    android:paddingTop="6dip" />
                 <ImageView
                     android:id="@+id/info_size_dots"
                     android:src="@drawable/dotted_line_480px"
@@ -181,11 +175,9 @@
                     android:id="@+id/external_code_size_text"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:paddingTop="6dip"
-                    android:paddingEnd="6dip"
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1" />
-
             </LinearLayout>
 
             <LinearLayout
@@ -202,8 +194,7 @@
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1"
-                    android:paddingTop="6dip"
-                    android:paddingStart="6dip"/>
+                    android:paddingTop="6dip" />
                 <ImageView
                     android:id="@+id/info_size_dots"
                     android:src="@drawable/dotted_line_480px"
@@ -220,11 +211,9 @@
                     android:id="@+id/data_size_text"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:paddingTop="6dip"
-                    android:paddingEnd="6dip"
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1" />
-
             </LinearLayout>
 
             <LinearLayout
@@ -240,8 +229,7 @@
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1"
-                    android:paddingTop="6dip"
-                    android:paddingStart="6dip"/>
+                    android:paddingTop="6dip" />
                 <ImageView
                     android:id="@+id/info_size_dots"
                     android:src="@drawable/dotted_line_480px"
@@ -258,11 +246,9 @@
                     android:id="@+id/external_data_size_text"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:paddingTop="6dip"
-                    android:paddingEnd="6dip"
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1" />
-
             </LinearLayout>
 
             <!-- Clear data and install location buttons  -->
@@ -289,6 +275,8 @@
                 android:orientation="horizontal"
                 android:baselineAligned="true"
                 android:layout_below="@id/cache_header"
+                android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+                android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
                 android:paddingTop="-1dip">
                 <TextView
                     android:text="@string/cache_size_label"
@@ -297,8 +285,7 @@
                     android:maxLines="1"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:paddingTop="6dip"
-                    android:gravity="center_vertical"
-                    android:paddingStart="6dip"/>
+                    android:gravity="center_vertical" />
                 <ImageView
                     android:src="@drawable/dotted_line_480px"
                     android:layout_width="0dip"
@@ -314,19 +301,36 @@
                     android:id="@+id/cache_size_text"
                     android:textAppearance="?android:attr/textAppearanceMedium"
                     android:paddingTop="6dip"
-                    android:paddingEnd="6dip"
                     android:layout_height="wrap_content"
                     android:layout_width="wrap_content"
                     android:maxLines="1" />
             </LinearLayout>
 
-            <Button android:id="@+id/clear_cache_button"
-                android:layout_alignParentEnd="true"
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
                 android:layout_below="@id/cache_size"
-                android:layout_centerHorizontal="true"
-                android:layout_width="200dip"
-                android:text="@string/clear_cache_btn_text"
-                android:layout_height="wrap_content" />
+                android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+                android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+                android:paddingTop="4dip"
+                android:orientation="horizontal">
+                <View
+                    android:layout_width="120dip"
+                    android:layout_height="0dip"
+                    android:layout_weight="0.4" />
+                <View
+                    android:layout_width="0dip"
+                    android:layout_height="0dip"
+                    android:visibility="invisible"
+                    android:layout_weight="0.2" />
+                <Button
+                    android:id="@+id/clear_cache_button"
+                    android:layout_width="120dip"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="0.4"
+                    android:text="@string/clear_cache_btn_text" />
+            </LinearLayout>
+
         </RelativeLayout>
 
         <!-- Prefered activities section -->
@@ -338,22 +342,38 @@
         <RelativeLayout 
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:layout_gravity="center_vertical">
+            android:layout_gravity="center_vertical"
+            android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+            android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
             <TextView android:id="@+id/auto_launch"
                 android:textAppearance="?android:attr/textAppearanceSmall"
                 android:layout_alignParentStart="true"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:paddingTop="6dip"
-                android:paddingEnd="6dip"
-                android:paddingStart="6dip" />
-            <Button android:id="@+id/clear_activities_button"
-                android:layout_alignParentEnd="true"
+                android:paddingTop="6dip" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
                 android:layout_below="@id/auto_launch"
-                android:layout_centerHorizontal="true"
-                android:layout_width="200dip"
-                android:text="@string/clear_activities"
-                android:layout_height="wrap_content" />
+                android:paddingTop="4dip"
+                android:orientation="horizontal">
+                <View
+                    android:layout_width="120dip"
+                    android:layout_height="0dip"
+                    android:layout_weight="0.4" />
+                <View
+                    android:layout_width="0dip"
+                    android:layout_height="0dip"
+                    android:visibility="invisible"
+                    android:layout_weight="0.2" />
+                <Button
+                    android:id="@+id/clear_activities_button"
+                    android:layout_width="120dip"
+                    android:layout_height="wrap_content"
+                    android:layout_weight="0.4"
+                    android:text="@string/clear_activities" />
+            </LinearLayout>
         </RelativeLayout>
 
         <!-- Screen compatibility section -->
@@ -371,8 +391,8 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:paddingTop="6dip"
-                android:paddingEnd="6dip"
-                android:paddingStart="6dip"
+                android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+                android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
                 android:text="@string/screen_compatibility_text"/>
             <CheckBox android:id="@+id/ask_compatibility_cb"
                 android:layout_width="wrap_content"
@@ -403,8 +423,9 @@
                 android:textColor="#ffffb060"
                 android:textAppearance="?android:attr/textAppearanceSmall"
                 android:paddingTop="6dip"
-                android:paddingStart="6dip"
                 android:paddingBottom="6dip"
+                android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+                android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content" />
             <LinearLayout
@@ -426,8 +447,9 @@
                 android:text="@string/security_settings_desc"
                 android:textAppearance="?android:attr/textAppearanceSmall"
                 android:paddingTop="6dip"
-                android:paddingStart="6dip"
                 android:paddingBottom="6dip"
+                android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+                android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content" />
             <LinearLayout
diff --git a/res/layout/manage_accounts_screen.xml b/res/layout/manage_accounts_screen.xml
index 2717805..3a2aa6a 100644
--- a/res/layout/manage_accounts_screen.xml
+++ b/res/layout/manage_accounts_screen.xml
@@ -27,9 +27,8 @@
         android:layout_width="match_parent"
         android:layout_height="0dip"
         android:layout_weight="1"
-        android:drawSelectorOnTop="false"
-        android:scrollbarAlwaysDrawVerticalTrack="true"
-    />
+        android:clipToPadding="false"
+        android:scrollbarStyle="@*android:integer/preference_fragment_scrollbarStyle" />
 
     <TextView android:id="@+id/sync_settings_error_info"
         android:layout_width="match_parent"
diff --git a/res/layout/manage_applications_apps.xml b/res/layout/manage_applications_apps.xml
index 394382e..8a8ba0b 100644
--- a/res/layout/manage_applications_apps.xml
+++ b/res/layout/manage_applications_apps.xml
@@ -30,6 +30,7 @@
                 android:drawSelectorOnTop="false"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent"
+                android:clipToPadding="false"
                 android:scrollbarStyle="@*android:integer/preference_fragment_scrollbarStyle" />
             <TextView android:id="@android:id/empty"
                     android:layout_width="match_parent"
diff --git a/res/layout/manage_applications_item.xml b/res/layout/manage_applications_item.xml
index 3c7944e..f471f55 100755
--- a/res/layout/manage_applications_item.xml
+++ b/res/layout/manage_applications_item.xml
@@ -17,68 +17,54 @@
 */
 -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<GridLayout 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:orientation="horizontal"
-    android:paddingEnd="6dip"
-    android:paddingStart="6dip"
-    android:paddingTop="5dip"
-    android:paddingBottom="5dip"
-    android:gravity="center_vertical" >
+    android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+    android:paddingTop="8dip"
+    android:paddingBottom="8dip"
+    android:columnCount="4">
 
-    <ImageView android:id="@+id/app_icon"
+    <ImageView
+        android:id="@+id/app_icon"
         android:layout_width="@android:dimen/app_icon_size"
         android:layout_height="@android:dimen/app_icon_size"
-        android:layout_marginEnd="11dip"
-        android:layout_gravity="center_vertical"
-        android:scaleType="fitCenter"
-        android:contentDescription="@null"/>
+        android:layout_rowSpan="2"
+        android:layout_marginEnd="8dip"
+        android:scaleType="centerInside"
+        android:contentDescription="@null" />
 
-    <LinearLayout
-        android:orientation="vertical"
-        android:layout_width="0px"
-        android:layout_weight="1"
-        android:layout_height="wrap_content" >
-        <TextView android:id="@+id/app_name"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textStyle="bold"
-            android:singleLine="true"
-            android:ellipsize="marquee"
-            android:layout_marginBottom="2dip" />
-        <LinearLayout
-            android:orientation="horizontal"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:baselineAlignedChildIndex="0" >
-            <TextView android:id="@+id/app_size"
-                android:layout_marginTop="-4dip"
-                android:layout_gravity="center_vertical|start"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_weight="1"
-                android:textAppearance="?android:attr/textAppearanceSmall" />
-            <TextView android:id="@+id/app_disabled"
-                android:layout_marginTop="-4dip"
-                android:layout_gravity="center_vertical|end"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_weight="0"
-                android:visibility="gone"
-                android:textAppearance="?android:attr/textAppearanceSmall"
-                android:text="@string/disabled" />
-        </LinearLayout>
-    </LinearLayout>
-    
+    <TextView
+        android:id="@+id/app_name"
+        android:layout_width="0dip"
+        android:layout_columnSpan="2"
+        android:layout_gravity="fill_horizontal"
+        android:layout_marginTop="2dip"
+        android:singleLine="true"
+        android:ellipsize="marquee"
+        android:textAppearance="?android:attr/textAppearanceMedium"
+        android:textAlignment="viewStart" />
+
     <CheckBox android:id="@+id/app_on_sdcard"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginStart="5dip"
+        android:layout_marginStart="8dip"
         android:layout_gravity="center_vertical"
+        android:layout_rowSpan="2"
         android:visibility="gone"
         android:clickable="false"
         android:focusable="false" />
-</LinearLayout>
+
+    <TextView
+        android:id="@+id/app_size"
+        android:layout_width="0dip"
+        android:layout_gravity="fill_horizontal"
+        android:textAppearance="?android:attr/textAppearanceSmall"
+        android:textAlignment="viewStart" />
+
+    <TextView
+        android:id="@+id/app_disabled"
+        android:layout_marginStart="8dip"
+        android:textAppearance="?android:attr/textAppearanceSmall" />
+
+</GridLayout>
diff --git a/res/layout/power_usage_details.xml b/res/layout/power_usage_details.xml
index 001ffec..05036da 100644
--- a/res/layout/power_usage_details.xml
+++ b/res/layout/power_usage_details.xml
@@ -17,7 +17,10 @@
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:clipToPadding="false"
+    android:scrollbarStyle="@*android:integer/preference_fragment_scrollbarStyle">
+
     <LinearLayout
         android:id="@+id/all_details"
         android:layout_width="match_parent"
diff --git a/res/layout/running_processes_item.xml b/res/layout/running_processes_item.xml
index 7cc2d8d..e64b594 100644
--- a/res/layout/running_processes_item.xml
+++ b/res/layout/running_processes_item.xml
@@ -17,79 +17,68 @@
 */
 -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<GridLayout 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:orientation="vertical"
-    android:gravity="fill" >
+    android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+    android:paddingTop="8dip"
+    android:paddingBottom="8dip"
+    android:columnCount="2">
+
+    <ImageView
+        android:id="@+id/icon"
+        android:layout_width="@android:dimen/app_icon_size"
+        android:layout_height="@android:dimen/app_icon_size"
+        android:layout_rowSpan="2"
+        android:layout_marginEnd="8dip"
+        android:scaleType="centerInside"
+        android:contentDescription="@null" />
 
     <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_weight="1"
-        android:orientation="horizontal"
-        android:paddingEnd="6dip"
-        android:paddingStart="6dip"
-        android:gravity="center_vertical" >
-    
-        <ImageView android:id="@+id/icon"
-            android:layout_width="@android:dimen/app_icon_size"
-            android:layout_height="@android:dimen/app_icon_size"
-            android:layout_marginEnd="11dip"
-            android:layout_gravity="center_vertical"
-            android:scaleType="fitCenter"
-            android:contentDescription="@null" />
-    
-        <LinearLayout
-            android:orientation="vertical"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content" >
-            <LinearLayout
-                android:orientation="horizontal"
-                android:baselineAlignedChildIndex="0"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content">
-                <TextView android:id="@+id/name"
-                    android:layout_width="0px"
-                    android:layout_height="wrap_content"
-                    android:layout_weight="1"
-                    android:paddingEnd="4dip"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:textStyle="bold"
-                    android:singleLine="true"
-                    android:ellipsize="marquee"
-                    android:layout_marginBottom="2dip" />
-                <TextView android:id="@+id/size"
-                    android:layout_gravity="center_vertical|end"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_weight="0"
-                    android:singleLine="true"
-                    android:textAppearance="?android:attr/textAppearanceSmall" />
-            </LinearLayout>
-            <LinearLayout
-                android:orientation="horizontal"
-                android:baselineAlignedChildIndex="0"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content">
-                <TextView android:id="@+id/description"
-                    android:layout_gravity="center_vertical|start"
-                    android:layout_width="0px"
-                    android:layout_height="wrap_content"
-                    android:layout_weight="1"
-                    android:paddingEnd="4dip"
-                    android:singleLine="true"
-                    android:ellipsize="marquee"
-                    android:textAppearance="?android:attr/textAppearanceSmall" />
-                <TextView android:id="@+id/uptime"
-                    android:layout_gravity="center_vertical|end"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_weight="0"
-                    android:singleLine="true"
-                    android:textAppearance="?android:attr/textAppearanceSmall" />
-            </LinearLayout>
-        </LinearLayout>
+        android:layout_width="0dip"
+        android:layout_gravity="fill_horizontal"
+        android:layout_marginTop="2dip">
+
+        <TextView
+            android:id="@+id/name"
+            android:layout_width="0dip"
+            android:layout_height="wrap_content"
+            android:layout_weight="1"
+            android:singleLine="true"
+            android:ellipsize="marquee"
+            android:textAppearance="?android:attr/textAppearanceMedium"
+            android:textAlignment="viewStart" />
+
+        <TextView
+            android:id="@+id/size"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="8dip"
+            android:textAppearance="?android:attr/textAppearanceSmall" />
+
     </LinearLayout>
-</LinearLayout>
+
+    <LinearLayout
+        android:layout_width="0dip"
+        android:layout_gravity="fill_horizontal">
+
+        <TextView
+            android:id="@+id/description"
+            android:layout_width="0dip"
+            android:layout_height="wrap_content"
+            android:layout_weight="1"
+            android:textAppearance="?android:attr/textAppearanceSmall"
+            android:textAlignment="viewStart" />
+
+        <TextView
+            android:id="@+id/uptime"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="8dip"
+            android:textAppearance="?android:attr/textAppearanceSmall" />
+
+    </LinearLayout>
+
+</GridLayout>
diff --git a/res/layout/running_service_details.xml b/res/layout/running_service_details.xml
index 98c144c..92ce07b 100644
--- a/res/layout/running_service_details.xml
+++ b/res/layout/running_service_details.xml
@@ -19,7 +19,10 @@
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:clipToPadding="false"
+    android:scrollbarStyle="@*android:integer/preference_fragment_scrollbarStyle">
+
     <LinearLayout
         android:id="@+id/all_details"
         android:layout_width="match_parent"
@@ -29,8 +32,8 @@
         <!-- Summary information as per previous screen -->
         <include
             layout="@layout/running_processes_item"
-            android:id="@+id/snippet"/>
+            android:id="@+id/snippet" />
 
     </LinearLayout>
-</ScrollView>
 
+</ScrollView>
diff --git a/res/layout/running_service_details_process.xml b/res/layout/running_service_details_process.xml
index caf5664..68ec482 100644
--- a/res/layout/running_service_details_process.xml
+++ b/res/layout/running_service_details_process.xml
@@ -29,9 +29,9 @@
     <TextView android:id="@+id/comp_description"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:paddingTop="8dp"
         android:paddingBottom="8dp"
-        android:paddingStart="14dip"
+        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
         android:textAppearance="?android:attr/textAppearanceMedium" />
 
 </LinearLayout>
diff --git a/res/layout/running_service_details_service.xml b/res/layout/running_service_details_service.xml
index 56cd971..706d1cf 100644
--- a/res/layout/running_service_details_service.xml
+++ b/res/layout/running_service_details_service.xml
@@ -33,16 +33,23 @@
         layout="@layout/running_processes_item"
         android:id="@+id/service"/>
 
-    <TextView android:id="@+id/comp_description"
-        android:layout_width="wrap_content"
+    <LinearLayout
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:paddingTop="8dp"
-        android:paddingBottom="8dp"
-        android:paddingStart="14dip"
-        android:textAppearance="?android:attr/textAppearanceMedium" />
+        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+        android:orientation="vertical">
 
-    <include
-        layout="@layout/two_buttons_panel"
-        android:id="@+id/control_buttons_panel"/>
+        <TextView android:id="@+id/comp_description"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:paddingBottom="8dp"
+            android:textAppearance="?android:attr/textAppearanceMedium" />
+
+        <include
+            layout="@layout/two_buttons_panel"
+            android:id="@+id/control_buttons_panel" />
+
+    </LinearLayout>
 
 </LinearLayout>
diff --git a/res/layout/title.xml b/res/layout/title.xml
index eb2222b..0c2084b 100644
--- a/res/layout/title.xml
+++ b/res/layout/title.xml
@@ -19,46 +19,45 @@
 
 <!-- The title area at the top of the settings pane -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/title_area"
-    android:orientation="horizontal">
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:layout_marginStart="@*android:dimen/preference_fragment_padding_side"
+    android:layout_marginEnd="@*android:dimen/preference_fragment_padding_side"
+    android:minHeight="?android:attr/listPreferredItemHeight"
+    android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+    android:paddingTop="8dip"
+    android:paddingBottom="8dip"
+    android:columnCount="2">
 
-    <ImageView android:id="@+id/provider_icon"
-        android:layout_width="48dip"
-        android:layout_height="48dip"
-        android:layout_margin="5dip"
-        android:layout_gravity="center_vertical"
+    <ImageView
+        android:id="@+id/provider_icon"
+        android:layout_width="@android:dimen/app_icon_size"
+        android:layout_height="@android:dimen/app_icon_size"
+        android:layout_rowSpan="2"
+        android:layout_marginEnd="8dip"
+        android:scaleType="centerInside"
         android:contentDescription="@null" />
 
-    <LinearLayout
+    <TextView
+        android:id="@+id/user_id"
         android:layout_width="0dip"
-        android:layout_weight="1"
-        android:layout_height="wrap_content"
-        android:orientation="vertical">
+        android:layout_gravity="fill_horizontal"
+        android:layout_marginTop="2dip"
+        android:singleLine="true"
+        android:ellipsize="marquee"
+        android:textAppearance="?android:attr/textAppearanceMedium"
+        android:textAlignment="viewStart" />
 
-        <TextView
-            android:id="@+id/user_id"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorTertiary"
-            android:textStyle="bold"
-            android:singleLine="true"
-            android:ellipsize="end"
-            android:gravity="center_vertical"
-            android:layout_marginTop="5dip"/>
+    <TextView
+        android:id="@+id/provider_id"
+        android:layout_width="0dip"
+        android:layout_gravity="fill_horizontal"
+        android:singleLine="true"
+        android:ellipsize="marquee"
+        android:textAppearance="?android:attr/textAppearanceSmall"
+        android:textAlignment="viewStart" />
 
-        <TextView
-            android:id="@+id/provider_id"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceSmall"
-            android:textColor="?android:attr/textColorTertiary"
-            android:singleLine="true"
-            android:ellipsize="end"
-            android:layout_gravity="bottom"
-            android:layout_marginBottom="5dip"/>
-
-    </LinearLayout>
-
-</LinearLayout>
+</GridLayout>
diff --git a/res/layout/two_buttons_panel.xml b/res/layout/two_buttons_panel.xml
index 1a5975a..2acf6f6 100755
--- a/res/layout/two_buttons_panel.xml
+++ b/res/layout/two_buttons_panel.xml
@@ -24,8 +24,6 @@
         android:layout_height="wrap_content"
         android:gravity="bottom"
         android:paddingTop="4dip"
-        android:paddingStart="2dip"
-        android:paddingEnd="2dip"
         android:orientation="horizontal">
         <Button
             android:id="@+id/left_button"
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index c433b2b..4c04f2a 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -1706,7 +1706,7 @@
     <string name="data_usage_app_restrict_background_summary" msgid="518658001418490405">"Zakázat data na pozadí v mobilních sítích. Používat jiné sítě."</string>
     <string name="data_usage_app_restrict_background_summary_disabled" msgid="7401927377070755054">"Data na pozadí u aplikace omezíte nastavením limitu mob. dat."</string>
     <string name="data_usage_app_restrict_dialog_title" msgid="1613108390242737923">"Omezení datových přenosů na pozadí?"</string>
-    <string name="data_usage_app_restrict_dialog" msgid="1466689968707308512">"Pokud budou k dispozici pouze mobilní sítě, může tato funkce způsobit, že aplikace, které data na pozadí vyžadují, nebudou fungovat."\n\n"Vhodnější způsoby řízení využívání dat naleznete v nastaveních aplikace."</string>
+    <string name="data_usage_app_restrict_dialog" msgid="1466689968707308512">"Pokud budou k dispozici pouze mobilní sítě, může tato funkce způsobit, že aplikace, které data na pozadí vyžadují, nebudou fungovat."\n\n"Vhodnější způsoby řízení využívání dat naleznete v nastavení aplikace."</string>
     <string name="data_usage_restrict_denied_dialog" msgid="7086969103661420799">"Omezení dat na pozadí je k dispozici pouze v případě, že jste nastavili limit přenosu mobilních dat."</string>
     <string name="data_usage_auto_sync_on_dialog_title" msgid="2438617846762244389">"Zapnout aut. synchronizaci dat?"</string>
     <string name="data_usage_auto_sync_on_dialog" product="tablet" msgid="7312283529426636845">"Změny, které v rámci svých účtů provedete na webu, se automaticky zkopírují do tabletu."\n\n"Některé účty také automaticky zkopírují změny provedené v tabletu na web. Tímto způsobem funguje například účet Google."\n\n"Typy informací, které se budou v jednotlivých účtech synchronizovat, nastavíte v části Nastavení &gt; Účty."</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 42ae4f0..81d665f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -23,11 +23,20 @@
     <!-- Strings for Dialog create button -->
     <string name="create">Create</string>
 
+    <!-- Strings for Dialog allow button -->
+    <string name="allow">Allow</string>
+
+    <!-- Strings for Dialog deny button -->
+    <string name="deny">Deny</string>
+
     <!-- Device Info --> <skip />
     <!-- Device Info screen. Used for a status item's value when the proper value is not known -->
     <string name="device_info_default">Unknown</string>
     <!-- [CHAR LIMIT=NONE] Device Info screen. Countdown for user taps to enable development settings -->
-    <string name="show_dev_countdown">You are now <xliff:g id="step_count">%1$d</xliff:g> steps away from being a developer.</string>
+    <plurals name="show_dev_countdown">
+        <item quantity="one">You are now <xliff:g id="step_count">%1$d</xliff:g> step away from being a developer.</item>
+        <item quantity="other">You are now <xliff:g id="step_count">%1$d</xliff:g> steps away from being a developer.</item>
+    </plurals>
     <!-- [CHAR LIMIT=NONE] Device Info screen. Confirmation that developer settings are enabled -->
     <string name="show_dev_on">You are now a developer!</string>
     <!-- [CHAR LIMIT=NONE] Device Info screen. Okay we get it, stop pressing, you already have it on -->
@@ -216,8 +225,6 @@
 
     <!-- Used as setting title (for checkbox) on second screen after selecting Bluetooth settings -->
     <string name="bluetooth">Bluetooth</string>
-    <!-- Bluetooth settings screen, check box label when the Bluetooth device can be seen by others -->
-    <string name="bluetooth_visibility">Discoverable</string>
     <!-- Bluetooth settings screen, summary after selecting Discoverable check box [CHAR LIMIT=50] -->
     <string name="bluetooth_is_discoverable">Visible to all nearby Bluetooth devices (<xliff:g id="discoverable_time_period">%1$s</xliff:g>)</string>
     <!-- Bluetooth settings screen, summary when Discoverable duration is set to "forever" [CHAR LIMIT=50] -->
@@ -226,12 +233,8 @@
     <string name="bluetooth_not_visible_to_other_devices">Not visible to other Bluetooth devices</string>
     <!-- Bluetooth settings screen, summary text when not discoverable with paired devices [CHAR LIMIT=50] -->
     <string name="bluetooth_only_visible_to_paired_devices">Only visible to paired devices</string>
-    <!-- Bluetooth settings screen, Discoverable checkbox summary text -->
-    <string name="bluetooth_not_discoverable">Make device discoverable</string>
     <!-- Bluetooth settings screen, option name to pick discoverability timeout duration (a list dialog comes up) -->
     <string name="bluetooth_visibility_timeout">Visibility timeout</string>
-    <!-- Bluetooth settings screen, Discoverable timout list dialog summary text -->
-    <string name="bluetooth_visibility_timeout_summary">Set how long device will be discoverable</string>
     <!-- Bluetooth settings screen, check box label whether or not to allow
         bluetooth voice dialing when lock screen is up-->
     <string name="bluetooth_lock_voice_dialing">Lock voice dialing</string>
@@ -307,25 +310,25 @@
     <string name="bluetooth_permission_request">"Bluetooth permission request"</string>
 
     <!-- Strings for asking to the user whether to allow an app to enable bluetooth -->
-    <string name="bluetooth_ask_enablement">"An app wants to turn on Bluetooth. Allow?"</string>
+    <string name="bluetooth_ask_enablement">An app wants to turn on Bluetooth.</string>
 
     <!-- Strings for asking to the user whether to allow an app to enable discovery mode -->
-    <string name="bluetooth_ask_discovery" product="tablet">"An app on your tablet wants to make your tablet discoverable by other Bluetooth devices for <xliff:g id="timeout">%1$d</xliff:g> seconds. Allow?"</string>
+    <string name="bluetooth_ask_discovery" product="tablet">An app wants to make your tablet visible to other Bluetooth devices for <xliff:g id="timeout">%1$d</xliff:g> seconds.</string>
     <!-- Strings for asking to the user whether to allow an app to enable discovery mode -->
-    <string name="bluetooth_ask_discovery" product="default">"An app on your phone wants to make your phone discoverable by other Bluetooth devices for <xliff:g id="timeout">%1$d</xliff:g> seconds. Allow?"</string>
+    <string name="bluetooth_ask_discovery" product="default">An app wants to make your phone visible to other Bluetooth devices for <xliff:g id="timeout">%1$d</xliff:g> seconds.</string>
 
     <!-- Strings for asking to the user whether to allow an app to enable lasting discovery mode  -->
-    <string name="bluetooth_ask_lasting_discovery" product="tablet">"An app on your tablet wants to make your tablet \u201calways discoverable\u201d by other Bluetooth devices. Allow?"</string>
-    <string name="bluetooth_ask_lasting_discovery" product="default">"An app on your phone wants to make your phone \u201calways discoverable\u201d by other Bluetooth devices. Allow?"</string>
+    <string name="bluetooth_ask_lasting_discovery" product="tablet">An app wants to make your tablet visible to other Bluetooth devices. You can change this later in Bluetooth settings.</string>
+    <string name="bluetooth_ask_lasting_discovery" product="default">An app wants to make your phone visible to other Bluetooth devices. You can change this later in Bluetooth settings.</string>
 
     <!-- Strings for asking to the user whether to allow an app to enable bluetooth and discovery mode -->
-    <string name="bluetooth_ask_enablement_and_discovery" product="tablet">"An app on your tablet wants to turn on Bluetooth and make your tablet discoverable by other devices for <xliff:g id="timeout">%1$d</xliff:g> seconds. Allow?"</string>
+    <string name="bluetooth_ask_enablement_and_discovery" product="tablet">An app wants to turn on Bluetooth and make your tablet visible to other devices for <xliff:g id="timeout">%1$d</xliff:g> seconds.</string>
     <!-- Strings for asking to the user whether to allow an app to enable bluetooth and discovery mode -->
-    <string name="bluetooth_ask_enablement_and_discovery" product="default">"An app on your phone wants to turn on Bluetooth and make your phone discoverable by other devices for <xliff:g id="timeout">%1$d</xliff:g> seconds. Allow?"</string>
+    <string name="bluetooth_ask_enablement_and_discovery" product="default">An app wants to turn on Bluetooth and make your phone visible to other devices for <xliff:g id="timeout">%1$d</xliff:g> seconds.</string>
 
     <!-- Strings for asking to the user whether to allow an app to enable bluetooth and discovery mode -->
-    <string name="bluetooth_ask_enablement_and_lasting_discovery" product="tablet">"An app on your tablet wants to turn on Bluetooth and make your tablet discoverable by other devices. Allow?"</string>
-    <string name="bluetooth_ask_enablement_and_lasting_discovery" product="default">"An app on your phone wants to turn on Bluetooth and make your phone discoverable by other devices. Allow?"</string>
+    <string name="bluetooth_ask_enablement_and_lasting_discovery" product="tablet">An app wants to turn on Bluetooth and make your tablet visible to other devices. You can change this later in Bluetooth settings.</string>
+    <string name="bluetooth_ask_enablement_and_lasting_discovery" product="default">An app wants to turn on Bluetooth and make your phone visible to other devices. You can change this later in Bluetooth settings.</string>
 
     <!-- Strings for msg to display to user while bluetooth is turning on [CHAR LIMIT=60] -->
     <string name="bluetooth_turning_on">"Turning Bluetooth on\u2026"</string>
@@ -2432,24 +2435,6 @@
     <!-- Displayed when user launches a widget configuration activity that was uninstalled -->
     <string name="activity_not_found">Application is not installed on your phone.</string>
 
-    <!-- ChooseLockPatternTutorial --> <skip />
-    <!-- ChooseLockPatternTutorial, button labels: This is to cancel the tutorial -->
-    <string name="skip_button_label">Cancel</string>
-    <!-- ChooseLockPatternTutorial, button labels: Continue to the next page of the tutorial -->
-    <string name="next_button_label">Next</string>
-    <!-- ChooseLockPatternTutorial, tutorial screen title -->
-    <string name="lock_title" product="tablet">Securing your tablet</string>
-    <!-- ChooseLockPatternTutorial, tutorial screen title -->
-    <string name="lock_title" product="default">Securing your phone</string>
-    <!-- ChooseLockPatternTutorial, tutorial screen text -->
-    <string name="lock_intro_message" product="tablet">Protect your tablet from unauthorized use by creating a personal screen unlock pattern. Slide your finger to connect the dots in any order on the next screen.  You need to connect at least four dots.
-        \n\nReady to start? Touch Next.
-    </string>
-    <!-- ChooseLockPatternTutorial, tutorial screen text -->
-    <string name="lock_intro_message" product="default">Protect your phone from unauthorized use by creating a personal screen unlock pattern. Slide your finger to connect at least four dots in any order on the next screen.
-        \n\nReady to start? Touch Next.
-    </string>
-
     <!-- Applications Settings --> <skip />
     <!-- Applications settings screen, setting option name for the user to go to the screen to manage installed applications  -->
     <string name="manageapplications_settings_title">Manage apps</string>
diff --git a/src/com/android/settings/ChooseLockGeneric.java b/src/com/android/settings/ChooseLockGeneric.java
index 6854305..14671d1 100644
--- a/src/com/android/settings/ChooseLockGeneric.java
+++ b/src/com/android/settings/ChooseLockGeneric.java
@@ -383,11 +383,7 @@
                     startActivity(intent);
                 }
             } else if (quality == DevicePolicyManager.PASSWORD_QUALITY_SOMETHING) {
-                boolean showTutorial = !mChooseLockSettingsHelper.utils().isPatternEverChosen();
-                Intent intent = new Intent();
-                intent.setClass(getActivity(), showTutorial
-                        ? ChooseLockPatternTutorial.class
-                        : ChooseLockPattern.class);
+                Intent intent = new Intent(getActivity(), ChooseLockPattern.class);
                 intent.putExtra("key_lock_method", "pattern");
                 intent.putExtra(CONFIRM_CREDENTIALS, false);
                 intent.putExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK,
diff --git a/src/com/android/settings/ChooseLockPatternTutorial.java b/src/com/android/settings/ChooseLockPatternTutorial.java
deleted file mode 100644
index 5dbd616..0000000
--- a/src/com/android/settings/ChooseLockPatternTutorial.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright (C) 2008 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.
- */
-
-package com.android.settings;
-
-import java.util.ArrayList;
-
-import com.android.internal.widget.LockPatternUtils;
-import com.android.internal.widget.LockPatternView;
-
-import android.app.Fragment;
-import android.content.Intent;
-import android.os.Bundle;
-import android.preference.PreferenceActivity;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-public class ChooseLockPatternTutorial extends PreferenceActivity {
-
-    // required constructor for fragments
-    public ChooseLockPatternTutorial() {
-
-    }
-
-    @Override
-    public Intent getIntent() {
-        Intent modIntent = new Intent(super.getIntent());
-        modIntent.putExtra(EXTRA_SHOW_FRAGMENT, ChooseLockPatternTutorialFragment.class.getName());
-        modIntent.putExtra(EXTRA_NO_HEADERS, true);
-        return modIntent;
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        CharSequence msg = getText(R.string.lockpassword_choose_your_pattern_header);
-        showBreadCrumbs(msg, msg);
-    }
-
-    public static class ChooseLockPatternTutorialFragment extends Fragment
-            implements View.OnClickListener {
-        private View mNextButton;
-        private View mSkipButton;
-        private LockPatternView mPatternView;
-
-        @Override
-        public void onCreate(Bundle savedInstanceState) {
-            super.onCreate(savedInstanceState);
-            // Don't show the tutorial if the user has seen it before.
-            LockPatternUtils lockPatternUtils = new LockPatternUtils(getActivity());
-            if (savedInstanceState == null && lockPatternUtils.isPatternEverChosen()) {
-                Intent intent = new Intent(getActivity(), ChooseLockPattern.class);
-                intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
-                intent.putExtra("confirm_credentials", false);
-                final boolean isFallback = getActivity().getIntent()
-                    .getBooleanExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK, false);
-                intent.putExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK,
-                                isFallback);
-                startActivity(intent);
-                getActivity().finish();
-            }
-        }
-
-        @Override
-        public View onCreateView(LayoutInflater inflater, ViewGroup container,
-                Bundle savedInstanceState) {
-            View view = inflater.inflate(R.layout.choose_lock_pattern_tutorial, null);
-            mNextButton = view.findViewById(R.id.next_button);
-            mNextButton.setOnClickListener(this);
-            mSkipButton = view.findViewById(R.id.skip_button);
-            mSkipButton.setOnClickListener(this);
-
-            // Set up LockPatternView to be a non-interactive demo animation
-            mPatternView = (LockPatternView) view.findViewById(R.id.lockPattern);
-            ArrayList<LockPatternView.Cell> demoPattern = new ArrayList<LockPatternView.Cell>();
-            demoPattern.add(LockPatternView.Cell.of(0,0));
-            demoPattern.add(LockPatternView.Cell.of(0,1));
-            demoPattern.add(LockPatternView.Cell.of(1,1));
-            demoPattern.add(LockPatternView.Cell.of(2,1));
-            mPatternView.setPattern(LockPatternView.DisplayMode.Animate, demoPattern);
-            mPatternView.disableInput();
-
-            return view;
-        }
-
-        public void onClick(View v) {
-            if (v == mSkipButton) {
-                // Canceling, so finish all
-                getActivity().setResult(ChooseLockPattern.RESULT_FINISHED);
-                getActivity().finish();
-            } else if (v == mNextButton) {
-                final boolean isFallback = getActivity().getIntent()
-                    .getBooleanExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK, false);
-                Intent intent = new Intent(getActivity(), ChooseLockPattern.class);
-                intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
-                intent.putExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK,
-                                isFallback);
-                startActivity(intent);
-                getActivity().overridePendingTransition(0, 0); // no animation
-                getActivity().finish();
-            }
-        }
-    }
-}
diff --git a/src/com/android/settings/DevelopmentSettings.java b/src/com/android/settings/DevelopmentSettings.java
index aeedb0c..5e7573f 100644
--- a/src/com/android/settings/DevelopmentSettings.java
+++ b/src/com/android/settings/DevelopmentSettings.java
@@ -46,6 +46,7 @@
 import android.os.StrictMode;
 import android.os.SystemProperties;
 import android.os.Trace;
+import android.os.UserHandle;
 import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.MultiCheckPreference;
@@ -213,6 +214,11 @@
         mPassword = (PreferenceScreen) findPreference(LOCAL_BACKUP_PASSWORD);
         mAllPrefs.add(mPassword);
 
+        if (!android.os.Process.myUserHandle().equals(UserHandle.OWNER)) {
+            disableForUser(mEnableAdb);
+            disableForUser(mPassword);
+        }
+
         mDebugAppPref = findPreference(DEBUG_APP_KEY);
         mAllPrefs.add(mDebugAppPref);
         mWaitForDebugger = findAndInitCheckboxPref(WAIT_FOR_DEBUGGER_KEY);
@@ -284,6 +290,13 @@
         removeHdcpOptionsForProduction();
     }
 
+    private void disableForUser(Preference pref) {
+        if (pref != null) {
+            pref.setEnabled(false);
+            mDisabledPrefs.add(pref);
+        }
+    }
+
     private CheckBoxPreference findAndInitCheckboxPref(String key) {
         CheckBoxPreference pref = (CheckBoxPreference) findPreference(key);
         if (pref == null) {
diff --git a/src/com/android/settings/DeviceInfoSettings.java b/src/com/android/settings/DeviceInfoSettings.java
index a4abfea..d2ff6db 100644
--- a/src/com/android/settings/DeviceInfoSettings.java
+++ b/src/com/android/settings/DeviceInfoSettings.java
@@ -191,8 +191,8 @@
                     if (mDevHitToast != null) {
                         mDevHitToast.cancel();
                     }
-                    mDevHitToast = Toast.makeText(getActivity(), getResources().getString(
-                            R.string.show_dev_countdown, mDevHitCountdown),
+                    mDevHitToast = Toast.makeText(getActivity(), getResources().getQuantityString(
+                            R.plurals.show_dev_countdown, mDevHitCountdown, mDevHitCountdown),
                             Toast.LENGTH_SHORT);
                     mDevHitToast.show();
                 }
diff --git a/src/com/android/settings/LocalePicker.java b/src/com/android/settings/LocalePicker.java
index 9bfa07e..8ea99a1 100644
--- a/src/com/android/settings/LocalePicker.java
+++ b/src/com/android/settings/LocalePicker.java
@@ -19,6 +19,10 @@
 import android.app.Dialog;
 import android.os.Bundle;
 import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ListView;
 
 import com.android.settings.SettingsPreferenceFragment.SettingsDialogFragment;
 
@@ -50,6 +54,15 @@
     }
 
     @Override
+    public View onCreateView(
+            LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+        final View view = super.onCreateView(inflater, container, savedInstanceState);
+        final ListView list = (ListView) view.findViewById(android.R.id.list);
+        Utils.forcePrepareCustomPreferencesList(container, view, list, false);
+        return view;
+    }
+
+    @Override
     public void onLocaleSelected(final Locale locale) {
         if (Utils.hasMultipleUsers(getActivity())) {
             mTargetLocale = locale;
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index f045db0..a5e2005 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -393,7 +393,11 @@
                 VpnSettings.class.getName().equals(fragmentName) ||
                 SecuritySettings.class.getName().equals(fragmentName) ||
                 InstalledAppDetails.class.getName().equals(fragmentName) ||
-                ChooseLockGenericFragment.class.getName().equals(fragmentName)) {
+                ChooseLockGenericFragment.class.getName().equals(fragmentName) ||
+                TetherSettings.class.getName().equals(fragmentName) ||
+                ApnSettings.class.getName().equals(fragmentName) ||
+                LocationSettings.class.getName().equals(fragmentName) ||
+                ZonePicker.class.getName().equals(fragmentName)) {
             intent.putExtra(EXTRA_CLEAR_UI_OPTIONS, true);
         }
 
@@ -833,4 +837,5 @@
     public static class TextToSpeechSettingsActivity extends Settings { /* empty */ }
     public static class AndroidBeamSettingsActivity extends Settings { /* empty */ }
     public static class WifiDisplaySettingsActivity extends Settings { /* empty */ }
+    public static class DreamSettingsActivity extends Settings { /* empty */ }
 }
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index 2ce77b5..e6d63bd 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -419,13 +419,20 @@
         return statusString;
     }
 
+    public static void forcePrepareCustomPreferencesList(
+            ViewGroup parent, View child, ListView list, boolean ignoreSidePadding) {
+        list.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY);
+        list.setClipToPadding(false);
+        prepareCustomPreferencesList(parent, child, list, ignoreSidePadding);
+    }
+
     /**
      * Prepare a custom preferences layout, moving padding to {@link ListView}
      * when outside scrollbars are requested. Usually used to display
      * {@link ListView} and {@link TabWidget} with correct padding.
      */
     public static void prepareCustomPreferencesList(
-            ViewGroup parent, View child, ListView list, boolean ignoreSidePadding) {
+            ViewGroup parent, View child, View list, boolean ignoreSidePadding) {
         final boolean movePadding = list.getScrollBarStyle() == View.SCROLLBARS_OUTSIDE_OVERLAY;
         if (movePadding && parent instanceof PreferenceFrameLayout) {
             ((PreferenceFrameLayout.LayoutParams) child.getLayoutParams()).removeBorders = true;
diff --git a/src/com/android/settings/ZonePicker.java b/src/com/android/settings/ZonePicker.java
index 652f3b7..1502ad1 100644
--- a/src/com/android/settings/ZonePicker.java
+++ b/src/com/android/settings/ZonePicker.java
@@ -23,10 +23,12 @@
 import android.content.res.XmlResourceParser;
 import android.os.Bundle;
 import android.util.Log;
+import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuInflater;
 import android.view.MenuItem;
 import android.view.View;
+import android.view.ViewGroup;
 import android.widget.ListView;
 import android.widget.SimpleAdapter;
 
@@ -81,7 +83,7 @@
     public static SimpleAdapter constructTimezoneAdapter(Context context,
             boolean sortedByName) {
         return constructTimezoneAdapter(context, sortedByName,
-                android.R.layout.simple_list_item_2);
+                R.layout.date_time_setup_custom_list_item_2);
     }
 
     /**
@@ -155,6 +157,15 @@
     }
 
     @Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        final View view = super.onCreateView(inflater, container, savedInstanceState);
+        final ListView list = (ListView) view.findViewById(android.R.id.list);
+        Utils.forcePrepareCustomPreferencesList(container, view, list, false);
+        return view;
+    }
+
+    @Override
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
         menu.add(0, MENU_ALPHABETICAL, 0, R.string.zone_list_menu_sort_alphabetically)
             .setIcon(android.R.drawable.ic_menu_sort_alphabetically);
diff --git a/src/com/android/settings/accounts/AccountSyncSettings.java b/src/com/android/settings/accounts/AccountSyncSettings.java
index 196908e..c346017 100644
--- a/src/com/android/settings/accounts/AccountSyncSettings.java
+++ b/src/com/android/settings/accounts/AccountSyncSettings.java
@@ -47,9 +47,11 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ImageView;
+import android.widget.ListView;
 import android.widget.TextView;
 
 import com.android.settings.R;
+import com.android.settings.Utils;
 import com.google.android.collect.Lists;
 import com.google.android.collect.Maps;
 
@@ -149,7 +151,10 @@
     public View onCreateView(LayoutInflater inflater, ViewGroup container,
             Bundle savedInstanceState) {
         final View view = inflater.inflate(R.layout.account_sync_screen, container, false);
-        
+
+        final ListView list = (ListView) view.findViewById(android.R.id.list);
+        Utils.prepareCustomPreferencesList(container, view, list, false);
+
         initializeUi(view);
 
         return view;
diff --git a/src/com/android/settings/accounts/ManageAccountsSettings.java b/src/com/android/settings/accounts/ManageAccountsSettings.java
index a27fbbd..46aa566 100644
--- a/src/com/android/settings/accounts/ManageAccountsSettings.java
+++ b/src/com/android/settings/accounts/ManageAccountsSettings.java
@@ -46,12 +46,14 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.CompoundButton;
+import android.widget.ListView;
 import android.widget.Switch;
 import android.widget.TextView;
 
 import com.android.settings.AccountPreference;
 import com.android.settings.R;
 import com.android.settings.Settings;
+import com.android.settings.Utils;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -101,6 +103,8 @@
     public View onCreateView(LayoutInflater inflater, ViewGroup container,
             Bundle savedInstanceState) {
         final View view = inflater.inflate(R.layout.manage_accounts_screen, container, false);
+        final ListView list = (ListView) view.findViewById(android.R.id.list);
+        Utils.prepareCustomPreferencesList(container, view, list, false);
         return view;
     }
 
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index 7241fdc..75c9485 100644
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -424,9 +424,12 @@
     }
 
     @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
-        View view = mRootView = inflater.inflate(R.layout.installed_app_details, null);
-        
+    public View onCreateView(
+            LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+        final View view = inflater.inflate(R.layout.installed_app_details, container, false);
+        Utils.prepareCustomPreferencesList(container, view, view, false);
+
+        mRootView = view;
         mComputingStr = getActivity().getText(R.string.computing_size);
         
         // Set default values on sizes
@@ -536,7 +539,9 @@
 
     // Utility method to set applicaiton label and icon.
     private void setAppLabelAndIcon(PackageInfo pkgInfo) {
-        View appSnippet = mRootView.findViewById(R.id.app_snippet);
+        final View appSnippet = mRootView.findViewById(R.id.app_snippet);
+        appSnippet.setPadding(0, appSnippet.getPaddingTop(), 0, appSnippet.getPaddingBottom());
+
         ImageView icon = (ImageView) appSnippet.findViewById(R.id.app_icon);
         mState.ensureIcon(mAppEntry);
         icon.setImageDrawable(mAppEntry.icon);
diff --git a/src/com/android/settings/applications/ManageApplications.java b/src/com/android/settings/applications/ManageApplications.java
index b94d944..d4df397 100644
--- a/src/com/android/settings/applications/ManageApplications.java
+++ b/src/com/android/settings/applications/ManageApplications.java
@@ -765,9 +765,6 @@
                 holder.entry = entry;
                 if (entry.label != null) {
                     holder.appName.setText(entry.label);
-                    holder.appName.setTextColor(mContext.getResources().getColorStateList(
-                            entry.info.enabled ? android.R.color.primary_text_dark
-                                    : android.R.color.secondary_text_dark));
                 }
                 mState.ensureIcon(entry);
                 if (entry.icon != null) {
diff --git a/src/com/android/settings/applications/RunningServiceDetails.java b/src/com/android/settings/applications/RunningServiceDetails.java
index 02fbecc..73547f1 100644
--- a/src/com/android/settings/applications/RunningServiceDetails.java
+++ b/src/com/android/settings/applications/RunningServiceDetails.java
@@ -1,7 +1,5 @@
 package com.android.settings.applications;
 
-import com.android.settings.R;
-
 import android.app.Activity;
 import android.app.ActivityManager;
 import android.app.AlertDialog;
@@ -18,9 +16,9 @@
 import android.content.IntentSender;
 import android.content.pm.ApplicationInfo;
 import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.pm.ProviderInfo;
 import android.content.pm.ServiceInfo;
-import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.res.Resources;
 import android.os.Bundle;
 import android.os.Debug;
@@ -35,6 +33,9 @@
 import android.widget.Button;
 import android.widget.TextView;
 
+import com.android.settings.R;
+import com.android.settings.Utils;
+
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
@@ -507,12 +508,14 @@
     }
     
     @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
-        View view = mRootView = inflater.inflate(R.layout.running_service_details, null);
-        
+    public View onCreateView(
+            LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+        final View view = inflater.inflate(R.layout.running_service_details, container, false);
+        Utils.prepareCustomPreferencesList(container, view, view, false);
+
+        mRootView = view;
         mAllDetails = (ViewGroup)view.findViewById(R.id.all_details);
         mSnippet = (ViewGroup)view.findViewById(R.id.snippet);
-        mSnippet.setPadding(0, mSnippet.getPaddingTop(), 0, mSnippet.getPaddingBottom());
         mSnippetViewHolder = new RunningProcessesView.ViewHolder(mSnippet);
         
         // We want to retrieve the data right now, so any active managed
diff --git a/src/com/android/settings/bluetooth/RequestPermissionActivity.java b/src/com/android/settings/bluetooth/RequestPermissionActivity.java
index 08c10fb..9f266a5 100644
--- a/src/com/android/settings/bluetooth/RequestPermissionActivity.java
+++ b/src/com/android/settings/bluetooth/RequestPermissionActivity.java
@@ -149,8 +149,6 @@
 
     private void createDialog() {
         AlertDialog.Builder builder = new AlertDialog.Builder(this);
-        builder.setIcon(android.R.drawable.ic_dialog_info);
-        builder.setTitle(getString(R.string.bluetooth_permission_request));
 
         if (mNeededToEnableBluetooth) {
             // RequestPermissionHelperActivity has gotten confirmation from user
@@ -167,8 +165,8 @@
                 builder.setMessage(
                         getString(R.string.bluetooth_ask_discovery, mTimeout));
             }
-            builder.setPositiveButton(getString(R.string.yes), this);
-            builder.setNegativeButton(getString(R.string.no), this);
+            builder.setPositiveButton(getString(R.string.allow), this);
+            builder.setNegativeButton(getString(R.string.deny), this);
         }
 
         mDialog = builder.create();
diff --git a/src/com/android/settings/bluetooth/RequestPermissionHelperActivity.java b/src/com/android/settings/bluetooth/RequestPermissionHelperActivity.java
index 5c4b828..f108513 100644
--- a/src/com/android/settings/bluetooth/RequestPermissionHelperActivity.java
+++ b/src/com/android/settings/bluetooth/RequestPermissionHelperActivity.java
@@ -72,26 +72,20 @@
 
     void createDialog() {
         final AlertController.AlertParams p = mAlertParams;
-        p.mIconId = android.R.drawable.ic_dialog_info;
-        p.mTitle = getString(R.string.bluetooth_permission_request);
-
-        View view = getLayoutInflater().inflate(R.layout.bluetooth_discoverable, null);
-        p.mView = view;
-        TextView tv = (TextView) view.findViewById(R.id.message);
 
         if (mEnableOnly) {
-            tv.setText(getString(R.string.bluetooth_ask_enablement));
+            p.mMessage = getString(R.string.bluetooth_ask_enablement);
         } else {
             if (mTimeout == BluetoothDiscoverableEnabler.DISCOVERABLE_TIMEOUT_NEVER) {
-                tv.setText(getString(R.string.bluetooth_ask_enablement_and_lasting_discovery));
+                p.mMessage = getString(R.string.bluetooth_ask_enablement_and_lasting_discovery);
             } else {
-                tv.setText(getString(R.string.bluetooth_ask_enablement_and_discovery, mTimeout));
+                p.mMessage = getString(R.string.bluetooth_ask_enablement_and_discovery, mTimeout);
             }
         }
 
-        p.mPositiveButtonText = getString(R.string.yes);
+        p.mPositiveButtonText = getString(R.string.allow);
         p.mPositiveButtonListener = this;
-        p.mNegativeButtonText = getString(R.string.no);
+        p.mNegativeButtonText = getString(R.string.deny);
         p.mNegativeButtonListener = this;
 
         setupAlert();
diff --git a/src/com/android/settings/fuelgauge/PowerUsageDetail.java b/src/com/android/settings/fuelgauge/PowerUsageDetail.java
index 753bf82..8ecc659 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageDetail.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.fuelgauge;
 
+import static com.android.settings.Utils.prepareCustomPreferencesList;
+
 import android.app.Activity;
 import android.app.ActivityManager;
 import android.app.ApplicationErrorReport;
@@ -141,8 +143,12 @@
     }
 
     @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
-        View view = mRootView = inflater.inflate(R.layout.power_usage_details, null);
+    public View onCreateView(
+            LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+        final View view = inflater.inflate(R.layout.power_usage_details, container, false);
+        prepareCustomPreferencesList(container, view, view, false);
+
+        mRootView = view;
         createDetails();
         return view;
     }
diff --git a/tests/res/layout/bluetooth_request_permission_test.xml b/tests/res/layout/bluetooth_request_permission_test.xml
index 0a5aec0..b62db19 100644
--- a/tests/res/layout/bluetooth_request_permission_test.xml
+++ b/tests/res/layout/bluetooth_request_permission_test.xml
@@ -32,19 +32,19 @@
         style="@android:style/ButtonBar">
 
         <Button android:id="@+id/enable"
-            android:layout_width="0dip"
+            android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:text="@string/enable" />
 
         <Button android:id="@+id/discoverable"
-            android:layout_width="0dip"
+            android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:text="@string/discoverable" />
 
         <Button android:id="@+id/scan"
-            android:layout_width="0dip"
+            android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:text="@string/start_scan" />
diff --git a/tests/src/com/android/settings/tests/BluetoothRequestPermissionTest.java b/tests/src/com/android/settings/tests/BluetoothRequestPermissionTest.java
index 8064e3a..a2cdafe 100644
--- a/tests/src/com/android/settings/tests/BluetoothRequestPermissionTest.java
+++ b/tests/src/com/android/settings/tests/BluetoothRequestPermissionTest.java
@@ -36,6 +36,9 @@
     BluetoothAdapter mAdapter;
     private ArrayAdapter<String> mMsgAdapter;
 
+    // Discoverable button alternates between 20 second timeout and no timeout.
+    private boolean mDiscoveryWithTimeout = true;
+
     private class BtOnClickListener implements OnClickListener {
         final boolean mEnableOnly; // enable or enable + discoverable
 
@@ -103,7 +106,10 @@
         } else {
             addMsg("Starting activity to enable bt + discovery");
             i.setAction(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
-            i.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 20);
+            // Discoverability duration toggles between 20 seconds and no timeout.
+            int timeout = (mDiscoveryWithTimeout ? 20 : 0);
+            i.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, timeout);
+            mDiscoveryWithTimeout = !mDiscoveryWithTimeout;
         }
         startActivityForResult(i, 1);
     }