From 4179f995214ea88a0f995f8a520f2bbe5ea19d44 Mon Sep 17 00:00:00 2001 From: Beverly Date: Fri, 8 Feb 2019 11:34:16 -0500 Subject: [PATCH] By default, all notifications can be bubbled - Also add @TestApi to NOTIFICATION_BADGING to allow setting to be cts tested Bug: 124047225 Test: atest cts/tests/app/src/android/app/cts/NotificationManagerTest.java Change-Id: I4c46ef2162b6d240471c867838c47f08434f67a8 --- api/test-current.txt | 1 + core/java/android/provider/Settings.java | 1 + .../SettingsProvider/res/values/defaults.xml | 3 +++ .../providers/settings/SettingsProvider.java | 20 ++++++++++++++++++- 4 files changed, 24 insertions(+), 1 deletion(-) diff --git a/api/test-current.txt b/api/test-current.txt index b977f8755fbb1..2a142ef9b57e9 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -1859,6 +1859,7 @@ package android.provider { field @Deprecated public static final String ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES = "enabled_notification_policy_access_packages"; field public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis"; field public static final String LOCATION_ACCESS_CHECK_INTERVAL_MILLIS = "location_access_check_interval_millis"; + field public static final String NOTIFICATION_BADGING = "notification_badging"; field public static final String NOTIFICATION_BUBBLES = "notification_bubbles"; field @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public static final String SYNC_PARENT_SOUNDS = "sync_parent_sounds"; field public static final String USER_SETUP_COMPLETE = "user_setup_complete"; diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index e95d604653711..de84e713a6f70 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -8289,6 +8289,7 @@ public final class Settings { * The value is boolean (1 or 0). * @hide */ + @TestApi public static final String NOTIFICATION_BADGING = "notification_badging"; private static final Validator NOTIFICATION_BADGING_VALIDATOR = BOOLEAN_VALIDATOR; diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml index dbeee1c4b2cad..26ea6ab2e8be9 100644 --- a/packages/SettingsProvider/res/values/defaults.xml +++ b/packages/SettingsProvider/res/values/defaults.xml @@ -220,4 +220,7 @@ true + + + true diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index 23e5f0eea46d3..a7ad2239b4029 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -3232,7 +3232,7 @@ public class SettingsProvider extends ContentProvider { } private final class UpgradeController { - private static final int SETTINGS_VERSION = 173; + private static final int SETTINGS_VERSION = 174; private final int mUserId; @@ -4252,6 +4252,24 @@ public class SettingsProvider extends ContentProvider { currentVersion = 173; } + if (currentVersion == 173) { + // Version 173: Set the default value for Secure Settings: NOTIFICATION_BUBBLES + + final SettingsState secureSettings = getSecureSettingsLocked(userId); + + final Setting bubblesSetting = secureSettings.getSettingLocked( + Secure.NOTIFICATION_BUBBLES); + + if (bubblesSetting.isNull()) { + secureSettings.insertSettingLocked(Secure.NOTIFICATION_BUBBLES, + getContext().getResources().getBoolean( + R.bool.def_notification_bubbles) ? "1" : "0", null, + true, SettingsState.SYSTEM_PACKAGE_NAME); + } + + currentVersion = 174; + } + // vXXX: Add new settings above this point. if (currentVersion != newVersion) {