Merge "Import translations. DO NOT MERGE" into nyc-dev
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 4b976b5..a1cb7ee 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1041,6 +1041,19 @@
android:value="com.android.settings.applications.ProcessStatsSummary" />
</activity>
+ <activity android:name="Settings$AppMemoryUsageActivity"
+ android:label="@string/app_list_memory_use"
+ android:icon="@drawable/ic_settings_memory">
+ <intent-filter>
+ <action android:name="android.settings.APP_MEMORY_USAGE" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ <meta-data android:name="com.android.settings.category"
+ android:value="com.android.settings.category.device" />
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.applications.ProcessStatsUi" />
+ </activity>
+
<activity android:name="Settings$AllApplicationsActivity"
android:label="@string/applications_settings"
android:taskAffinity="">
diff --git a/res/layout/font_size_preview.xml b/res/layout/font_size_preview.xml
index f4a861c..d84bb39 100644
--- a/res/layout/font_size_preview.xml
+++ b/res/layout/font_size_preview.xml
@@ -14,35 +14,47 @@
limitations under the License.
-->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:paddingTop="16dp"
- android:paddingStart="16dp"
- android:paddingEnd="16dp"
- android:orientation="vertical">
+ android:fillViewport="true" >
- <TextView
+ <view class="com.android.settings.TouchBlockingFrameLayout"
+ android:id="@+id/frame"
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/font_size_preview_text_headline"
- android:textAppearance="@android:style/TextAppearance.Material.Headline"/>
+ android:layout_height="wrap_content">
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/font_size_preview_text_title"
- android:textAppearance="@android:style/TextAppearance.Material.Title"/>
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:paddingTop="16dp"
+ android:paddingStart="16dp"
+ android:paddingEnd="16dp"
+ android:orientation="vertical">
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/font_size_preview_text_subtitle"
- android:textAppearance="@android:style/TextAppearance.Material.Subhead"/>
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/font_size_preview_text_headline"
+ android:textAppearance="@android:style/TextAppearance.Material.Headline"/>
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/font_size_preview_text_body"
- android:textAppearance="@android:style/TextAppearance.Material.Body1"/>
-</LinearLayout>
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/font_size_preview_text_title"
+ android:textAppearance="@android:style/TextAppearance.Material.Title"/>
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/font_size_preview_text_subtitle"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"/>
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/font_size_preview_text_body"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"/>
+ </LinearLayout>
+ </view>
+</ScrollView>
diff --git a/res/layout/preview_frame_container.xml b/res/layout/preview_frame_container.xml
deleted file mode 100644
index 5ba3b7f..0000000
--- a/res/layout/preview_frame_container.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<view xmlns:android="http://schemas.android.com/apk/res/android"
- class="com.android.settings.TouchBlockingFrameLayout"
- android:layout_width="match_parent"
- android:layout_height="match_parent" />
diff --git a/res/layout/preview_seek_bar_view_pager.xml b/res/layout/preview_seek_bar_view_pager.xml
index 45c050e..66b492c 100644
--- a/res/layout/preview_seek_bar_view_pager.xml
+++ b/res/layout/preview_seek_bar_view_pager.xml
@@ -19,6 +19,7 @@
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="vertical"
+ android:minHeight="@dimen/preview_pager_min_height"
android:padding="@dimen/preview_pager_padding"
android:background="@drawable/preview_seek_bar_outline" >
@@ -27,7 +28,8 @@
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
- android:background="?android:attr/colorBackgroundFloating" />
+ android:background="?android:attr/colorBackgroundFloating"
+ android:contentDescription="@string/preview_pager_content_description" />
<TextView
android:layout_width="match_parent"
diff --git a/res/layout/screen_zoom_preview_1.xml b/res/layout/screen_zoom_preview_1.xml
index 1acd677..4280091 100644
--- a/res/layout/screen_zoom_preview_1.xml
+++ b/res/layout/screen_zoom_preview_1.xml
@@ -13,56 +13,66 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@color/conversation_background"
- android:paddingTop="@dimen/conversation_message_list_padding"
- android:paddingStart="@dimen/conversation_message_list_padding"
- android:paddingEnd="@dimen/conversation_message_list_padding"
- android:orientation="vertical"
- android:importantForAccessibility="noHideDescendants">
+ android:fillViewport="true" >
- <com.android.settings.display.ConversationMessageView
+ <view class="com.android.settings.TouchBlockingFrameLayout"
+ android:id="@+id/frame"
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- app:incoming="false"
- app:messageText="@string/screen_zoom_conversation_message_1"
- app:timestampText="@string/screen_zoom_conversation_timestamp_1"
- app:iconText="@string/screen_zoom_conversation_icon_alex"
- app:iconTextColor="@color/message_icon_text_outgoing"
- app:iconBackgroundColor="@color/message_icon_background_outgoing" />
+ android:layout_height="wrap_content">
- <com.android.settings.display.ConversationMessageView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- app:incoming="true"
- app:messageText="@string/screen_zoom_conversation_message_2"
- app:timestampText="@string/screen_zoom_conversation_timestamp_2"
- app:iconText="@string/screen_zoom_conversation_icon_pete"
- app:iconTextColor="@color/message_icon_text_incoming"
- app:iconBackgroundColor="@color/message_icon_background_incoming" />
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/conversation_background"
+ android:paddingTop="@dimen/conversation_message_list_padding"
+ android:paddingStart="@dimen/conversation_message_list_padding"
+ android:paddingEnd="@dimen/conversation_message_list_padding"
+ android:orientation="vertical"
+ android:importantForAccessibility="noHideDescendants">
- <com.android.settings.display.ConversationMessageView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- app:incoming="false"
- app:messageText="@string/screen_zoom_conversation_message_3"
- app:timestampText="@string/screen_zoom_conversation_timestamp_3"
- app:iconText="@string/screen_zoom_conversation_icon_alex"
- app:iconTextColor="@color/message_icon_text_outgoing"
- app:iconBackgroundColor="@color/message_icon_background_outgoing" />
+ <com.android.settings.display.ConversationMessageView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ app:incoming="false"
+ app:messageText="@string/screen_zoom_conversation_message_1"
+ app:timestampText="@string/screen_zoom_conversation_timestamp_1"
+ app:iconText="@string/screen_zoom_conversation_icon_alex"
+ app:iconTextColor="@color/message_icon_text_outgoing"
+ app:iconBackgroundColor="@color/message_icon_background_outgoing" />
- <com.android.settings.display.ConversationMessageView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- app:incoming="true"
- app:messageText="@string/screen_zoom_conversation_message_4"
- app:timestampText="@string/screen_zoom_conversation_timestamp_4"
- app:iconText="@string/screen_zoom_conversation_icon_pete"
- app:iconTextColor="@color/message_icon_text_incoming"
- app:iconBackgroundColor="@color/message_icon_background_incoming" />
+ <com.android.settings.display.ConversationMessageView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ app:incoming="true"
+ app:messageText="@string/screen_zoom_conversation_message_2"
+ app:timestampText="@string/screen_zoom_conversation_timestamp_2"
+ app:iconText="@string/screen_zoom_conversation_icon_pete"
+ app:iconTextColor="@color/message_icon_text_incoming"
+ app:iconBackgroundColor="@color/message_icon_background_incoming" />
-</LinearLayout>
+ <com.android.settings.display.ConversationMessageView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ app:incoming="false"
+ app:messageText="@string/screen_zoom_conversation_message_3"
+ app:timestampText="@string/screen_zoom_conversation_timestamp_3"
+ app:iconText="@string/screen_zoom_conversation_icon_alex"
+ app:iconTextColor="@color/message_icon_text_outgoing"
+ app:iconBackgroundColor="@color/message_icon_background_outgoing" />
+
+ <com.android.settings.display.ConversationMessageView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ app:incoming="true"
+ app:messageText="@string/screen_zoom_conversation_message_4"
+ app:timestampText="@string/screen_zoom_conversation_timestamp_4"
+ app:iconText="@string/screen_zoom_conversation_icon_pete"
+ app:iconTextColor="@color/message_icon_text_incoming"
+ app:iconBackgroundColor="@color/message_icon_background_incoming" />
+ </LinearLayout>
+ </view>
+</ScrollView>
diff --git a/res/layout/screen_zoom_preview_settings.xml b/res/layout/screen_zoom_preview_settings.xml
index 2e68009..f93adc2 100644
--- a/res/layout/screen_zoom_preview_settings.xml
+++ b/res/layout/screen_zoom_preview_settings.xml
@@ -17,204 +17,210 @@
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:scrollbars="none"
+ android:fillViewport="true"
android:background="?android:attr/colorBackgroundFloating"
android:importantForAccessibility="noHideDescendants">
- <LinearLayout
+ <view class="com.android.settings.TouchBlockingFrameLayout"
+ android:id="@+id/frame"
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical">
+ android:layout_height="wrap_content">
- <!-- Wifi Setting -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:paddingTop="16dp"
- android:paddingStart="8dp"
- android:orientation="horizontal">
+ android:orientation="vertical">
- <ImageView
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:src="@drawable/wifi_signal_dark"
- android:tint="?android:attr/colorAccent"
- android:scaleType="center" />
-
+ <!-- Wifi Setting -->
<LinearLayout
- android:layout_width="0dp"
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical"
- android:paddingStart="16dp">
+ android:paddingTop="16dp"
+ android:paddingStart="8dp"
+ android:orientation="horizontal">
- <TextView
- android:layout_width="wrap_content"
+ <ImageView
+ android:layout_width="48dp"
+ android:layout_height="48dp"
+ android:src="@drawable/wifi_signal_dark"
+ android:tint="?android:attr/colorAccent"
+ android:scaleType="center" />
+
+ <LinearLayout
+ android:layout_width="0dp"
android:layout_height="wrap_content"
- android:text="@string/wifi_settings"
- android:textAppearance="@android:style/TextAppearance.Material.Subhead"
- android:textColor="?android:attr/textColorPrimary" />
+ android:layout_weight="1"
+ android:orientation="vertical"
+ android:paddingStart="16dp">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/wifi_settings"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
+ android:textColor="?android:attr/textColorPrimary" />
- <TextView
- android:layout_width="wrap_content"
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/wifi_display_status_not_available"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
+ </LinearLayout>
+ </LinearLayout>
+
+ <!-- Data usage Setting -->
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="16dp"
+ android:paddingStart="8dp"
+ android:orientation="horizontal">
+
+ <ImageView
+ android:layout_width="48dp"
+ android:layout_height="48dp"
+ android:src="@drawable/ic_settings_data_usage"
+ android:tint="?android:attr/colorAccent"
+ android:scaleType="center" />
+
+ <LinearLayout
+ android:layout_width="0dp"
android:layout_height="wrap_content"
- android:text="@string/wifi_display_status_not_available"
- android:textAppearance="@android:style/TextAppearance.Material.Body1"
- android:textColor="?android:attr/textColorSecondary" />
+ android:layout_weight="1"
+ android:orientation="vertical"
+ android:paddingStart="16dp">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/data_usage_summary_title"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
+ android:textColor="?android:attr/textColorPrimary" />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/no_data_usage"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
+ </LinearLayout>
+ </LinearLayout>
+
+ <!-- Display Setting -->
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="16dp"
+ android:paddingStart="8dp"
+ android:orientation="horizontal">
+
+ <ImageView
+ android:layout_width="48dp"
+ android:layout_height="48dp"
+ android:src="@drawable/ic_settings_display"
+ android:tint="?android:attr/colorAccent"
+ android:scaleType="center" />
+
+ <LinearLayout
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:orientation="vertical"
+ android:paddingStart="16dp">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/display_settings_title"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
+ android:textColor="?android:attr/textColorPrimary" />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/display_summary_on"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
+ </LinearLayout>
+ </LinearLayout>
+
+ <!-- Sound & Notification Setting -->
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="16dp"
+ android:paddingStart="8dp"
+ android:orientation="horizontal">
+
+ <ImageView
+ android:layout_width="48dp"
+ android:layout_height="48dp"
+ android:src="@drawable/ic_settings_sound"
+ android:tint="?android:attr/colorAccent"
+ android:scaleType="center" />
+
+ <LinearLayout
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:orientation="vertical"
+ android:paddingStart="16dp">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/sound_settings"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
+ android:textColor="?android:attr/textColorPrimary" />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/sound_settings_example_summary"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
+ </LinearLayout>
+ </LinearLayout>
+
+ <!-- Apps Setting -->
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="16dp"
+ android:paddingStart="8dp"
+ android:orientation="horizontal">
+
+ <ImageView
+ android:layout_width="48dp"
+ android:layout_height="48dp"
+ android:src="@drawable/ic_settings_applications"
+ android:tint="?android:attr/colorAccent"
+ android:scaleType="center" />
+
+ <LinearLayout
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:orientation="vertical"
+ android:paddingStart="16dp">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/applications_settings"
+ android:textAppearance="@android:style/TextAppearance.Material.Subhead"
+ android:textColor="?android:attr/textColorPrimary" />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/apps_summary_example"
+ android:textAppearance="@android:style/TextAppearance.Material.Body1"
+ android:textColor="?android:attr/textColorSecondary" />
+ </LinearLayout>
</LinearLayout>
</LinearLayout>
-
- <!-- Data usage Setting -->
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingTop="16dp"
- android:paddingStart="8dp"
- android:orientation="horizontal">
-
- <ImageView
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:src="@drawable/ic_settings_data_usage"
- android:tint="?android:attr/colorAccent"
- android:scaleType="center" />
-
- <LinearLayout
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical"
- android:paddingStart="16dp">
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/data_usage_summary_title"
- android:textAppearance="@android:style/TextAppearance.Material.Subhead"
- android:textColor="?android:attr/textColorPrimary" />
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/no_data_usage"
- android:textAppearance="@android:style/TextAppearance.Material.Body1"
- android:textColor="?android:attr/textColorSecondary" />
- </LinearLayout>
- </LinearLayout>
-
- <!-- Display Setting -->
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingTop="16dp"
- android:paddingStart="8dp"
- android:orientation="horizontal">
-
- <ImageView
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:src="@drawable/ic_settings_display"
- android:tint="?android:attr/colorAccent"
- android:scaleType="center" />
-
- <LinearLayout
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical"
- android:paddingStart="16dp">
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/display_settings_title"
- android:textAppearance="@android:style/TextAppearance.Material.Subhead"
- android:textColor="?android:attr/textColorPrimary" />
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/display_summary_on"
- android:textAppearance="@android:style/TextAppearance.Material.Body1"
- android:textColor="?android:attr/textColorSecondary" />
- </LinearLayout>
- </LinearLayout>
-
- <!-- Sound & Notification Setting -->
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingTop="16dp"
- android:paddingStart="8dp"
- android:orientation="horizontal">
-
- <ImageView
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:src="@drawable/ic_settings_sound"
- android:tint="?android:attr/colorAccent"
- android:scaleType="center" />
-
- <LinearLayout
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical"
- android:paddingStart="16dp">
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/sound_settings"
- android:textAppearance="@android:style/TextAppearance.Material.Subhead"
- android:textColor="?android:attr/textColorPrimary" />
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/sound_settings_example_summary"
- android:textAppearance="@android:style/TextAppearance.Material.Body1"
- android:textColor="?android:attr/textColorSecondary" />
- </LinearLayout>
- </LinearLayout>
-
- <!-- Apps Setting -->
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingTop="16dp"
- android:paddingStart="8dp"
- android:orientation="horizontal">
-
- <ImageView
- android:layout_width="48dp"
- android:layout_height="48dp"
- android:src="@drawable/ic_settings_applications"
- android:tint="?android:attr/colorAccent"
- android:scaleType="center" />
-
- <LinearLayout
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical"
- android:paddingStart="16dp">
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/applications_settings"
- android:textAppearance="@android:style/TextAppearance.Material.Subhead"
- android:textColor="?android:attr/textColorPrimary" />
-
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/apps_summary_example"
- android:textAppearance="@android:style/TextAppearance.Material.Body1"
- android:textColor="?android:attr/textColorSecondary" />
- </LinearLayout>
- </LinearLayout>
- </LinearLayout>
+ </view>
</ScrollView>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 3cd5503..a4e3401 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -294,6 +294,7 @@
<!-- Display Size and Font Size preview screen -->
<dimen name="preview_pager_padding">8dp</dimen>
+ <dimen name="preview_pager_min_height">200dp</dimen>
<!-- Padding between the radio buttons/checkbox and text on the redaction interstitial -->
<dimen name="redaction_padding_start">16dp</dimen>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a1ae9b1..ac7200f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -147,6 +147,8 @@
<!-- Used for diagnostic info screens, precise translation isn't needed. Formats the SD card in the phone, meaning it will be erased and reformatted -->
<string name="sdcard_format" product="default">Erase SD card</string>
+ <!-- Content description for preview pager. [CHAR LIMIT=NONE] -->
+ <string name="preview_pager_content_description">Preview</string>
<!-- Content description for dot pager indicator for preview pager. [CHAR LIMIT=NONE] -->
<string name="preview_page_indicator_content_description">Preview, page <xliff:g id="current_page" example="3">%1$d</xliff:g> of <xliff:g id="num_pages" example="9">%2$d</xliff:g></string>
@@ -538,7 +540,7 @@
</plurals>
<!-- The text of the confirmation dialog shown when the user selects several languages and tries to remove them [CHAR LIMIT=NONE] -->
- <string name="dlg_remove_locales_message">Text will be displayed in another language</string>
+ <string name="dlg_remove_locales_message">Text will be displayed in another language.</string>
<!-- The title of the error dialog shown when the user selects all the languages and tries to remove them [CHAR LIMIT=60] -->
<string name="dlg_remove_locales_error_title">Can’t remove all languages</string>
@@ -3349,10 +3351,6 @@
<string name="app_not_found_dlg_text"> The app wasn\u2019t found in the list of installed apps.</string>
<!-- Manage applications, individual application dialog box message. Shown when there was an error trying to clear the data. -->
<string name="clear_data_failed">Couldn\u2019t clear app data.</string>
- <!-- Manage applications, factory reset dialog title for system applications. -->
- <string name="app_factory_reset_dlg_title">Uninstall updates?</string>
- <!-- Manage applications, factory reset option dialog text for system applications. -->
- <string name="app_factory_reset_dlg_text">All updates to this Android system app will be uninstalled.</string>
<!-- Manage applications, title for dialog if clear data fails-->
<string name="clear_failed_dlg_title">Clear data</string>
<!-- Manage applications, text for dialog if clear data fails-->
@@ -3618,8 +3616,8 @@
<string name="virtual_keyboard_category">Virtual keyboard</string>
<!-- Title for the 'available virtual keyboard' preference sub-screen. [CHAR LIMIT=35] -->
<string name="available_virtual_keyboard_category">Available virtual keyboard</string>
- <!-- Title for the button to trigger the 'available virtual keyboard' preference sub-screen. [CHAR LIMIT=35] -->
- <string name="add_virtual_keyboard">Add a virtual keyboard</string>
+ <!-- Title for the button to trigger the 'Add or edit virtual keyboards' preference sub-screen. [CHAR LIMIT=35] -->
+ <string name="add_virtual_keyboard">Add or edit virtual keyboards</string>
<!-- Title for the 'keyboard assistance' preference category. [CHAR LIMIT=35] -->
<string name="keyboard_assistance_category">Keyboard assistance</string>
<!-- Title for the 'physical keyboard' settings screen. [CHAR LIMIT=35] -->
@@ -6729,7 +6727,7 @@
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for charging only. -->
- <string name="usb_use_charging_only">Charging</string>
+ <string name="usb_use_charging_only">Charge this device</string>
<!-- Decription of one of the choices in a dialog (with title defined in usb_use) that lets the
user select what the USB connection for this device should be used for. This choice
is for charging only. -->
@@ -6737,15 +6735,15 @@
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for powering the other device only. -->
- <string name="usb_use_power_only">Power supply</string>
+ <string name="usb_use_power_only">Supply power</string>
<!-- Decription of one of the choices in a dialog (with title defined in usb_use) that lets the
user select what the USB connection for this device should be used for. This choice
- is for powering the other device only. -->
- <string name="usb_use_power_only_desc">Charge the other connected device</string>
+ is for powering the other device. -->
+ <string name="usb_use_power_only_desc">Supply power to the other connected device</string>
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring files via MTP. -->
- <string name="usb_use_file_transfers">File transfers</string>
+ <string name="usb_use_file_transfers">Transfer files</string>
<!-- Description of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring files via MTP. -->
@@ -6753,7 +6751,7 @@
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring photos via PTP. -->
- <string name="usb_use_photo_transfers">Photo transfer (PTP)</string>
+ <string name="usb_use_photo_transfers">Transfer photos (PTP)</string>
<!-- Description of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring photos via PTP. -->
@@ -6761,15 +6759,15 @@
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for entering MIDI mode. -->
- <string name="usb_use_MIDI">MIDI</string>
+ <string name="usb_use_MIDI">Use device as MIDI</string>
<!-- Description of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for entering MIDI mode. -->
- <string name="usb_use_MIDI_desc">Use device for MIDI input</string>
+ <string name="usb_use_MIDI_desc">Use this device as MIDI</string>
<!-- The title used in a dialog which lets the user select what the USB connection
for this device should be used for. Choices are usb_use_charging_only,
usb_use_file_transfer, use_use_photo_transfer, and usb_use_MIDI -->
- <string name="usb_use">Use USB for</string>
+ <string name="usb_use">Use USB to</string>
<!-- Settings item title for background check prefs [CHAR LIMIT=35] -->
<string name="background_check_pref">Background check</string>
diff --git a/res/xml/advanced_apps.xml b/res/xml/advanced_apps.xml
index 99da745..2673569 100644
--- a/res/xml/advanced_apps.xml
+++ b/res/xml/advanced_apps.xml
@@ -44,7 +44,8 @@
<com.android.settings.applications.DefaultHomePreference
android:key="default_home"
android:title="@string/home_app"
- android:summary="@string/no_default_home" />
+ android:summary="@string/no_default_home"
+ settings:keywords="@string/keywords_home" />
<com.android.settings.applications.DefaultBrowserPreference
android:key="default_browser"
diff --git a/src/com/android/settings/ChooseLockGeneric.java b/src/com/android/settings/ChooseLockGeneric.java
index abbb4c6..bb597a6 100644
--- a/src/com/android/settings/ChooseLockGeneric.java
+++ b/src/com/android/settings/ChooseLockGeneric.java
@@ -648,8 +648,13 @@
mFingerprintManager.setActiveUser(UserHandle.myUserId());
}
});
+ } else {
+ // The removal callback will call finish, once all fingerprints are removed.
+ // We need to wait for that to occur, otherwise, the UI will still show that
+ // fingerprints exist even though they are (about to) be removed depending on
+ // the race condition.
+ finish();
}
- finish();
}
@Override
diff --git a/src/com/android/settings/PreviewPagerAdapter.java b/src/com/android/settings/PreviewPagerAdapter.java
index 8032f92..a2e7b0e 100644
--- a/src/com/android/settings/PreviewPagerAdapter.java
+++ b/src/com/android/settings/PreviewPagerAdapter.java
@@ -25,6 +25,8 @@
import android.view.animation.DecelerateInterpolator;
import android.view.animation.Interpolator;
import android.widget.FrameLayout;
+import android.widget.LinearLayout;
+import android.widget.ScrollView;
/**
* A PagerAdapter used by PreviewSeekBarPreferenceFragment that for showing multiple preview screen
@@ -32,7 +34,7 @@
*/
public class PreviewPagerAdapter extends PagerAdapter {
- private TouchBlockingFrameLayout[] mPreviewFrames;
+ private FrameLayout[] mPreviewFrames;
/** Duration to use when cross-fading between previews. */
private static final long CROSS_FADE_DURATION_MS = 400;
@@ -45,11 +47,17 @@
public PreviewPagerAdapter(Context context, int[] previewSampleResIds,
Configuration[] configurations) {
- mPreviewFrames = new TouchBlockingFrameLayout[previewSampleResIds.length];
+ mPreviewFrames = new FrameLayout[previewSampleResIds.length];
+
+ // We need to get the copy of the original configuration before we call
+ // createConfigurationContext() as that call changes the current configuration for the App.
+ final Configuration origConfig = context.getResources().getConfiguration();
for (int i = 0; i < previewSampleResIds.length; ++i) {
- mPreviewFrames[i] = (TouchBlockingFrameLayout) LayoutInflater.from(context)
- .inflate(R.layout.preview_frame_container, null);
+ mPreviewFrames[i] = new FrameLayout(context);
+ mPreviewFrames[i].setLayoutParams(new LinearLayout.LayoutParams(
+ LinearLayout.LayoutParams.MATCH_PARENT,
+ LinearLayout.LayoutParams.MATCH_PARENT));
mPreviewFrames[i].setContentDescription(
context.getString(R.string.preview_page_indicator_content_description, i + 1,
previewSampleResIds.length));
@@ -65,10 +73,13 @@
mPreviewFrames[i], false);
sampleView.setAlpha(0);
sampleView.setVisibility(View.INVISIBLE);
-
mPreviewFrames[i].addView(sampleView);
}
}
+
+ // Create a context with the original App configuration since the last configuration passed
+ // to createConfigurationContext() becomes the configuration for any new views inflated.
+ context.createConfigurationContext(origConfig);
}
@Override
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 4aebe82..9c3a0d9 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -122,6 +122,7 @@
public static class ApnSettingsActivity extends SettingsActivity { /* empty */ }
public static class WifiCallingSettingsActivity extends SettingsActivity { /* empty */ }
public static class MemorySettingsActivity extends SettingsActivity { /* empty */ }
+ public static class AppMemoryUsageActivity extends SettingsActivity { /* empty */ }
public static class OverlaySettingsActivity extends SettingsActivity { /* empty */ }
public static class WriteSettingsActivity extends SettingsActivity { /* empty */ }
public static class AppDrawOverlaySettingsActivity extends SettingsActivity { /* empty */ }
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index 61ab2c3..f91f7bf 100755
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -134,7 +134,6 @@
private static final int DLG_FORCE_STOP = DLG_BASE + 1;
private static final int DLG_DISABLE = DLG_BASE + 2;
private static final int DLG_SPECIAL_DISABLE = DLG_BASE + 3;
- private static final int DLG_FACTORY_RESET = DLG_BASE + 4;
private static final String KEY_HEADER = "header_view";
private static final String KEY_NOTIFICATION = "notification_settings";
@@ -473,7 +472,7 @@
uninstallPkg(mAppEntry.info.packageName, true, false);
return true;
case UNINSTALL_UPDATES:
- showDialogInner(DLG_FACTORY_RESET, 0);
+ uninstallPkg(mAppEntry.info.packageName, false, false);
return true;
}
return false;
@@ -671,19 +670,6 @@
})
.setNegativeButton(R.string.dlg_cancel, null)
.create();
- case DLG_FACTORY_RESET:
- return new AlertDialog.Builder(getActivity())
- .setTitle(getActivity().getText(R.string.app_factory_reset_dlg_title))
- .setMessage(getActivity().getText(R.string.app_factory_reset_dlg_text))
- .setPositiveButton(R.string.dlg_ok, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // Clear user data here
- uninstallPkg(mAppEntry.info.packageName,
- false, false);
- }
- })
- .setNegativeButton(R.string.dlg_cancel, null)
- .create();
}
return null;
}
diff --git a/src/com/android/settings/applications/ManageApplications.java b/src/com/android/settings/applications/ManageApplications.java
index 34fed57..5a29cb7 100644
--- a/src/com/android/settings/applications/ManageApplications.java
+++ b/src/com/android/settings/applications/ManageApplications.java
@@ -106,6 +106,7 @@
private static final String EXTRA_SORT_ORDER = "sortOrder";
private static final String EXTRA_SHOW_SYSTEM = "showSystem";
private static final String EXTRA_HAS_ENTRIES = "hasEntries";
+ private static final String EXTRA_HAS_BRIDGE = "hasBridge";
// attributes used as keys when passing values to InstalledAppDetails activity
public static final String APP_CHG = "chg";
@@ -314,6 +315,8 @@
if (savedInstanceState != null) {
mApplications.mHasReceivedLoadEntries =
savedInstanceState.getBoolean(EXTRA_HAS_ENTRIES, false);
+ mApplications.mHasReceivedBridgeCallback =
+ savedInstanceState.getBoolean(EXTRA_HAS_BRIDGE, false);
}
mListView.setAdapter(mApplications);
mListView.setRecyclerListener(mApplications);
@@ -447,6 +450,7 @@
outState.putInt(EXTRA_SORT_ORDER, mSortOrder);
outState.putBoolean(EXTRA_SHOW_SYSTEM, mShowSystem);
outState.putBoolean(EXTRA_HAS_ENTRIES, mApplications.mHasReceivedLoadEntries);
+ outState.putBoolean(EXTRA_HAS_BRIDGE, mApplications.mHasReceivedBridgeCallback);
}
@Override
@@ -640,7 +644,7 @@
}
public void setHasDisabled(boolean hasDisabledApps) {
- if (mListType == LIST_TYPE_HIGH_POWER) {
+ if (mListType != LIST_TYPE_MAIN) {
return;
}
mFilterAdapter.setFilterEnabled(FILTER_APPS_ENABLED, hasDisabledApps);
@@ -822,7 +826,7 @@
if (mExtraInfoBridge != null) {
mExtraInfoBridge.resume();
}
- rebuild(true);
+ rebuild(false);
} else {
rebuild(sort);
}
@@ -855,7 +859,7 @@
public void rebuild(boolean eraseold) {
if (!mHasReceivedLoadEntries
- && (mExtraInfoBridge == null || mHasReceivedBridgeCallback)) {
+ || (mExtraInfoBridge != null && !mHasReceivedBridgeCallback)) {
// Don't rebuild the list until all the app entries are loaded.
return;
}
diff --git a/src/com/android/settings/inputmethod/InputMethodPreference.java b/src/com/android/settings/inputmethod/InputMethodPreference.java
index 3d6e7dc..f373749 100755
--- a/src/com/android/settings/inputmethod/InputMethodPreference.java
+++ b/src/com/android/settings/inputmethod/InputMethodPreference.java
@@ -55,7 +55,7 @@
OnPreferenceChangeListener {
private static final String TAG = InputMethodPreference.class.getSimpleName();
private static final String EMPTY_TEXT = "";
- private static final int SETTINGS_ICON_LAYOUT = R.layout.preference_settings_icon_widget;
+ private static final int NO_WIDGET = 0;
interface OnSavePreferenceListener {
/**
@@ -99,8 +99,8 @@
mIsAllowedByOrganization = isAllowedByOrganization;
mOnSaveListener = onSaveListener;
if (!isImeEnabler) {
- // Replace switch widget with settings icon.
- setWidgetLayoutResource(SETTINGS_ICON_LAYOUT);
+ // Remove switch widget.
+ setWidgetLayoutResource(NO_WIDGET);
}
// Disable on/off switch texts.
setSwitchTextOn(EMPTY_TEXT);
@@ -130,7 +130,7 @@
private boolean isImeEnabler() {
// If this {@link SwitchPreference} doesn't have a widget layout, we explicitly hide the
// switch widget at constructor.
- return getWidgetLayoutResource() != SETTINGS_ICON_LAYOUT;
+ return getWidgetLayoutResource() != NO_WIDGET;
}
@Override
diff --git a/src/com/android/settings/widget/LabeledSeekBar.java b/src/com/android/settings/widget/LabeledSeekBar.java
index 35a7d1b..00df09c 100644
--- a/src/com/android/settings/widget/LabeledSeekBar.java
+++ b/src/com/android/settings/widget/LabeledSeekBar.java
@@ -139,6 +139,9 @@
private ExploreByTouchHelper mAccessHelper;
+ private boolean mOnMeasureCalled;
+ private boolean mOnAttachedWindowCalled;
+
public LabeledSeekBar(Context context, AttributeSet attrs) {
this(context, attrs, com.android.internal.R.attr.seekBarStyle);
}
@@ -205,10 +208,17 @@
}
@Override
+ protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+ super.onMeasure(widthMeasureSpec, heightMeasureSpec);
+ mOnMeasureCalled = true;
+ tryInitAccessHelper();
+ }
+
+ @Override
protected void onAttachedToWindow() {
super.onAttachedToWindow();
- mAccessHelper = new LabeledSeekBarExploreByTouchHelper(this);
- ViewCompat.setAccessibilityDelegate(this, mAccessHelper);
+ mOnAttachedWindowCalled = true;
+ tryInitAccessHelper();
}
@Override
@@ -227,6 +237,18 @@
return super.dispatchHoverEvent(event);
}
+ /**
+ * Initialize accessibility delegation only when both onAttachedWindow and onMeasure
+ * has been called.
+ */
+ private void tryInitAccessHelper() {
+ if (mOnAttachedWindowCalled && mOnMeasureCalled) {
+ mAccessHelper = new LabeledSeekBarExploreByTouchHelper(this);
+ ViewCompat.setAccessibilityDelegate(this, mAccessHelper);
+ mOnAttachedWindowCalled = mOnMeasureCalled = false;
+ }
+ }
+
private void sendClickEventForAccessibility(int progress) {
if (mAccessHelper != null) {
mAccessHelper.invalidateRoot();
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 1c5ddc5..17cc3b6 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -175,7 +175,6 @@
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
- setAnimationAllowed(true);
addPreferencesFromResource(R.xml.wifi_settings);
mAddPreference = new Preference(getContext());
mAddPreference.setIcon(R.drawable.ic_menu_add_inset);