Merge "Hook up the automatic storage manager settings with the flag." into nyc-mr1-dev
diff --git a/res/drawable-hdpi/ic_menu_add_dark.png b/res/drawable-hdpi/ic_menu_add_dark.png
deleted file mode 100644
index 40a26b1..0000000
--- a/res/drawable-hdpi/ic_menu_add_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_menu_add_light.png b/res/drawable-hdpi/ic_menu_add_light.png
deleted file mode 100644
index 91b0354..0000000
--- a/res/drawable-hdpi/ic_menu_add_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_menu_add_white.png b/res/drawable-hdpi/ic_menu_add_white.png
deleted file mode 100644
index 7638c64..0000000
--- a/res/drawable-hdpi/ic_menu_add_white.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_sysbar_quicksettings.png b/res/drawable-hdpi/ic_sysbar_quicksettings.png
deleted file mode 100644
index a204936..0000000
--- a/res/drawable-hdpi/ic_sysbar_quicksettings.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_menu_add_dark.png b/res/drawable-mdpi/ic_menu_add_dark.png
deleted file mode 100644
index d7aa774..0000000
--- a/res/drawable-mdpi/ic_menu_add_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_menu_add_light.png b/res/drawable-mdpi/ic_menu_add_light.png
deleted file mode 100644
index 8b55810..0000000
--- a/res/drawable-mdpi/ic_menu_add_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_menu_add_white.png b/res/drawable-mdpi/ic_menu_add_white.png
deleted file mode 100644
index 40cdc82..0000000
--- a/res/drawable-mdpi/ic_menu_add_white.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_sysbar_quicksettings.png b/res/drawable-mdpi/ic_sysbar_quicksettings.png
deleted file mode 100644
index d266b39..0000000
--- a/res/drawable-mdpi/ic_sysbar_quicksettings.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_menu_add_dark.png b/res/drawable-xhdpi/ic_menu_add_dark.png
deleted file mode 100644
index 2f00b96..0000000
--- a/res/drawable-xhdpi/ic_menu_add_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_menu_add_light.png b/res/drawable-xhdpi/ic_menu_add_light.png
deleted file mode 100644
index 4109b2c..0000000
--- a/res/drawable-xhdpi/ic_menu_add_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_menu_add_white.png b/res/drawable-xhdpi/ic_menu_add_white.png
deleted file mode 100644
index 1d53989..0000000
--- a/res/drawable-xhdpi/ic_menu_add_white.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_sysbar_quicksettings.png b/res/drawable-xhdpi/ic_sysbar_quicksettings.png
deleted file mode 100644
index 46077be..0000000
--- a/res/drawable-xhdpi/ic_sysbar_quicksettings.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_menu_add_dark.png b/res/drawable-xxhdpi/ic_menu_add_dark.png
deleted file mode 100644
index 0ab6a40..0000000
--- a/res/drawable-xxhdpi/ic_menu_add_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_menu_add_light.png b/res/drawable-xxhdpi/ic_menu_add_light.png
deleted file mode 100644
index 767b808..0000000
--- a/res/drawable-xxhdpi/ic_menu_add_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_menu_add_white.png b/res/drawable-xxhdpi/ic_menu_add_white.png
deleted file mode 100644
index 16a8b8a..0000000
--- a/res/drawable-xxhdpi/ic_menu_add_white.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_sysbar_quicksettings.png b/res/drawable-xxhdpi/ic_sysbar_quicksettings.png
deleted file mode 100644
index ad964b4..0000000
--- a/res/drawable-xxhdpi/ic_sysbar_quicksettings.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxxhdpi/ic_menu_add_dark.png b/res/drawable-xxxhdpi/ic_menu_add_dark.png
deleted file mode 100644
index 01f53fe..0000000
--- a/res/drawable-xxxhdpi/ic_menu_add_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxxhdpi/ic_menu_add_white.png b/res/drawable-xxxhdpi/ic_menu_add_white.png
deleted file mode 100644
index 27a15f5..0000000
--- a/res/drawable-xxxhdpi/ic_menu_add_white.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxxhdpi/ic_sysbar_quicksettings.png b/res/drawable-xxxhdpi/ic_sysbar_quicksettings.png
deleted file mode 100644
index e89d484..0000000
--- a/res/drawable-xxxhdpi/ic_sysbar_quicksettings.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_menu_add.xml b/res/drawable/ic_menu_add.xml
index ed58072..3387f29 100644
--- a/res/drawable/ic_menu_add.xml
+++ b/res/drawable/ic_menu_add.xml
@@ -15,6 +15,13 @@
      limitations under the License.
 -->
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:src="@drawable/ic_menu_add_white"
-    android:tint="?android:attr/colorAccent" />
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0"
+    android:tint="?android:attr/colorAccent">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
+</vector>
diff --git a/res/drawable/ic_menu_add_white.xml b/res/drawable/ic_menu_add_white.xml
new file mode 100644
index 0000000..9a06d5c
--- /dev/null
+++ b/res/drawable/ic_menu_add_white.xml
@@ -0,0 +1,26 @@
+<?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.
+-->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+    <path
+        android:fillColor="#FFFFFFFF"
+        android:pathData="M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
+</vector>
diff --git a/res/drawable/ic_bt_config.xml b/res/drawable/ic_settings.xml
similarity index 99%
rename from res/drawable/ic_bt_config.xml
rename to res/drawable/ic_settings.xml
index 316c674..439c1a7 100644
--- a/res/drawable/ic_bt_config.xml
+++ b/res/drawable/ic_settings.xml
@@ -33,4 +33,4 @@
             1.17,-0.59 1.69,-0.98l2.49,1c0.23,0.09 0.49,0 0.61,-0.22l2,-3.46c0.12,-0.22 0.07,-0.49
             -0.12,-0.64l-2.11,-1.65zM12,15.5c-1.93,0 -3.5,-1.57
             -3.5,-3.5s1.57,-3.5 3.5,-3.5 3.5,1.57 3.5,3.5 -1.57,3.5 -3.5,3.5z"/>
