From 5d7c3cc66c3dbb8d574adf4649f1dea342364644 Mon Sep 17 00:00:00 2001 From: Dan Sandler Date: Tue, 18 Feb 2014 17:35:15 -0500 Subject: [PATCH] Settings.Global.LOCK_SCREEN_SHOW_NOTIFICATIONS. $ adb shell settings put global lock_screen_show_notifications 1 Previously a per-user secure setting (Settings.Secure.LOCK_SCREEN_ALLOW_NOTIFICATIONS), but this doesn't really make a lot of sense since this behavior pertains to areas of the system (keyguard, status bar) that exist outside of any one user. This setting now effectively enables notifications on the secure lockscreen for all users. Change-Id: I9c5179498dbbba9343184efdedb1587ea862cf96 --- core/java/android/provider/Settings.java | 21 ++++++++++--------- .../android/keyguard/KeyguardViewManager.java | 2 +- .../keyguard/KeyguardViewMediator.java | 10 ++++----- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 6c33492ee72b7..76ada09ebece4 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -3468,16 +3468,8 @@ public final class Settings { "lock_screen_owner_info_enabled"; /** - * This preference enables expanding the notification panel even over a securely - * locked screen, showing only "public" notifications in this case. - * @hide - */ - public static final String LOCK_SCREEN_ALLOW_NOTIFICATIONS = - "lock_screen_allow_notifications"; - - /** - * When set in conjunction with {@link #LOCK_SCREEN_ALLOW_NOTIFICATIONS}, shows - * notifications in their "private" form (same as when the device is unlocked). + * When set by a user, allows notifications to be shown atop a securely locked screen + * in their full "private" form (same as when the device is unlocked). * @hide */ public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = @@ -6074,6 +6066,15 @@ public final class Settings { */ public static final String POLICY_CONTROL = "policy_control"; + + /** + * This preference enables notification display even over a securely + * locked screen. + * @hide + */ + public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = + "lock_screen_show_notifications"; + /** * Settings to backup. This is here so that it's in the same place as the settings * keys and easy to update. diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java b/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java index baf520e0fb4d4..43165eb75d8e4 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java @@ -330,7 +330,7 @@ public class KeyguardViewManager { private boolean allowNotificationsOnSecureKeyguard() { ContentResolver cr = mContext.getContentResolver(); - return Settings.Secure.getInt(cr, Settings.Secure.LOCK_SCREEN_ALLOW_NOTIFICATIONS, 0) == 1; + return Settings.Global.getInt(cr, Settings.Global.LOCK_SCREEN_SHOW_NOTIFICATIONS, 0) == 1; } private KeyguardViewBase inflateKeyguardView(Bundle options, int layoutId) { diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java b/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java index 914fdc4fd89b7..e0ee4e085db9c 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java @@ -151,13 +151,13 @@ public class KeyguardViewMediator { /** * Allow the user to expand the status bar when a SECURE keyguard is engaged - * and {@link Settings.Secure#LOCK_SCREEN_ALLOW_NOTIFICATIONS} is set + * and {@link Settings.Global#LOCK_SCREEN_SHOW_NOTIFICATIONS} is set * (private notifications will be masked). */ private static final boolean ENABLE_SECURE_STATUS_BAR_EXPAND = true; /** - * Default value of {@link Settings.Secure#LOCK_SCREEN_ALLOW_NOTIFICATIONS}. + * Default value of {@link Settings.Global#LOCK_SCREEN_SHOW_NOTIFICATIONS}. */ private static final boolean ALLOW_NOTIFICATIONS_DEFAULT = false; @@ -258,7 +258,7 @@ public class KeyguardViewMediator { private int mLockSoundStreamId; /** - * Tracks value of {@link Settings.Secure#LOCK_SCREEN_ALLOW_NOTIFICATIONS}. + * Tracks value of {@link Settings.Global#LOCK_SCREEN_SHOW_NOTIFICATIONS}. */ private boolean mAllowNotificationsWhenSecure; @@ -913,9 +913,9 @@ public class KeyguardViewMediator { // note whether notification access should be allowed mAllowNotificationsWhenSecure = ENABLE_SECURE_STATUS_BAR_EXPAND - && 0 != Settings.Secure.getInt( + && 0 != Settings.Global.getInt( mContext.getContentResolver(), - Settings.Secure.LOCK_SCREEN_ALLOW_NOTIFICATIONS, + Settings.Global.LOCK_SCREEN_SHOW_NOTIFICATIONS, ALLOW_NOTIFICATIONS_DEFAULT ? 1 : 0); // if the keyguard is already showing, don't bother