From c97cd9e805f9c347db5152553fdd1c4004a558b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C3=ADas=20Hern=C3=A1ndez?= Date: Fri, 3 Jan 2025 13:38:10 +0100 Subject: [PATCH] Remove incorrect call to Window.addFlags with a system flag The same flag is being (correctly) added in onCreate, so on top of being wrong this was also completely unnecessary. Bug: 368579654 Test: atest NotificationAccessConfirmationActivityTest Flag: EXEMPT bugfix Change-Id: I539fca77a1d136bdd0e4892993020884430b8a4e Merged-In: I539fca77a1d136bdd0e4892993020884430b8a4e (cherry picked from commit e0510a62eba04140e459cdd8232f35087aa3073b) --- .../NotificationAccessConfirmationActivity.java | 15 --------------- ...otificationAccessConfirmationActivityTest.java | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/com/android/settings/notification/NotificationAccessConfirmationActivity.java b/src/com/android/settings/notification/NotificationAccessConfirmationActivity.java index 74b8102ee2c..253ae88e4b3 100644 --- a/src/com/android/settings/notification/NotificationAccessConfirmationActivity.java +++ b/src/com/android/settings/notification/NotificationAccessConfirmationActivity.java @@ -42,7 +42,6 @@ import android.os.UserManager; import android.service.notification.NotificationListenerService; import android.text.TextUtils; import android.util.Slog; -import android.view.WindowManager; import android.view.accessibility.AccessibilityEvent; import android.widget.Toast; @@ -160,20 +159,6 @@ public class NotificationAccessConfirmationActivity extends Activity getWindow().setCloseOnTouchOutside(false); } - @Override - public void onResume() { - super.onResume(); - getWindow().addFlags( - WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS); - } - - @Override - public void onPause() { - getWindow().clearFlags( - WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS); - super.onPause(); - } - private void onAllow() { mNm.setNotificationListenerAccessGranted(mComponentName, true); diff --git a/tests/robotests/src/com/android/settings/notification/NotificationAccessConfirmationActivityTest.java b/tests/robotests/src/com/android/settings/notification/NotificationAccessConfirmationActivityTest.java index 788f853e19b..1f5640285c6 100644 --- a/tests/robotests/src/com/android/settings/notification/NotificationAccessConfirmationActivityTest.java +++ b/tests/robotests/src/com/android/settings/notification/NotificationAccessConfirmationActivityTest.java @@ -16,6 +16,8 @@ package com.android.settings.notification; +import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS; + import static com.android.internal.notification.NotificationAccessConfirmationActivityContract.EXTRA_COMPONENT_NAME; import static com.google.common.truth.Truth.assertThat; @@ -41,6 +43,19 @@ import org.robolectric.RuntimeEnvironment; @RunWith(RobolectricTestRunner.class) public class NotificationAccessConfirmationActivityTest { + @Test + public void onCreate_setsWindowFlags() { + ComponentName cn = new ComponentName("com.example", "com.example.SomeService"); + installPackage(cn.getPackageName(), "Example"); + + NotificationAccessConfirmationActivity activity = startActivityWithIntent(cn); + + assertThat(activity.getWindow().getAttributes().privateFlags + & SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS).isNotEqualTo(0); + assertThat(activity.getWindow().getAttributes().flags + & SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS).isEqualTo(0); + } + @Test public void start_withMissingIntentFilter_finishes() { ComponentName cn = new ComponentName("com.example", "com.example.SomeService");