From 76bfa6003912a35234eaa2e1bdbe030ab2f64679 Mon Sep 17 00:00:00 2001 From: Julia Reynolds Date: Mon, 23 Apr 2018 09:38:47 -0400 Subject: [PATCH] Update zen onboarding flow - Reset notification/onboarding - Update notification icon Test: runtest systemui-notification Bug: 78448988 Change-Id: I1114000ad534f74ae67fc19fd8bbb712f757dfd9 --- .../drawable/ic_dnd_block_notifications.xml | 30 +++++++++++++++++++ core/res/res/values/symbols.xml | 1 + .../providers/settings/SettingsProvider.java | 29 ++++++++++-------- .../server/notification/ZenModeHelper.java | 7 +++-- 4 files changed, 53 insertions(+), 14 deletions(-) create mode 100644 core/res/res/drawable/ic_dnd_block_notifications.xml diff --git a/core/res/res/drawable/ic_dnd_block_notifications.xml b/core/res/res/drawable/ic_dnd_block_notifications.xml new file mode 100644 index 0000000000000..4983614557083 --- /dev/null +++ b/core/res/res/drawable/ic_dnd_block_notifications.xml @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index 5298e5b66d5a8..c3ab1a6830446 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -2555,6 +2555,7 @@ + diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index 1d3e521fe80a9..32aafeafb203d 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -2935,7 +2935,7 @@ public class SettingsProvider extends ContentProvider { } private final class UpgradeController { - private static final int SETTINGS_VERSION = 164; + private static final int SETTINGS_VERSION = 165; private final int mUserId; @@ -3710,17 +3710,7 @@ public class SettingsProvider extends ContentProvider { } if (currentVersion == 162) { - // Version 162: Add a gesture for silencing phones - final SettingsState settings = getGlobalSettingsLocked(); - final Setting currentSetting = settings.getSettingLocked( - Global.SHOW_ZEN_UPGRADE_NOTIFICATION); - if (!currentSetting.isNull() - && TextUtils.equals("0", currentSetting.getValue())) { - settings.insertSettingLocked( - Global.SHOW_ZEN_UPGRADE_NOTIFICATION, "1", - null, true, SettingsState.SYSTEM_PACKAGE_NAME); - } - + // Version 162: REMOVED: Add a gesture for silencing phones currentVersion = 163; } @@ -3742,6 +3732,21 @@ public class SettingsProvider extends ContentProvider { currentVersion = 164; } + if (currentVersion == 164) { + // Version 164: Add a gesture for silencing phones + final SettingsState settings = getGlobalSettingsLocked(); + final Setting currentSetting = settings.getSettingLocked( + Global.SHOW_ZEN_UPGRADE_NOTIFICATION); + if (!currentSetting.isNull() + && TextUtils.equals("0", currentSetting.getValue())) { + settings.insertSettingLocked( + Global.SHOW_ZEN_UPGRADE_NOTIFICATION, "1", + null, true, SettingsState.SYSTEM_PACKAGE_NAME); + } + + currentVersion = 165; + } + // vXXX: Add new settings above this point. if (currentVersion != newVersion) { diff --git a/services/core/java/com/android/server/notification/ZenModeHelper.java b/services/core/java/com/android/server/notification/ZenModeHelper.java index a84be575371e6..658c7f179691a 100644 --- a/services/core/java/com/android/server/notification/ZenModeHelper.java +++ b/services/core/java/com/android/server/notification/ZenModeHelper.java @@ -1171,7 +1171,7 @@ public class ZenModeHelper { private void showZenUpgradeNotification(int zen) { final boolean showNotification = mIsBootComplete - && zen == Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS + && zen != Global.ZEN_MODE_OFF && Settings.Global.getInt(mContext.getContentResolver(), Settings.Global.SHOW_ZEN_UPGRADE_NOTIFICATION, 0) != 0; @@ -1190,17 +1190,20 @@ public class ZenModeHelper { mContext.getResources().getString(R.string.global_action_settings)); int title = R.string.zen_upgrade_notification_title; int content = R.string.zen_upgrade_notification_content; + int drawable = R.drawable.ic_zen_24dp; if (NotificationManager.Policy.areAllVisualEffectsSuppressed( getNotificationPolicy().suppressedVisualEffects)) { title = R.string.zen_upgrade_notification_visd_title; content = R.string.zen_upgrade_notification_visd_content; + drawable = R.drawable.ic_dnd_block_notifications; } + Intent onboardingIntent = new Intent(Settings.ZEN_MODE_ONBOARDING); onboardingIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); return new Notification.Builder(mContext, SystemNotificationChannels.DO_NOT_DISTURB) .setAutoCancel(true) .setSmallIcon(R.drawable.ic_settings_24dp) - .setLargeIcon(Icon.createWithResource(mContext, R.drawable.ic_zen_24dp)) + .setLargeIcon(Icon.createWithResource(mContext, drawable)) .setContentTitle(mContext.getResources().getString(title)) .setContentText(mContext.getResources().getString(content)) .setContentIntent(PendingIntent.getActivity(mContext, 0, onboardingIntent,