-</vector>
\ No newline at end of file
+</vector>
diff --git a/res/layout/dream_info_row.xml b/res/layout/dream_info_row.xml
index 1a4dc8e..fd70ad5 100644
--- a/res/layout/dream_info_row.xml
+++ b/res/layout/dream_info_row.xml
@@ -89,6 +89,6 @@
         android:padding="8dip"
         android:clickable="true"
         android:focusable="true"
-        android:src="@drawable/ic_bt_config" />
+        android:src="@drawable/ic_settings" />
 
 </LinearLayout>
diff --git a/res/layout/preference_app_restrictions.xml b/res/layout/preference_app_restrictions.xml
index fe575a2..d571b5f 100644
--- a/res/layout/preference_app_restrictions.xml
+++ b/res/layout/preference_app_restrictions.xml
@@ -83,7 +83,7 @@
         android:layout_height="fill_parent"
         android:paddingStart="12dip"
         android:paddingEnd="12dp"
-        android:src="@drawable/ic_sysbar_quicksettings"
+        android:src="@drawable/ic_settings"
         android:contentDescription="@string/apps_with_restrictions_settings_button"
         android:layout_gravity="center"
         android:clickable="true"
diff --git a/res/layout/preference_bluetooth.xml b/res/layout/preference_bluetooth.xml
index 17ee70c..c339e67 100644
--- a/res/layout/preference_bluetooth.xml
+++ b/res/layout/preference_bluetooth.xml
@@ -27,7 +27,7 @@
         android:layout_gravity="center_vertical"
         android:padding="8dip"
         android:background="?android:attr/selectableItemBackground"
-        android:src="@drawable/ic_bt_config"
+        android:src="@drawable/ic_settings"
         android:contentDescription="@string/bluetooth_device_details" />
 
 </LinearLayout>
diff --git a/res/layout/preference_tts_engine.xml b/res/layout/preference_tts_engine.xml
index fe8e967..277fc23 100644
--- a/res/layout/preference_tts_engine.xml
+++ b/res/layout/preference_tts_engine.xml
@@ -41,7 +41,7 @@
         android:layout_height="match_parent"
         android:paddingStart="?android:attr/listPreferredItemPaddingStart"
         android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
