Split app info into several screens

The root screen now only has the uninstall/force stop/disable buttons
and the rest has moved to sub screens listed in a preference list.
The root screen as UI approximate to the new mocks, but the separated
screens (storage, launch by default, etc.) have yet to receive their
visual overhaul.

Bug: 19511439
Change-Id: I4e01fbaefc69e0652edea2429d9e9b028c78e825
diff --git a/res/layout/app_notification_header.xml b/res/layout/app_header.xml
similarity index 100%
rename from res/layout/app_notification_header.xml
rename to res/layout/app_header.xml
diff --git a/res/layout/app_preferred_settings.xml b/res/layout/app_preferred_settings.xml
new file mode 100644
index 0000000..7c6a45f
--- /dev/null
+++ b/res/layout/app_preferred_settings.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2015, 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_width="match_parent"
+    android:layout_height="match_parent"
+    android:clipToPadding="false"
+    android:scrollbarStyle="@integer/preference_scrollbar_style">
+
+    <LinearLayout
+        android:id="@+id/all_details"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+        android:paddingBottom="5dip"
+        android:orientation="vertical">
+
+        <!-- Prefered activities section -->
+        <TextView android:id="@+id/auto_launch_title"
+            style="?android:attr/listSeparatorTextViewStyle"
+            android:layout_marginTop="8dip"
+            android:text="@string/auto_launch_label" />
+
+        <RelativeLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            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" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_below="@id/auto_launch"
+                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>
+
+    </LinearLayout>
+</ScrollView>
diff --git a/res/layout/installed_app_details.xml b/res/layout/installed_app_details.xml
index 5b923fc..ccbe105 100644
--- a/res/layout/installed_app_details.xml
+++ b/res/layout/installed_app_details.xml
@@ -16,448 +16,43 @@
 ** limitations under the License.
 */
 -->
-<ScrollView
+<LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/all_details"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:clipToPadding="false"
-    android:scrollbarStyle="@integer/preference_scrollbar_style">
+    android:layout_height="wrap_content"
+    android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+    android:orientation="vertical">
 
+    <!-- App snippet with buttons -->
     <LinearLayout
-        android:id="@+id/all_details"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
-        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
-        android:paddingBottom="5dip"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_vertical"
+        android:paddingTop="5dip"
+        android:paddingBottom="10dip"
         android:orientation="vertical">
 
-        <!-- App snippet with buttons -->
-        <LinearLayout
+        <!-- Application snippet label, version and icon -->
+        <include
+            layout="@layout/manage_applications_item"
+            android:id="@+id/app_snippet" />
+
+        <Space
             android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center_vertical"
-            android:orientation="vertical">
+            android:layout_height="5dp" />
 
-            <!-- Application snippet label, version and icon -->
-            <include
-                layout="@layout/manage_applications_item"
-                android:id="@+id/app_snippet" />
+        <!-- Force stop and uninstall buttons -->
+        <include
+            layout="@layout/two_buttons_panel"
+            android:id="@+id/control_buttons_panel"/>
 
-            <!-- Force stop and uninstall buttons -->
-            <include
-                layout="@layout/two_buttons_panel"
-                android:id="@+id/control_buttons_panel"/>
+        <!-- Force stop and uninstall buttons -->
+        <include
+            layout="@layout/two_buttons_panel"
+            android:id="@+id/more_control_buttons_panel"/>
 
