Merge "Remove incorrect call to Window.addFlags with a system flag" into main

This commit is contained in:
Matías Hernández
2025-01-06 07:16:05 -08:00
committed by Android (Google) Code Review
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.service.notification.NotificationListenerService;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Slog; import android.util.Slog;
import android.view.WindowManager;
import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityEvent;
import android.widget.Toast; import android.widget.Toast;
@@ -161,20 +160,6 @@ public class NotificationAccessConfirmationActivity extends Activity
getWindow().setCloseOnTouchOutside(false); 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() { private void onAllow() {
mNm.setNotificationListenerAccessGranted(mComponentName, true); mNm.setNotificationListenerAccessGranted(mComponentName, true);

View File

@@ -16,6 +16,8 @@
package com.android.settings.notification; 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.android.internal.notification.NotificationAccessConfirmationActivityContract.EXTRA_COMPONENT_NAME;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
@@ -42,6 +44,19 @@ import org.robolectric.RuntimeEnvironment;
@RunWith(RobolectricTestRunner.class) @RunWith(RobolectricTestRunner.class)
public class NotificationAccessConfirmationActivityTest { 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 @Test
public void start_withMissingIntentFilter_finishes() { public void start_withMissingIntentFilter_finishes() {
ComponentName cn = new ComponentName("com.example", "com.example.SomeService"); ComponentName cn = new ComponentName("com.example", "com.example.SomeService");