-        android:src="@drawable/ic_sysbar_quicksettings"
+        android:src="@drawable/ic_settings"
         android:contentDescription="@string/tts_engine_settings_button"
         android:layout_centerVertical="true"
         android:clickable="true"
diff --git a/res/layout/preference_widget_settings.xml b/res/layout/preference_widget_settings.xml
index 6d9ac2fe..dfeca1a 100644
--- a/res/layout/preference_widget_settings.xml
+++ b/res/layout/preference_widget_settings.xml
@@ -27,7 +27,7 @@
         android:layout_gravity="center_vertical"
         android:padding="8dip"
         android:background="?android:attr/selectableItemBackground"
-        android:src="@drawable/ic_sysbar_quicksettings"
+        android:src="@drawable/ic_settings"
         android:contentDescription="@string/settings_button" />
 
 </LinearLayout>
diff --git a/res/layout/restricted_preference_user_delete_widget.xml b/res/layout/restricted_preference_user_delete_widget.xml
index 7ffb0e4..7fd5d88 100644
--- a/res/layout/restricted_preference_user_delete_widget.xml
+++ b/res/layout/restricted_preference_user_delete_widget.xml
@@ -35,7 +35,7 @@
             android:layout_height="fill_parent"
             android:paddingStart="16dip"
             android:paddingEnd="16dip"
-            android:src="@drawable/ic_sysbar_quicksettings"
+            android:src="@drawable/ic_settings"
             android:contentDescription="@string/settings_label"
             android:layout_gravity="center"
             android:background="?android:attr/selectableItemBackground" />
diff --git a/res/layout/wifi_display_preference.xml b/res/layout/wifi_display_preference.xml
index d8c4729..99cb89c 100644
--- a/res/layout/wifi_display_preference.xml
+++ b/res/layout/wifi_display_preference.xml
@@ -37,7 +37,7 @@
         android:layout_gravity="center_vertical"
         android:padding="8dip"
         android:background="?android:attr/selectableItemBackground"
-        android:src="@drawable/ic_bt_config"
+        android:src="@drawable/ic_settings"
         android:contentDescription="@string/wifi_display_details" />
 
 </LinearLayout>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index ab04c24..a194cc1 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -78,7 +78,6 @@
     <color name="sim_noitification">@*android:color/material_deep_teal_500</color>
 
     <color name="warning">#ff5621</color>
-    <color name="confirm_device_credential_dark_background">#263238</color>
     <color name="confirm_device_credential_transparent_black">#60000000</color>
     <color name="fab_ripple">#1fffffff</color><!-- 12% white -->
     <color name="fab_shape">?android:attr/colorAccent</color>
@@ -120,7 +119,6 @@
 
     <color name="seek_bar_preference_preview_text">#fff</color>
 
-    <color name="importance_slider_color">@*android:color/material_deep_teal_500</color>
     <color name="importance_disabled_slider_color">@*android:color/material_grey_300</color>
     <color name="importance_secondary_slider_color">#858383</color>
 
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 216b090..2d78d0b 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -18,7 +18,6 @@
     <attr name="fingerprint_layout_theme" format="reference" />
     <attr name="fingerprint_progress_bar_size" format="reference|dimension" />
     <attr name="fingerprint_ring_radius" format="reference|dimension" />
-    <attr name="ic_menu_add" format="reference" />
     <attr name="ic_menu_moreoverflow" format="reference" />
     <attr name="ic_wps" format="reference" />
     <attr name="setup_divider_color" format="reference" />
@@ -41,7 +40,6 @@
         <item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
         <item name="fingerprint_progress_bar_size">@dimen/setup_fingerprint_progress_bar_size</item>
         <item name="fingerprint_ring_radius">@dimen/setup_fingerprint_ring_radius</item>
-        <item name="ic_menu_add">@drawable/ic_menu_add_dark</item>
         <item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
         <item name="ic_wps">@drawable/ic_wps_dark</item>
         <item name="setup_divider_color">@color/setup_divider_color_dark</item>