-            <!-- Force stop and uninstall buttons -->
-            <include
-                layout="@layout/two_buttons_panel"
-                android:id="@+id/more_control_buttons_panel"/>
-
-            <!-- Ban notifications for this package -->
-            <CheckBox android:id="@+id/notification_switch"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_gravity="start"
-                android:layout_marginTop="4dip"
-                android:text="@string/app_notifications_switch_label" />
-
-        </LinearLayout>
-
-        <TextView
-            style="?android:attr/listSeparatorTextViewStyle"
-            android:layout_marginTop="8dip"
-            android:text="@string/storage_label" />
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:orientation="vertical"
-            android:paddingStart="?android:attr/listPreferredItemPaddingStart"
-            android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="horizontal"
-                android:baselineAligned="true"
-                android:paddingTop="-1dip">
-                <TextView
-                    android:id="@+id/total_size_prefix"
-                    android:text="@string/total_size_label"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1"
-                    android:paddingTop="6dip" />
-                <ImageView
-                    android:id="@+id/info_size_dots"
-                    android:src="@drawable/dotted_line_480px"
-                    android:layout_width="0dip"
-                    android:layout_weight="1"
-                    android:layout_height="1px"
-                    android:layout_gravity="bottom"
-                    android:layout_marginStart="1dip"
-                    android:layout_marginEnd="1dip"
-                    android:layout_marginBottom="4dip"
-                    android:scaleType="center"
-                    android:contentDescription="@null" />
-                <TextView
-                    android:id="@+id/total_size_text"
-                    android:paddingTop="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"
-                android:orientation="horizontal"
-                android:baselineAligned="true"
-                android:paddingTop="-1dip">
-                <TextView
-                    android:id="@+id/application_size_prefix"
-                    android:text="@string/application_size_label"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1"
-                    android:paddingTop="6dip" />
-                <ImageView
-                    android:id="@+id/info_size_dots"
-                    android:src="@drawable/dotted_line_480px"
-                    android:layout_width="0dip"
-                    android:layout_weight="1"
-                    android:layout_height="1px"
-                    android:layout_gravity="bottom"
-                    android:layout_marginStart="1dip"
-                    android:layout_marginEnd="1dip"
-                    android:layout_marginBottom="4dip"
-                    android:scaleType="center"
-                    android:contentDescription="@null" />
-                <TextView
-                    android:id="@+id/application_size_text"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:paddingTop="6dip"
-                    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"
-                android:orientation="horizontal"
-                android:baselineAligned="true"
-                android:paddingTop="-1dip">
-                <TextView
-                    android:id="@+id/external_code_size_prefix"
-                    android:text="@string/external_code_size_label"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1"
-                    android:paddingTop="6dip" />
-                <ImageView
-                    android:id="@+id/info_size_dots"
-                    android:src="@drawable/dotted_line_480px"
-                    android:layout_width="0dip"
-                    android:layout_weight="1"
-                    android:layout_height="1px"
-                    android:layout_gravity="bottom"
-                    android:layout_marginStart="1dip"
-                    android:layout_marginEnd="1dip"
-                    android:layout_marginBottom="4dip"
-                    android:scaleType="center"
-                    android:contentDescription="@null" />
-                <TextView
-                    android:id="@+id/external_code_size_text"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:paddingTop="6dip"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1" />
-            </LinearLayout>
-
-            <LinearLayout
-                android:id="@+id/info_size"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="horizontal"
-                android:baselineAligned="true"
-                android:paddingTop="-1dip">
-                <TextView
-                    android:id="@+id/data_size_prefix"
-                    android:text="@string/data_size_label"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1"
-                    android:paddingTop="6dip" />
-                <ImageView
-                    android:id="@+id/info_size_dots"
-                    android:src="@drawable/dotted_line_480px"
-                    android:layout_width="0dip"
-                    android:layout_weight="1"
-                    android:layout_height="1px"
-                    android:layout_gravity="bottom"
-                    android:layout_marginStart="1dip"
-                    android:layout_marginEnd="1dip"
-                    android:layout_marginBottom="4dip"
-                    android:scaleType="center"
-                    android:contentDescription="@null" />
-                <TextView
-                    android:id="@+id/data_size_text"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:paddingTop="6dip"
-                    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"
-                android:orientation="horizontal"
-                android:baselineAligned="true"
-                android:paddingTop="-1dip">
-                <TextView
-                    android:id="@+id/external_data_size_prefix"
-                    android:text="@string/external_data_size_label"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1"
-                    android:paddingTop="6dip" />
-                <ImageView
-                    android:id="@+id/info_size_dots"
-                    android:src="@drawable/dotted_line_480px"
-                    android:layout_width="0dip"
-                    android:layout_weight="1"
-                    android:layout_height="1px"
-                    android:layout_gravity="bottom"
-                    android:layout_marginStart="1dip"
-                    android:layout_marginEnd="1dip"
-                    android:layout_marginBottom="4dip"
-                    android:scaleType="center"
-                    android:contentDescription="@null" />
-                <TextView
-                    android:id="@+id/external_data_size_text"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:paddingTop="6dip"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1" />
-            </LinearLayout>
-
-            <!-- Clear data and install location buttons  -->
-            <include
-                layout="@layout/two_buttons_panel"
-                android:id="@+id/data_buttons_panel"/>
-
-        </LinearLayout>
-
-        <!-- Clear cache section -->
-        <RelativeLayout
-            android:id="@+id/cache_panel"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content" >
-            <TextView
-                android:id="@+id/cache_header"
-                style="?android:attr/listSeparatorTextViewStyle"
-                android:layout_marginTop="8dip"
-                android:text="@string/cache_header_label" />
-            <LinearLayout
-                android:id="@+id/cache_size"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                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"
-                    android:layout_height="wrap_content"
-                    android:layout_width="wrap_content"
-                    android:maxLines="1"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:paddingTop="6dip"
-                    android:gravity="center_vertical" />
-                <ImageView
-                    android:src="@drawable/dotted_line_480px"
-                    android:layout_width="0dip"
-                    android:layout_weight="1"
-                    android:layout_height="1px"
-                    android:layout_gravity="bottom"
-                    android:layout_marginStart="1dip"
-                    android:layout_marginEnd="1dip"
-                    android:layout_marginBottom="4dip"
-                    android:scaleType="center"
-                    android:contentDescription="@null" />
-                <TextView
-                    android:id="@+id/cache_size_text"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:paddingTop="6dip"
-                    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"
-                android:layout_below="@id/cache_size"
-                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 -->
-        <TextView android:id="@+id/auto_launch_title"
-            style="?android:attr/listSeparatorTextViewStyle"
-            android:layout_marginTop="8dip"
-            android:text="@string/auto_launch_label" />
-
-        <RelativeLayout 
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            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" />
-
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_below="@id/auto_launch"
-                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 -->
-        <LinearLayout android:id="@+id/screen_compatibility_section"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="vertical">
-            <TextView
-                style="?android:attr/listSeparatorTextViewStyle"
-                android:layout_marginTop="8dip"
-                android:text="@string/screen_compatibility_label" />
-
-            <TextView android:textAppearance="?android:attr/textAppearanceSmall"
-                android:layout_alignParentStart="true"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:paddingTop="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"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="12dip"
-                android:layout_gravity="start"
-                android:text="@string/ask_compatibility" />
-            <CheckBox android:id="@+id/enable_compatibility_cb"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="12dip"
-                android:layout_gravity="start"
-                android:text="@string/enable_compatibility" />
-        </LinearLayout>
-
-        <!-- Permissions section -->
-        <LinearLayout
-            android:id="@+id/permissions_section"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:orientation="vertical">
-            <TextView
-                style="?android:attr/listSeparatorTextViewStyle"
-                android:layout_marginTop="8dip"
-                android:text="@string/permissions_label" />
-            <TextView android:id="@+id/security_settings_billing_desc"
-                android:text="@string/security_settings_billing_desc"
-                android:textColor="#ffffb060"
-                android:textAppearance="?android:attr/textAppearanceSmall"
-                android:paddingTop="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
-                android:id="@+id/security_settings_billing_list"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:orientation="vertical">
-                <TextView
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="@string/security_settings_premium_sms_desc" />
-                <Spinner
-                    android:id="@+id/security_settings_premium_sms_list"
-                    android:layout_width="fill_parent"
-                    android:layout_height="wrap_content"
-                    android:spinnerMode="dropdown" />
-            </LinearLayout>
-            <TextView android:id="@+id/security_settings_desc"
-                android:text="@string/security_settings_desc"
-                android:textAppearance="?android:attr/textAppearanceSmall"
-                android:paddingTop="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
-                android:id="@+id/security_settings_list"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:orientation="vertical"/>
-        </LinearLayout>
     </LinearLayout>
