From afd5002232a9577dedb6484d3d85a11f1dc95a3c Mon Sep 17 00:00:00 2001 From: Fabian Kozynski Date: Tue, 5 Feb 2019 09:41:42 -0500 Subject: [PATCH] Prevents blank Ongoing Privacy Dialog Test: manual Bug: 123343369 Change-Id: I9bc8e1a7174e9e45c8c548c7f13e76fbe411579b --- .../src/com/android/systemui/qs/QuickStatusBarHeader.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java b/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java index 2d64ecd99c880..74e82b270aa06 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java @@ -67,6 +67,7 @@ import com.android.systemui.plugins.DarkIconDispatcher; import com.android.systemui.plugins.DarkIconDispatcher.DarkReceiver; import com.android.systemui.privacy.OngoingPrivacyChip; import com.android.systemui.privacy.OngoingPrivacyDialog; +import com.android.systemui.privacy.PrivacyDialogBuilder; import com.android.systemui.privacy.PrivacyItem; import com.android.systemui.privacy.PrivacyItemController; import com.android.systemui.qs.QSDetail.Callback; @@ -534,10 +535,12 @@ public class QuickStatusBarHeader extends RelativeLayout implements mActivityStarter.postStartActivityDismissingKeyguard(new Intent( AlarmClock.ACTION_SHOW_ALARMS),0); } else if (v == mPrivacyChip) { + // Makes sure that the builder is grabbed as soon as the chip is pressed + PrivacyDialogBuilder builder = mPrivacyChip.getBuilder(); + if (builder.getAppsAndTypes().size() == 0) return; Handler mUiHandler = new Handler(Looper.getMainLooper()); mUiHandler.post(() -> { - Dialog mDialog = new OngoingPrivacyDialog(mContext, - mPrivacyChip.getBuilder()).createDialog(); + Dialog mDialog = new OngoingPrivacyDialog(mContext, builder).createDialog(); mDialog.getWindow().setType( WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG); SystemUIDialog.setShowForAllUsers(mDialog, true);