@@ -66,7 +64,6 @@
         <item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
         <item name="fingerprint_progress_bar_size">@dimen/setup_fingerprint_progress_bar_size</item>
         <item name="fingerprint_ring_radius">@dimen/setup_fingerprint_ring_radius</item>
-        <item name="ic_menu_add">@drawable/ic_menu_add_light</item>
         <item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
         <item name="ic_wps">@drawable/ic_wps_light</item>
         <item name="setup_divider_color">@color/setup_divider_color_light</item>
@@ -149,7 +146,6 @@
         <item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
         <item name="fingerprint_progress_bar_size">@dimen/fingerprint_progress_bar_size</item>
         <item name="fingerprint_ring_radius">@dimen/fingerprint_ring_radius</item>
-        <item name="ic_menu_add">@drawable/ic_menu_add_dark</item>
         <item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_holo_dark</item>
         <item name="ic_wps">@drawable/ic_wps_light</item>
         <item name="wifi_signal">@drawable/wifi_signal</item>
@@ -269,10 +265,10 @@
 
     <style name="Theme.ConfirmDeviceCredentialsDark" parent="@android:style/Theme.Material">
         <item name="android:colorPrimary">@color/primary_color</item>
-        <item name="android:colorPrimaryDark">@color/primary_dark_color</item>
+        <item name="android:colorAccent">@color/accent_color_lighter</item>
         <item name="android:windowActionBar">false</item>
         <item name="android:windowNoTitle">true</item>
-        <item name="android:windowBackground">@color/confirm_device_credential_dark_background</item>
+        <item name="android:windowBackground">?android:attr/colorPrimary</item>
 
         <item name="confirmDeviceCredentialsSideMargin">32dp</item>
         <item name="confirmDeviceCredentialsTopMargin">32dp</item>
diff --git a/res/xml/user_settings.xml b/res/xml/user_settings.xml
index cd0103d..1375ed4 100644
--- a/res/xml/user_settings.xml
+++ b/res/xml/user_settings.xml
@@ -26,7 +26,7 @@
     <com.android.settings.DimmableIconPreference
             android:key="user_add"
             android:title="@string/user_add_user_or_profile_menu"
-            android:icon="@drawable/ic_menu_add_dark" />
+            android:icon="@drawable/ic_menu_add" />
 
     <PreferenceCategory
             android:key="lock_screen_settings"
diff --git a/src/com/android/settings/UserDictionarySettings.java b/src/com/android/settings/UserDictionarySettings.java
index 19d34ef..bdeab92 100644
--- a/src/com/android/settings/UserDictionarySettings.java
+++ b/src/com/android/settings/UserDictionarySettings.java
@@ -160,7 +160,7 @@
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
         MenuItem actionItem =
                 menu.add(0, OPTIONS_MENU_ADD, 0, R.string.user_dict_settings_add_menu_title)
-                .setIcon(R.drawable.ic_menu_add_dark);
+                .setIcon(R.drawable.ic_menu_add_white);
         actionItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM |
                 MenuItem.SHOW_AS_ACTION_WITH_TEXT);
     }
diff --git a/src/com/android/settings/accounts/AccountSettings.java b/src/com/android/settings/accounts/AccountSettings.java
index 22c9de7..eb74034 100644
--- a/src/com/android/settings/accounts/AccountSettings.java
+++ b/src/com/android/settings/accounts/AccountSettings.java
@@ -350,7 +350,7 @@
     private Preference newManagedProfileSettings() {
         Preference preference = new Preference(getPrefContext());
         preference.setTitle(R.string.managed_profile_settings_title);
-        preference.setIcon(R.drawable.ic_sysbar_quicksettings);
+        preference.setIcon(R.drawable.ic_settings);
         preference.setOnPreferenceClickListener(this);
         preference.setOrder(ORDER_NEXT_TO_LAST);
         return preference;
diff --git a/src/com/android/settings/dashboard/conditional/ConditionManager.java b/src/com/android/settings/dashboard/conditional/ConditionManager.java
index 128ac27..f38bb2a 100644
--- a/src/com/android/settings/dashboard/conditional/ConditionManager.java
+++ b/src/com/android/settings/dashboard/conditional/ConditionManager.java
@@ -56,7 +56,7 @@
 
     private ConditionManager(Context context) {
         mContext = context;
-        mConditions = new ArrayList<Condition>();
+        mConditions = new ArrayList<>();
         new ConditionLoader().execute();
     }
 
@@ -67,11 +67,11 @@
         }
     }
 