-</ScrollView>
+</LinearLayout>
 
diff --git a/res/layout/permission_settings.xml b/res/layout/permission_settings.xml
new file mode 100644
index 0000000..8233c81
--- /dev/null
+++ b/res/layout/permission_settings.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2015, 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_width="match_parent"
+    android:layout_height="match_parent"
+    android:clipToPadding="false"
+    android:scrollbarStyle="@integer/preference_scrollbar_style">
+
+    <LinearLayout
+        android:id="@+id/all_details"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+        android:paddingBottom="5dip"
+        android:orientation="vertical">
+
+        <!-- Permissions section -->
+        <LinearLayout
+            android:id="@+id/permissions_section"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:orientation="vertical">
+            <TextView
+                style="?android:attr/listSeparatorTextViewStyle"
+                android:layout_marginTop="8dip"
+                android:text="@string/permissions_label" />
+            <TextView android:id="@+id/security_settings_billing_desc"
+                android:text="@string/security_settings_billing_desc"
+                android:textColor="#ffffb060"
+                android:textAppearance="?android:attr/textAppearanceSmall"
+                android:paddingTop="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
+                android:id="@+id/security_settings_billing_list"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:orientation="vertical">
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="@string/security_settings_premium_sms_desc" />
+                <Spinner
+                    android:id="@+id/security_settings_premium_sms_list"
+                    android:layout_width="fill_parent"
+                    android:layout_height="wrap_content"
+                    android:spinnerMode="dropdown" />
+            </LinearLayout>
+            <TextView android:id="@+id/security_settings_desc"
+                android:text="@string/security_settings_desc"
+                android:textAppearance="?android:attr/textAppearanceSmall"
+                android:paddingTop="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
+                android:id="@+id/security_settings_list"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:orientation="vertical"/>
+        </LinearLayout>
+
+
+    </LinearLayout>
+</ScrollView>
diff --git a/res/layout/storage_settings.xml b/res/layout/storage_settings.xml
new file mode 100644
index 0000000..b8dddfd
--- /dev/null
+++ b/res/layout/storage_settings.xml
@@ -0,0 +1,307 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2015, 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_width="match_parent"
+    android:layout_height="match_parent"
+    android:clipToPadding="false"
+    android:scrollbarStyle="@integer/preference_scrollbar_style">
+
+    <LinearLayout
+        android:id="@+id/all_details"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+        android:paddingBottom="5dip"
+        android:orientation="vertical">
+
+
+        <TextView
+            style="?android:attr/listSeparatorTextViewStyle"
+            android:layout_marginTop="8dip"
+            android:text="@string/storage_label" />
+
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="vertical"
+            android:paddingStart="?android:attr/listPreferredItemPaddingStart"
+            android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal"
+                android:baselineAligned="true"
+                android:paddingTop="-1dip">
+                <TextView
+                    android:id="@+id/total_size_prefix"
+                    android:text="@string/total_size_label"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1"
+                    android:paddingTop="6dip" />
+                <ImageView
+                    android:id="@+id/info_size_dots"
+                    android:src="@drawable/dotted_line_480px"
+                    android:layout_width="0dip"
+                    android:layout_weight="1"
+                    android:layout_height="1px"
+                    android:layout_gravity="bottom"
+                    android:layout_marginStart="1dip"
+                    android:layout_marginEnd="1dip"
+                    android:layout_marginBottom="4dip"
+                    android:scaleType="center"
+                    android:contentDescription="@null" />
+                <TextView
+                    android:id="@+id/total_size_text"
+                    android:paddingTop="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"
+                android:orientation="horizontal"
+                android:baselineAligned="true"
+                android:paddingTop="-1dip">
+                <TextView
+                    android:id="@+id/application_size_prefix"
+                    android:text="@string/application_size_label"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1"
+                    android:paddingTop="6dip" />
+                <ImageView
+                    android:id="@+id/info_size_dots"
+                    android:src="@drawable/dotted_line_480px"
+                    android:layout_width="0dip"
+                    android:layout_weight="1"
+                    android:layout_height="1px"
+                    android:layout_gravity="bottom"
+                    android:layout_marginStart="1dip"
+                    android:layout_marginEnd="1dip"
+                    android:layout_marginBottom="4dip"
+                    android:scaleType="center"
+                    android:contentDescription="@null" />
+                <TextView
+                    android:id="@+id/application_size_text"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:paddingTop="6dip"
+                    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"
+                android:orientation="horizontal"
+                android:baselineAligned="true"
+                android:paddingTop="-1dip">
+                <TextView
+                    android:id="@+id/external_code_size_prefix"
+                    android:text="@string/external_code_size_label"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1"
+                    android:paddingTop="6dip" />
+                <ImageView
+                    android:id="@+id/info_size_dots"
+                    android:src="@drawable/dotted_line_480px"
+                    android:layout_width="0dip"
+                    android:layout_weight="1"
+                    android:layout_height="1px"
+                    android:layout_gravity="bottom"
+                    android:layout_marginStart="1dip"
+                    android:layout_marginEnd="1dip"
+                    android:layout_marginBottom="4dip"
+                    android:scaleType="center"
+                    android:contentDescription="@null" />
+                <TextView
+                    android:id="@+id/external_code_size_text"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:paddingTop="6dip"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1" />
+            </LinearLayout>
+
+            <LinearLayout
+                android:id="@+id/info_size"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal"
+                android:baselineAligned="true"
+                android:paddingTop="-1dip">
+                <TextView
+                    android:id="@+id/data_size_prefix"
+                    android:text="@string/data_size_label"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1"
+                    android:paddingTop="6dip" />
+                <ImageView
+                    android:id="@+id/info_size_dots"
+                    android:src="@drawable/dotted_line_480px"
+                    android:layout_width="0dip"
+                    android:layout_weight="1"
+                    android:layout_height="1px"
+                    android:layout_gravity="bottom"
+                    android:layout_marginStart="1dip"
+                    android:layout_marginEnd="1dip"
+                    android:layout_marginBottom="4dip"
+                    android:scaleType="center"
+                    android:contentDescription="@null" />
+                <TextView
+                    android:id="@+id/data_size_text"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:paddingTop="6dip"
+                    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"
+                android:orientation="horizontal"
+                android:baselineAligned="true"
+                android:paddingTop="-1dip">
+                <TextView
+                    android:id="@+id/external_data_size_prefix"
+                    android:text="@string/external_data_size_label"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1"
+                    android:paddingTop="6dip" />
+                <ImageView
+                    android:id="@+id/info_size_dots"
+                    android:src="@drawable/dotted_line_480px"
+                    android:layout_width="0dip"
+                    android:layout_weight="1"
+                    android:layout_height="1px"
+                    android:layout_gravity="bottom"
+                    android:layout_marginStart="1dip"
+                    android:layout_marginEnd="1dip"
+                    android:layout_marginBottom="4dip"
+                    android:scaleType="center"
+                    android:contentDescription="@null" />
+                <TextView
+                    android:id="@+id/external_data_size_text"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:paddingTop="6dip"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1" />
+            </LinearLayout>
+
+            <!-- Clear data and install location buttons  -->
+            <include
+                layout="@layout/two_buttons_panel"
+                android:id="@+id/data_buttons_panel"/>
+
+        </LinearLayout>
+
+
+        <!-- Clear cache section -->
+        <RelativeLayout
+            android:id="@+id/cache_panel"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content" >
+            <TextView
+                android:id="@+id/cache_header"
+                style="?android:attr/listSeparatorTextViewStyle"
+                android:layout_marginTop="8dip"
+                android:text="@string/cache_header_label" />
+            <LinearLayout
+                android:id="@+id/cache_size"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                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"
+                    android:layout_height="wrap_content"
+                    android:layout_width="wrap_content"
+                    android:maxLines="1"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:paddingTop="6dip"
+                    android:gravity="center_vertical" />
+                <ImageView
+                    android:src="@drawable/dotted_line_480px"
+                    android:layout_width="0dip"
+                    android:layout_weight="1"
+                    android:layout_height="1px"
+                    android:layout_gravity="bottom"
+                    android:layout_marginStart="1dip"
+                    android:layout_marginEnd="1dip"
+                    android:layout_marginBottom="4dip"
+                    android:scaleType="center"
+                    android:contentDescription="@null" />
+                <TextView
+                    android:id="@+id/cache_size_text"
+                    android:textAppearance="?android:attr/textAppearanceMedium"
+                    android:paddingTop="6dip"
+                    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"
+                android:layout_below="@id/cache_size"
+                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>
+    </LinearLayout>
+</ScrollView>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ee02364..d57ee72 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -5922,4 +5922,37 @@
    <string name="imei_information_summary">IMEI relative information</string>
    <string name="slot_number">(Slot<xliff:g id="slot_num">%1$d</xliff:g>)</string>
 
