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
This commit is contained in:
Matías Hernández
2025-01-03 13:38:10 +01:00
parent 5c13f16954
commit e0510a62eb
2 changed files with 15 additions and 15 deletions

View File

@@ -41,7 +41,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;
@@ -161,20 +160,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);

View File

@@ -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;
@@ -42,6 +44,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");