Add page for choosing calendar & reply for event modes.

Also adds the link to set trigger behavior to the main mode page (only for calendar so far), and the switch preference to enable/disable automatic rules (for all but manual DND mode).

Removes the "escape hatch" to allow manual mode to also use the new modes pages.

Ported from ZenModeEventRuleSettings.

Flag: android.app.modes_ui
Bug: 332730302
Test: ZenModeSetCalendarPreferenceControllerTest, ZenModeSetTriggerLinkPreferenceControllerTest, manual
Change-Id: Ia7a716c66663a21494a6c05711250a5bda87ca8c
This commit is contained in:
Yuri Lin
2024-05-22 11:08:13 -04:00
parent e968a66489
commit f29f44296a
11 changed files with 808 additions and 17 deletions

View File

@@ -16,6 +16,7 @@
-->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:title="@string/zen_modes_list_title" >
<com.android.settingslib.widget.LayoutPreference
@@ -43,6 +44,14 @@
android:title="@string/zen_category_exceptions" />
</PreferenceCategory>
<!-- automatic trigger section; preference changes programmatically depending on type -->
<PreferenceCategory
android:key="zen_automatic_trigger_category"
android:title="@string/zen_mode_automatic_trigger_title">
<com.android.settingslib.PrimarySwitchPreference
android:key="zen_automatic_trigger_settings" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/mode_device_effects_title"
android:key="modes_additional_actions">

View File

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2024 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"
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="zen_mode_set_calendar"
settings:searchable="false"
android:title="@string/zen_mode_set_calendar_title">
<PreferenceCategory
android:key="zen_mode_event_category"
android:title="@string/zen_mode_set_calendar_category_title">
<!-- TODO: b/333682392 - use correct strings for below two prefs -->
<!-- During events for -->
<DropDownPreference
android:key="calendar"
android:title="@string/zen_mode_event_rule_calendar"
android:summary="%s" />
<!-- Where reply is -->
<DropDownPreference
android:key="reply"
android:title="@string/zen_mode_event_rule_reply"
android:summary="%s" />
</PreferenceCategory>
</PreferenceScreen>