+   <!-- New strings needed for App Info 2 -->
+   <!-- Preference label for app default launch settings -->
+   <string name="launch_by_default">Launch by default</string>
+
+   <!-- Summary for app storage preference -->
+   <string name="storage_summary_format"><xliff:g id="size" example="30.00MB">%1$s</xliff:g> used in <xliff:g id="storage_type" example="internal memory">%2$s</xliff:g></string>
+   <!-- Internal storage label -->
+   <string name="storage_type_internal">internal memory</string>
+   <!-- External storage label -->
+   <string name="storage_type_external">external memory</string>
+
+   <!-- App notification summary with notifications enabled -->
+   <string name="notifications_enabled">On</string>
+   <!-- App notification summary with notifications disabled -->
+   <string name="notifications_disabled">Block</string>
+   <!-- App notification summary with notifications sensitive -->
+   <string name="notifications_sensitive">Sensitive</string>
+   <!-- App notification summary with notifications priority -->
+   <string name="notifications_priority">Priority</string>
+   <!-- App notification summary with notifications priority and sensitive -->
+   <string name="notifications_priority_sensitive">Priority &amp; Sensitive</string>
+
+   <!-- Permissions preference summary -->
+   <plurals name="permissions_summary">
+       <item quantity="one"><xliff:g id="count" example="1">%d</xliff:g> permission granted</item>
+       <item quantity="other"><xliff:g id="count" example="10">%d</xliff:g> permissions granted</item>
+   </plurals>
+
+   <!-- Launch defaults preference summary with some set -->
+   <string name="launch_defaults_some">Some defaults set</string>
+   <!-- Launch defaults preference summary with none set -->
+   <string name="launch_defaults_none">No defaults set</string>
+
 </resources>
diff --git a/res/xml/installed_app_details.xml b/res/xml/installed_app_details.xml
new file mode 100644
index 0000000..05bea5c
--- /dev/null
+++ b/res/xml/installed_app_details.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 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.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+                  android:title="@string/application_info_label">
+    <com.android.settings.applications.HeaderPreference
+        android:key="header_view"
+        android:layout="@layout/installed_app_details" />
+
+    <Preference
+        android:key="notification_settings"
+        android:title="@string/notification_section_header"
+        android:selectable="true" />
+
+    <Preference
+        android:key="storage_settings"
+        android:title="@string/storage_settings"
+        android:selectable="true" />
+
+    <Preference
+        android:key="permission_settings"
+        android:title="@string/permissions_label"
+        android:selectable="true" />
+
+    <Preference
+        android:key="data_settings"
+        android:title="@string/data_size_label"
+        android:selectable="true" />
+
+    <Preference
+        android:key="preferred_settings"
+        android:title="@string/launch_by_default"
+        android:selectable="true" />
+</PreferenceScreen>