-    private void readFromXml() {
-        if (DEBUG) Log.d(TAG, "Reading from " + mXmlFile.toString());
+    private void readFromXml(File xmlFile, ArrayList<Condition> conditions) {
+        if (DEBUG) Log.d(TAG, "Reading from " + xmlFile.toString());
         try {
             XmlPullParser parser = Xml.newPullParser();
-            FileReader in = new FileReader(mXmlFile);
+            FileReader in = new FileReader(xmlFile);
             parser.setInput(in);
             int state = parser.getEventType();
 
@@ -86,7 +86,7 @@
                     PersistableBundle bundle = PersistableBundle.restoreFromXml(parser);
                     if (DEBUG) Log.d(TAG, "Reading " + clz + " -- " + bundle);
                     condition.restoreState(bundle);
-                    mConditions.add(condition);
+                    conditions.add(condition);
                     while (parser.getDepth() > depth) {
                         parser.next();
                     }
@@ -129,21 +129,21 @@
         }
     }
 
-    private void addMissingConditions() {
-        addIfMissing(AirplaneModeCondition.class);
-        addIfMissing(HotspotCondition.class);
-        addIfMissing(DndCondition.class);
-        addIfMissing(BatterySaverCondition.class);
-        addIfMissing(CellularDataCondition.class);
-        addIfMissing(BackgroundDataCondition.class);
-        addIfMissing(WorkModeCondition.class);
-        Collections.sort(mConditions, CONDITION_COMPARATOR);
+    private void addMissingConditions(ArrayList<Condition> conditions) {
+        addIfMissing(AirplaneModeCondition.class, conditions);
+        addIfMissing(HotspotCondition.class, conditions);
+        addIfMissing(DndCondition.class, conditions);
+        addIfMissing(BatterySaverCondition.class, conditions);
+        addIfMissing(CellularDataCondition.class, conditions);
+        addIfMissing(BackgroundDataCondition.class, conditions);
+        addIfMissing(WorkModeCondition.class, conditions);
+        Collections.sort(conditions, CONDITION_COMPARATOR);
     }
 
-    private void addIfMissing(Class<? extends Condition> clz) {
-        if (getCondition(clz) == null) {
+    private void addIfMissing(Class<? extends Condition> clz, ArrayList<Condition> conditions) {
+        if (getCondition(clz, conditions) == null) {
             if (DEBUG) Log.d(TAG, "Adding missing " + clz.getName());
-            mConditions.add(createCondition(clz));
+            conditions.add(createCondition(clz));
         }
     }
 
@@ -171,10 +171,14 @@
     }
 
     public <T extends Condition> T getCondition(Class<T> clz) {
-        final int N = mConditions.size();
+        return getCondition(clz, mConditions);
+    }
+
+    private <T extends Condition> T getCondition(Class<T> clz, List<Condition> conditions) {
+        final int N = conditions.size();
         for (int i = 0; i < N; i++) {
-            if (clz.equals(mConditions.get(i).getClass())) {
-                return (T) mConditions.get(i);
+            if (clz.equals(conditions.get(i).getClass())) {
+                return (T) conditions.get(i);
             }
         }
         return null;
@@ -213,19 +217,22 @@
         mListeners.remove(listener);
     }
 
-    private class ConditionLoader extends AsyncTask<Void, Void, Void> {
+    private class ConditionLoader extends AsyncTask<Void, Void, ArrayList<Condition>> {
         @Override
-        protected Void doInBackground(Void... params) {
+        protected ArrayList<Condition> doInBackground(Void... params) {
+            ArrayList<Condition> conditions = new ArrayList<>();
             mXmlFile = new File(mContext.getFilesDir(), FILE_NAME);
             if (mXmlFile.exists()) {
-                readFromXml();
+                readFromXml(mXmlFile, conditions);
             }
-            addMissingConditions();
-            return null;
+            addMissingConditions(conditions);
+            return conditions;
         }
 
         @Override
-        protected void onPostExecute(Void aVoid) {
+        protected void onPostExecute(ArrayList<Condition> conditions) {
+            mConditions.clear();
+            mConditions.addAll(conditions);
             final int N = mListeners.size();
             for (int i = 0; i < N; i++) {
                 mListeners.get(i).onConditionsChanged();
diff --git a/src/com/android/settings/notification/ImportanceSeekBarPreference.java b/src/com/android/settings/notification/ImportanceSeekBarPreference.java
index 4da5dbf..fe97448 100644
--- a/src/com/android/settings/notification/ImportanceSeekBarPreference.java
+++ b/src/com/android/settings/notification/ImportanceSeekBarPreference.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.notification;
 
+import android.content.res.Resources;
+import android.util.TypedValue;
 import com.android.settings.R;
 import com.android.settings.SeekBarPreference;
 
@@ -52,8 +54,10 @@
             int defStyleRes) {
         super(context, attrs, defStyleAttr, defStyleRes);
         setLayoutResource(R.layout.preference_importance_slider);
-        mActiveSliderTint = ColorStateList.valueOf(
-                context.getColor(R.color.importance_slider_color));
+        Resources.Theme theme = context.getTheme();
+        TypedValue typedValue = new TypedValue();
+        theme.resolveAttribute(android.R.attr.colorAccent, typedValue, true);
+        mActiveSliderTint = ColorStateList.valueOf(context.getColor(typedValue.resourceId));
         mInactiveSliderTint = ColorStateList.valueOf(
                 context.getColor(R.color.importance_disabled_slider_color));
         mHandler = new Handler();
diff --git a/src/com/android/settings/search/DynamicIndexableContentMonitor.java b/src/com/android/settings/search/DynamicIndexableContentMonitor.java
index 6753a76..50d47fb 100644
--- a/src/com/android/settings/search/DynamicIndexableContentMonitor.java
+++ b/src/com/android/settings/search/DynamicIndexableContentMonitor.java
@@ -34,10 +34,12 @@
 import android.os.Looper;
 import android.os.Message;
 import android.os.UserHandle;
+import android.os.UserManager;
 import android.print.PrintManager;
 import android.print.PrintServicesLoader;
 import android.printservice.PrintServiceInfo;
 import android.provider.UserDictionary;
+import android.util.Log;
 import android.view.accessibility.AccessibilityManager;
 import android.view.inputmethod.InputMethodInfo;
 import android.view.inputmethod.InputMethodManager;
@@ -53,6 +55,7 @@
 public final class DynamicIndexableContentMonitor extends PackageMonitor implements
         InputManager.InputDeviceListener,
         LoaderManager.LoaderCallbacks<List<PrintServiceInfo>> {
+    private static final String TAG = "DynamicIndexableContentMonitor";
 
     private static final long DELAY_PROCESS_PACKAGE_CHANGE = 2000;
 
@@ -84,6 +87,7 @@
 
     private Context mContext;
     private boolean mHasFeatureIme;
+    private boolean mRegistered;
 
     private static Intent getAccessibilityServiceIntent(String packageName) {
         final Intent intent = new Intent(AccessibilityService.SERVICE_INTERFACE);
@@ -100,6 +104,14 @@
     public void register(Activity activity, int loaderId) {
         mContext = activity;
 
+        if (!mContext.getSystemService(UserManager.class).isUserUnlocked()) {
+            Log.w(TAG, "Skipping content monitoring because user is locked");
+            mRegistered = false;
+            return;
+        } else {
+            mRegistered = true;
+        }
+
         boolean hasFeaturePrinting = mContext.getPackageManager().hasSystemFeature(
                 PackageManager.FEATURE_PRINTING);
         mHasFeatureIme = mContext.getPackageManager().hasSystemFeature(
@@ -151,7 +163,10 @@
         register(activity, Looper.getMainLooper(), UserHandle.CURRENT, false);
     }
 
+    @Override
     public void unregister() {
+        if (!mRegistered) return;
+
         super.unregister();
 
         InputManager inputManager = (InputManager) mContext.getSystemService(