Merge "Settings: Remove zenswitch from DND settings page." into mnc-dev
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 6c04af2..dc01c24 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -191,6 +191,8 @@
                 android:value="com.android.settings.wifi.WifiSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wifi_settings" />
+            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+                android:value="true" />
         </activity>
 
         <!-- Keep compatibility with old shortcuts. -->
@@ -217,6 +219,8 @@
                 <action android:name="android.intent.action.MAIN" />
                 <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
+            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+                android:value="true" />
         </activity>
 
         <activity android:name=".wifi.WifiSetupActivity"
@@ -230,6 +234,8 @@
                 <action android:name="com.android.net.wifi.SETUP_WIFI_NETWORK" />
                 <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
+            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+                android:value="true" />
         </activity>
 
         <activity android:name="Settings$AdvancedWifiSettingsActivity"
@@ -250,6 +256,8 @@
                 android:value="com.android.settings.wifi.AdvancedWifiSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wifi_settings" />
+            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+                android:value="true" />
         </activity>
 
         <activity android:name="Settings$SavedAccessPointsSettingsActivity"
@@ -269,6 +277,8 @@
                 android:value="com.android.settings.wifi.SavedAccessPointsSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wifi_settings" />
+            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+                android:value="true" />
         </activity>
 
         <activity android:name=".wifi.WifiInfo"
@@ -322,6 +332,8 @@
                 <action android:name="android.net.conn.PROMPT_UNVALIDATED" />
                 <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
+            <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+                android:value="true" />
         </activity>
 
         <!-- Suspect activity alias: targetActivity is Settings itself, does not define a name. Remove? -->
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 7e52036..52beac2 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -4224,7 +4224,7 @@
     <!-- [CHAR LIMIT=NONE] Label for process stats, text for stats type -->
     <string name="process_stats_type_cached">Cached</string>
     <!-- [CHAR LIMIT=NONE] Label for process stats, duration of time the stats are over -->
-    <string name="process_stats_memory_status">Memory is 
+    <string name="process_stats_memory_status">Memory is
         <xliff:g id="memstate">%1$s</xliff:g></string>
     <!-- [CHAR LIMIT=NONE] Label OS "process" app -->
     <string name="process_stats_os_label">Android OS</string>
@@ -5856,7 +5856,7 @@
     <string name="keywords_keyboard_and_ime">text correction correct sound vibrate auto language gesture suggest suggestion theme offensive word type emoji international</string>
     <string name="keywords_reset_apps">reset preferences default</string>
     <string name="keywords_emergency_app">emergency ice app default</string>
-    <string name="keywords_default_dialer_app">dialer default</string>
+    <string name="keywords_default_phone_app">phone dialer default</string>
     <string name="keywords_all_apps">apps download applications system</string>
     <string name="keywords_app_permissions">apps permissions security</string>
     <string name="keywords_default_apps">apps default</string>
@@ -6104,51 +6104,36 @@
     <string name="zen_event_rule_enabled_toast">Automatic rule set to turn on Do Not Disturb during specified events</string>
 
     <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule calendar option title -->
-    <string name="zen_mode_event_rule_calendar">Calendar</string>
+    <string name="zen_mode_event_rule_calendar">During events for</string>
+
+    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule summary fragment: During events for -->
+    <string name="zen_mode_event_rule_summary_calendar_template">During events for <xliff:g id="calendar" example="any calendar">%1$s</xliff:g></string>
 
     <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule summary fragment: any calendar -->
-    <string name="zen_mode_event_rule_summary_any_calendar">Any calendar</string>
+    <string name="zen_mode_event_rule_summary_any_calendar">any calendar</string>
 
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule summary fragment: any reply -->
-    <string name="zen_mode_event_rule_summary_any_reply">Any reply</string>
+    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule summary fragment: Where reply is -->
+    <string name="zen_mode_event_rule_summary_reply_template">Where reply is <xliff:g id="reply" example="Yes, Maybe, or Not replied">%1$s</xliff:g></string>
 
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule summary fragment: any reply except no -->
-    <string name="zen_mode_event_rule_summary_any_reply_except_no">Any reply except no</string>
-
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule summary fragment: replied yes -->
-    <string name="zen_mode_event_rule_summary_replied_yes">Replied yes</string>
-
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule calendar option value for any calendar-->
-    <string name="zen_mode_event_rule_calendar_any">Any</string>
-
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule attendance option title -->
-    <string name="zen_mode_event_rule_attendance">Attendance</string>
-
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule attendance option value: required or optional -->
-    <string name="zen_mode_event_rule_attendance_required_optional">Required or optional</string>
-
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule attendance option value: required -->
-    <string name="zen_mode_event_rule_attendance_required">Required</string>
-
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule attendance option value: optional -->
-    <string name="zen_mode_event_rule_attendance_optional">Optional</string>
+    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule calendar option value for any calendar -->
+    <string name="zen_mode_event_rule_calendar_any">Any calendar</string>
 
     <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule reply option title -->
