Add modes to Settings homepage.
Also moves the modes entrypoints out of the sub-pages it was previously in (notifications and sound settings). Bug: 353700470 Test: manual by opening the homepage Flag: android.app.modes_ui Change-Id: I53124bfed25c43fc2dabaf9c43ce0513bbfc7377
This commit is contained in:
@@ -1321,7 +1321,7 @@
|
|||||||
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
||||||
android:value="com.android.settings.notification.modes.ZenModesListFragment"/>
|
android:value="com.android.settings.notification.modes.ZenModesListFragment"/>
|
||||||
<meta-data android:name="com.android.settings.HIGHLIGHT_MENU_KEY"
|
<meta-data android:name="com.android.settings.HIGHLIGHT_MENU_KEY"
|
||||||
android:value="@string/menu_key_notifications"/>
|
android:value="@string/menu_key_priority_modes" />
|
||||||
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
|
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
|
||||||
android:value="true" />
|
android:value="true" />
|
||||||
</activity>
|
</activity>
|
||||||
|
@@ -24,6 +24,7 @@
|
|||||||
<string name="menu_key_battery" translatable="false">top_level_battery</string>
|
<string name="menu_key_battery" translatable="false">top_level_battery</string>
|
||||||
<string name="menu_key_storage" translatable="false">top_level_storage</string>
|
<string name="menu_key_storage" translatable="false">top_level_storage</string>
|
||||||
<string name="menu_key_sound" translatable="false">top_level_sound</string>
|
<string name="menu_key_sound" translatable="false">top_level_sound</string>
|
||||||
|
<string name="menu_key_priority_modes" translatable="false">top_level_priority_modes</string>
|
||||||
<string name="menu_key_display" translatable="false">top_level_display</string>
|
<string name="menu_key_display" translatable="false">top_level_display</string>
|
||||||
<string name="menu_key_wallpaper" translatable="false">top_level_wallpaper</string>
|
<string name="menu_key_wallpaper" translatable="false">top_level_wallpaper</string>
|
||||||
<string name="menu_key_accessibility" translatable="false">top_level_accessibility</string>
|
<string name="menu_key_accessibility" translatable="false">top_level_accessibility</string>
|
||||||
|
@@ -135,15 +135,6 @@
|
|||||||
settings:controller="com.android.settings.notification.zen.ZenModePreferenceController"
|
settings:controller="com.android.settings.notification.zen.ZenModePreferenceController"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<com.android.settingslib.RestrictedPreference
|
|
||||||
android:key="modes_notifications"
|
|
||||||
android:order="18"
|
|
||||||
android:title="@string/zen_modes_list_title"
|
|
||||||
settings:useAdminDisabledSummary="true"
|
|
||||||
android:fragment="com.android.settings.notification.modes.ZenModesListFragment"
|
|
||||||
settings:controller="com.android.settings.notification.modes.ZenModesLinkPreferenceController"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<SwitchPreferenceCompat
|
<SwitchPreferenceCompat
|
||||||
android:key="lock_screen_show_only_unseen_notifs"
|
android:key="lock_screen_show_only_unseen_notifs"
|
||||||
android:order="19"
|
android:order="19"
|
||||||
|
@@ -18,7 +18,8 @@
|
|||||||
<PreferenceScreen
|
<PreferenceScreen
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
||||||
android:title="@string/zen_modes_list_title">
|
android:title="@string/zen_modes_list_title"
|
||||||
|
android:key="modes_list_settings">
|
||||||
|
|
||||||
<com.android.settingslib.widget.TopIntroPreference
|
<com.android.settingslib.widget.TopIntroPreference
|
||||||
android:title="@string/zen_modes_list_intro" />
|
android:title="@string/zen_modes_list_intro" />
|
||||||
|
@@ -105,14 +105,6 @@
|
|||||||
settings:keywords="@string/keywords_sounds_and_notifications_interruptions"
|
settings:keywords="@string/keywords_sounds_and_notifications_interruptions"
|
||||||
settings:controller="com.android.settings.notification.zen.ZenModePreferenceController"/>
|
settings:controller="com.android.settings.notification.zen.ZenModePreferenceController"/>
|
||||||
|
|
||||||
<com.android.settingslib.RestrictedPreference
|
|
||||||
android:key="modes_notifications"
|
|
||||||
android:order="-130"
|
|
||||||
android:title="@string/zen_modes_list_title"
|
|
||||||
settings:useAdminDisabledSummary="true"
|
|
||||||
android:fragment="com.android.settings.notification.modes.ZenModesListFragment"
|
|
||||||
settings:controller="com.android.settings.notification.modes.ZenModesLinkPreferenceController"/>
|
|
||||||
|
|
||||||
<!-- Phone ringtone -->
|
<!-- Phone ringtone -->
|
||||||
<com.android.settings.DefaultRingtonePreference
|
<com.android.settings.DefaultRingtonePreference
|
||||||
android:key="phone_ringtone"
|
android:key="phone_ringtone"
|
||||||
|
@@ -68,6 +68,16 @@
|
|||||||
android:summary="@string/notification_dashboard_summary"
|
android:summary="@string/notification_dashboard_summary"
|
||||||
settings:highlightableMenuKey="@string/menu_key_notifications"/>
|
settings:highlightableMenuKey="@string/menu_key_notifications"/>
|
||||||
|
|
||||||
|
<com.android.settings.widget.RestrictedHomepagePreference
|
||||||
|
android:fragment="com.android.settings.notification.modes.ZenModesListFragment"
|
||||||
|
android:icon="@*android:drawable/ic_zen_priority_modes"
|
||||||
|
android:key="top_level_priority_modes"
|
||||||
|
android:order="-115"
|
||||||
|
android:title="@string/zen_modes_list_title"
|
||||||
|
settings:useAdminDisabledSummary="true"
|
||||||
|
settings:highlightableMenuKey="@string/menu_key_priority_modes"
|
||||||
|
settings:controller="com.android.settings.notification.modes.ZenModesLinkPreferenceController"/>
|
||||||
|
|
||||||
<com.android.settings.widget.HomepagePreference
|
<com.android.settings.widget.HomepagePreference
|
||||||
android:fragment="com.android.settings.fuelgauge.batteryusage.PowerUsageSummary"
|
android:fragment="com.android.settings.fuelgauge.batteryusage.PowerUsageSummary"
|
||||||
android:icon="@drawable/ic_settings_battery_white"
|
android:icon="@drawable/ic_settings_battery_white"
|
||||||
|
@@ -82,6 +82,16 @@
|
|||||||
android:summary="@string/sound_dashboard_summary"
|
android:summary="@string/sound_dashboard_summary"
|
||||||
settings:highlightableMenuKey="@string/menu_key_sound"/>
|
settings:highlightableMenuKey="@string/menu_key_sound"/>
|
||||||
|
|
||||||
|
<com.android.settings.widget.RestrictedHomepagePreference
|
||||||
|
android:fragment="com.android.settings.notification.modes.ZenModesListFragment"
|
||||||
|
android:icon="@*android:drawable/ic_zen_priority_modes"
|
||||||
|
android:key="top_level_priority_modes"
|
||||||
|
android:order="-35"
|
||||||
|
android:title="@string/zen_modes_list_title"
|
||||||
|
settings:useAdminDisabledSummary="true"
|
||||||
|
settings:highlightableMenuKey="@string/menu_key_priority_modes"
|
||||||
|
settings:controller="com.android.settings.notification.modes.ZenModesLinkPreferenceController"/>
|
||||||
|
|
||||||
<com.android.settings.widget.HomepagePreference
|
<com.android.settings.widget.HomepagePreference
|
||||||
android:fragment="com.android.settings.communal.CommunalDashboardFragment"
|
android:fragment="com.android.settings.communal.CommunalDashboardFragment"
|
||||||
android:icon="@drawable/ia_settings_communal"
|
android:icon="@drawable/ia_settings_communal"
|
||||||
|
@@ -18,6 +18,7 @@ package com.android.settings.notification.modes;
|
|||||||
|
|
||||||
import android.app.Flags;
|
import android.app.Flags;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
@@ -30,6 +31,7 @@ import com.android.settingslib.notification.modes.ZenModesBackend;
|
|||||||
|
|
||||||
public class ZenModesLinkPreferenceController extends BasePreferenceController
|
public class ZenModesLinkPreferenceController extends BasePreferenceController
|
||||||
implements LifecycleObserver, OnStart, OnStop {
|
implements LifecycleObserver, OnStart, OnStop {
|
||||||
|
private static final String TAG = "ModesLinkPrefController";
|
||||||
|
|
||||||
private final ZenModesBackend mBackend;
|
private final ZenModesBackend mBackend;
|
||||||
private final ZenSettingsObserver mSettingObserver;
|
private final ZenSettingsObserver mSettingObserver;
|
||||||
@@ -71,7 +73,13 @@ public class ZenModesLinkPreferenceController extends BasePreferenceController
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateState(Preference preference) {
|
public void updateState(Preference preference) {
|
||||||
preference.setSummary(mSummaryBuilder.getModesSummary(mBackend.getModes()));
|
try {
|
||||||
|
preference.setSummary(mSummaryBuilder.getModesSummary(mBackend.getModes()));
|
||||||
|
} catch (SecurityException e) {
|
||||||
|
// Standard usage should have the correct permissions to read zen state. But if we don't
|
||||||
|
// for whatever reason, don't crash.
|
||||||
|
Log.w(TAG, "No permission to read mode state");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user