diff --git a/src/com/android/settings/notification/ConfigureNotificationSettings.java b/src/com/android/settings/notification/ConfigureNotificationSettings.java index c342ba076c2..9acac06301e 100644 --- a/src/com/android/settings/notification/ConfigureNotificationSettings.java +++ b/src/com/android/settings/notification/ConfigureNotificationSettings.java @@ -213,7 +213,7 @@ public class ConfigureNotificationSettings extends SettingsPreferenceFragment { Log.i(TAG, "Preference not found: " + KEY_LOCK_SCREEN_PROFILE_NOTIFICATIONS); return; } - + mLockscreenProfile.setUserId(mProfileChallengeUserId); ArrayList entries = new ArrayList<>(); ArrayList values = new ArrayList<>(); entries.add(getString(R.string.lock_screen_notifications_summary_disable_profile)); diff --git a/src/com/android/settings/notification/NotificationLockscreenPreference.java b/src/com/android/settings/notification/NotificationLockscreenPreference.java index cd3e30cc7b2..8c8996837a2 100644 --- a/src/com/android/settings/notification/NotificationLockscreenPreference.java +++ b/src/com/android/settings/notification/NotificationLockscreenPreference.java @@ -18,11 +18,14 @@ package com.android.settings.notification; import com.android.settings.R; import com.android.settings.RestrictedListPreference; +import com.android.settings.Utils; import android.app.AlertDialog; import android.app.Dialog; import android.content.Context; import android.content.DialogInterface; +import android.os.UserHandle; +import android.os.UserManager; import android.provider.Settings; import android.util.AttributeSet; import android.view.View; @@ -38,6 +41,7 @@ public class NotificationLockscreenPreference extends RestrictedListPreference { private Listener mListener; private boolean mShowRemoteInput; private boolean mRemoteInputCheckBoxEnabled = true; + private int mUserId = UserHandle.myUserId(); public NotificationLockscreenPreference(Context context, AttributeSet attrs) { super(context, attrs); @@ -47,6 +51,20 @@ public class NotificationLockscreenPreference extends RestrictedListPreference { mRemoteInputCheckBoxEnabled = enabled; } + @Override + protected void onClick() { + final Context context = getContext(); + if (!Utils.startQuietModeDialogIfNecessary(context, UserManager.get(context), mUserId)) { + // Call super to create preference dialog only when work mode is on + // startQuietModeDialogIfNecessary will return false if mUserId is not a managed user + super.onClick(); + } + } + + public void setUserId(int userId) { + mUserId = userId; + } + @Override protected void onPrepareDialogBuilder(AlertDialog.Builder builder, DialogInterface.OnClickListener innerListener) {