-    <string name="zen_mode_event_rule_reply">Reply</string>
+    <string name="zen_mode_event_rule_reply">Where reply is</string>
 
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule reply option value: Any -->
-    <string name="zen_mode_event_rule_reply_any">Any</string>
+    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule reply option value: Yes, Maybe, or Not replied -->
+    <string name="zen_mode_event_rule_reply_any_except_no">Yes, Maybe, or Not replied</string>
 
-    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule reply option value: Any except no-->
-    <string name="zen_mode_event_rule_reply_any_except_no">Any except no</string>
+    <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule reply option value: Yes or Maybe -->
+    <string name="zen_mode_event_rule_reply_yes_or_maybe">Yes or Maybe</string>
 
     <!-- [CHAR LIMIT=40] Zen mode settings: Event-based rule reply option value: Yes -->
     <string name="zen_mode_event_rule_reply_yes">Yes</string>
 
-    <!-- [CHAR LIMIT=40] Zen mode settings: Text to display if rule isn't found  -->
+    <!-- [CHAR LIMIT=40] Zen mode settings: Text to display if rule isn't found -->
     <string name="zen_mode_rule_not_found_text">Rule not found.</string>
 
-    <!-- [CHAR LIMIT=40] Zen mode settings: Rule summary template (when enabled)  -->
+    <!-- [CHAR LIMIT=40] Zen mode settings: Rule summary template (when enabled) -->
     <string name="zen_mode_rule_summary_combination"><xliff:g id="description" example="Sun - Thu">%1$s</xliff:g> / <xliff:g id="mode" example="Alarms only">%2$s</xliff:g></string>
 
     <!-- [CHAR LIMIT=40] Zen mode settings: Time-based rule days option title -->
@@ -6585,8 +6570,8 @@
     <!-- Summary for No Default Browser settings [CHAR LIMIT=45] -->
     <string name="default_browser_title_none">No default Browser</string>
 
-    <!--  Title for Default Dialer settings [CHAR LIMIT=30] -->
-    <string name="default_dialer_title">Dialer app</string>
+    <!--  Title for Default Phone app settings [CHAR LIMIT=30] -->
+    <string name="default_phone_title">Phone app</string>
 
     <!-- Label of default app for current setting [CHAR LIMIT=40] -->
     <string name="default_app">(Default)</string>
diff --git a/res/xml/default_apps.xml b/res/xml/default_apps.xml
index 301c248..7fc32fd 100644
--- a/res/xml/default_apps.xml
+++ b/res/xml/default_apps.xml
@@ -25,10 +25,10 @@
             android:summary="@string/default_browser_title_none"
             />
 
-    <com.android.settings.applications.DefaultDialerPreference
-            android:key="default_dialer"
-            android:title="@string/default_dialer_title"
-            settings:keywords="@string/keywords_default_dialer_app"
+    <com.android.settings.applications.DefaultPhonePreference
+            android:key="default_phone_app"
+            android:title="@string/default_phone_title"
+            settings:keywords="@string/keywords_default_phone_app"
             />
 
     <com.android.settings.applications.DefaultEmergencyPreference
diff --git a/res/xml/zen_mode_event_rule_settings.xml b/res/xml/zen_mode_event_rule_settings.xml
index acad96c..2519fc1 100644
--- a/res/xml/zen_mode_event_rule_settings.xml
+++ b/res/xml/zen_mode_event_rule_settings.xml
@@ -24,19 +24,13 @@
         android:title="@string/zen_mode_rule_name"
         android:persistent="false" />
 
-    <!-- Calendar -->
+    <!-- During events for -->
     <com.android.settings.DropDownPreference
         android:key="calendar"
         android:title="@string/zen_mode_event_rule_calendar"
         android:persistent="false" />
 
-    <!-- Attendance -->
-    <com.android.settings.DropDownPreference
-        android:key="attendance"
-        android:title="@string/zen_mode_event_rule_attendance"
-        android:persistent="false" />
-
-    <!-- Reply -->
+    <!-- Where reply is -->
     <com.android.settings.DropDownPreference
         android:key="reply"
         android:title="@string/zen_mode_event_rule_reply"
diff --git a/src/com/android/settings/applications/DefaultDialerPreference.java b/src/com/android/settings/applications/DefaultPhonePreference.java
similarity index 94%
rename from src/com/android/settings/applications/DefaultDialerPreference.java
rename to src/com/android/settings/applications/DefaultPhonePreference.java
index 705e4ef1..657391f 100644
--- a/src/com/android/settings/applications/DefaultDialerPreference.java
+++ b/src/com/android/settings/applications/DefaultPhonePreference.java
@@ -28,9 +28,9 @@
 import java.util.List;
 import java.util.Objects;
 
-public class DefaultDialerPreference extends AppListPreference {
+public class DefaultPhonePreference extends AppListPreference {
 
-    public DefaultDialerPreference(Context context, AttributeSet attrs) {
+    public DefaultPhonePreference(Context context, AttributeSet attrs) {
         super(context, attrs);
 
         if (isAvailable(context)) {
diff --git a/src/com/android/settings/applications/ManageDefaultApps.java b/src/com/android/settings/applications/ManageDefaultApps.java
index 751ddca..4437654 100644
--- a/src/com/android/settings/applications/ManageDefaultApps.java
+++ b/src/com/android/settings/applications/ManageDefaultApps.java
@@ -49,7 +49,7 @@
     private static final String TAG = ManageDefaultApps.class.getSimpleName();
 
     private static final String KEY_DEFAULT_BROWSER = "default_browser";
-    private static final String KEY_DEFAULT_DIALER = "default_dialer";
+    private static final String KEY_DEFAULT_PHONE_APP = "default_phone_app";
     private static final String KEY_DEFAULT_EMERGENCY_APP = "default_emergency_app";
     private static final String KEY_SMS_APPLICATION = "default_sms_app";
 
@@ -97,8 +97,8 @@
             removePreference(KEY_SMS_APPLICATION);
         }
 
-        if (!DefaultDialerPreference.isAvailable(getActivity())) {
-            removePreference(KEY_DEFAULT_DIALER);
+        if (!DefaultPhonePreference.isAvailable(getActivity())) {
+            removePreference(KEY_DEFAULT_PHONE_APP);
         }
 
         if (!DefaultEmergencyPreference.isAvailable(getActivity())) {
diff --git a/src/com/android/settings/notification/ZenModeAutomationSettings.java b/src/com/android/settings/notification/ZenModeAutomationSettings.java
index b8fbb92..5b62844 100644
--- a/src/com/android/settings/notification/ZenModeAutomationSettings.java
+++ b/src/com/android/settings/notification/ZenModeAutomationSettings.java
@@ -203,11 +203,11 @@
     }
 
     private String computeEventRuleSummary(EventInfo event) {
-        final String calendar = computeCalendarName(event);
-        final String attendance = getString(computeAttendance(event));
-        final String reply = getString(computeReply(event));
-        return getString(R.string.zen_mode_rule_summary_combination,
-                getString(R.string.zen_mode_rule_summary_combination, calendar, attendance), reply);
+        final String calendar = getString(R.string.zen_mode_event_rule_summary_calendar_template,
+                computeCalendarName(event));
+        final String reply = getString(R.string.zen_mode_event_rule_summary_reply_template,
+                getString(computeReply(event)));
+        return getString(R.string.zen_mode_rule_summary_combination, calendar, reply);
     }
 
     private String computeCalendarName(EventInfo event) {
@@ -223,25 +223,16 @@
         return getString(R.string.zen_mode_event_rule_summary_any_calendar);
     }
 
-    private int computeAttendance(EventInfo event) {
-        switch (event.attendance) {
-            case EventInfo.ATTENDANCE_REQUIRED:
-                return R.string.zen_mode_event_rule_attendance_required;
-            case EventInfo.ATTENDANCE_OPTIONAL:
-                return R.string.zen_mode_event_rule_attendance_optional;
-            default:
-                return R.string.zen_mode_event_rule_attendance_required_optional;
-        }
-    }
-
     private int computeReply(EventInfo event) {
         switch (event.reply) {
             case EventInfo.REPLY_ANY_EXCEPT_NO:
-                return R.string.zen_mode_event_rule_summary_any_reply_except_no;
+                return R.string.zen_mode_event_rule_reply_any_except_no;
             case EventInfo.REPLY_YES:
-                return R.string.zen_mode_event_rule_summary_replied_yes;
+                return R.string.zen_mode_event_rule_reply_yes;
+            case EventInfo.REPLY_YES_OR_MAYBE:
+                return R.string.zen_mode_event_rule_reply_yes_or_maybe;
             default:
-                return R.string.zen_mode_event_rule_summary_any_reply;
+                throw new IllegalArgumentException("Bad reply: " + event.reply);
         }
     }
 
diff --git a/src/com/android/settings/notification/ZenModeEventRuleSettings.java b/src/com/android/settings/notification/ZenModeEventRuleSettings.java
index 38581b6..29738b3 100644
--- a/src/com/android/settings/notification/ZenModeEventRuleSettings.java
+++ b/src/com/android/settings/notification/ZenModeEventRuleSettings.java
@@ -31,13 +31,11 @@
 
 public class ZenModeEventRuleSettings extends ZenModeRuleSettingsBase {
     private static final String KEY_CALENDAR = "calendar";
-    private static final String KEY_ATTENDANCE = "attendance";
     private static final String KEY_REPLY = "reply";
 
     public static final String ACTION = Settings.ACTION_ZEN_MODE_EVENT_RULE_SETTINGS;
 
     private DropDownPreference mCalendar;
-    private DropDownPreference mAttendance;
     private DropDownPreference mReply;
 
     private EventInfo mEvent;
@@ -92,29 +90,11 @@
             }
         });
 
-        mAttendance = (DropDownPreference) root.findPreference(KEY_ATTENDANCE);
-        mAttendance.addItem(R.string.zen_mode_event_rule_attendance_required_optional,
-                EventInfo.ATTENDANCE_REQUIRED_OR_OPTIONAL);
-        mAttendance.addItem(R.string.zen_mode_event_rule_attendance_required,
-                EventInfo.ATTENDANCE_REQUIRED);
-        mAttendance.addItem(R.string.zen_mode_event_rule_attendance_optional,
-                EventInfo.ATTENDANCE_OPTIONAL);
-        mAttendance.setCallback(new DropDownPreference.Callback() {
-            @Override
-            public boolean onItemSelected(int pos, Object value) {
-                final int attendance = (Integer) value;
-                if (attendance == mEvent.attendance) return true;
-                mEvent.attendance = attendance;
-                updateRule(ZenModeConfig.toEventConditionId(mEvent));
-                return true;
-            }
-        });
-
         mReply = (DropDownPreference) root.findPreference(KEY_REPLY);
-        mReply.addItem(R.string.zen_mode_event_rule_reply_any,
-                EventInfo.REPLY_ANY);
         mReply.addItem(R.string.zen_mode_event_rule_reply_any_except_no,
                 EventInfo.REPLY_ANY_EXCEPT_NO);
+        mReply.addItem(R.string.zen_mode_event_rule_reply_yes_or_maybe,
+                EventInfo.REPLY_YES_OR_MAYBE);
         mReply.addItem(R.string.zen_mode_event_rule_reply_yes,
                 EventInfo.REPLY_YES);
         mReply.setCallback(new DropDownPreference.Callback() {
@@ -135,7 +115,6 @@
     @Override
     protected void updateControlsInternal() {
         mCalendar.setSelectedValue(mEvent.calendar);
-        mAttendance.setSelectedValue(mEvent.attendance);
         mReply.setSelectedValue(mEvent.reply);
     }
 
diff --git a/src/com/android/settings/notification/ZenRuleNameDialog.java b/src/com/android/settings/notification/ZenRuleNameDialog.java
index cd5c766..847007c 100644
--- a/src/com/android/settings/notification/ZenRuleNameDialog.java
+++ b/src/com/android/settings/notification/ZenRuleNameDialog.java
@@ -166,7 +166,6 @@
     private static RuleInfo defaultNewEvent() {
         final EventInfo event = new EventInfo();
         event.calendar = 0; // any
-        event.attendance = EventInfo.ATTENDANCE_REQUIRED_OR_OPTIONAL;
         event.reply = EventInfo.REPLY_ANY_EXCEPT_NO;
         final RuleInfo rt = new RuleInfo();
         rt.settingsAction = ZenModeEventRuleSettings.ACTION;