Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 32fc8183 authored by Daniel Norman's avatar Daniel Norman Committed by Android (Google) Code Review
Browse files

Merge "cleanup: clean up flag allow_secure_screenshots" into main

parents a54993ca 1191dbf5
Loading
Loading
Loading
Loading
+0 −10
Original line number Diff line number Diff line
@@ -10,16 +10,6 @@ flag {
    bug: "297972548"
}

flag {
    name: "allow_secure_screenshots"
    namespace: "accessibility"
    description: "Allow certain AccessibilityServices to take screenshots of FLAG_SECURE screens"
    bug: "373705911"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "always_allow_observing_touch_events"
    namespace: "accessibility"
+52 −61
Original line number Diff line number Diff line
@@ -1460,7 +1460,6 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
                        AccessibilityService.ERROR_TAKE_SCREENSHOT_INVALID_WINDOW, interactionId);
                return;
            }
            if (Flags.allowSecureScreenshots()) {
            IWindowSurfaceInfoCallback infoCallback =
                    new IWindowSurfaceInfoCallback.Stub() {
                        @Override
@@ -1507,9 +1506,6 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
                        }
                    };
            connection.getRemote().getWindowSurfaceInfo(infoCallback);
            } else {
                connection.getRemote().takeScreenshotOfWindow(interactionId, listener, callback);
            }
        } finally {
            Binder.restoreCallingIdentity(identity);
        }
@@ -1576,7 +1572,6 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
                                            callback);
                                }
                            });
            if (Flags.allowSecureScreenshots()) {
            final int secureContentPolicy =
                    canCaptureSecureLayers() ? ScreenCaptureParams.SECURE_CONTENT_POLICY_CAPTURE
                            : ScreenCaptureParams.SECURE_CONTENT_POLICY_REDACT;
@@ -1586,9 +1581,6 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
                            .setSecureContentPolicy(secureContentPolicy)
                            .build(),
                    screenCaptureListener);
            } else {
                mWindowManagerService.captureDisplay(displayId, null, screenCaptureListener);
            }
        } catch (Exception e) {
            sendScreenshotFailure(AccessibilityService.ERROR_TAKE_SCREENSHOT_INVALID_DISPLAY,
                    callback);
@@ -1630,8 +1622,7 @@ abstract class AbstractAccessibilityServiceConnection extends IAccessibilityServ
    }

    private boolean canCaptureSecureLayers() {
        return Flags.allowSecureScreenshots()
                && mAccessibilityServiceInfo.isAccessibilityTool()
        return mAccessibilityServiceInfo.isAccessibilityTool()
                && mAccessibilityServiceInfo.getResolveInfo().serviceInfo
                .applicationInfo.isSystemApp();
    }
+0 −7
Original line number Diff line number Diff line
@@ -91,7 +91,6 @@ import android.os.Process;
import android.os.RemoteCallback;
import android.os.RemoteException;
import android.os.test.FakePermissionEnforcer;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.util.Pair;
import android.view.Display;
@@ -786,7 +785,6 @@ public class AbstractAccessibilityServiceConnectionTest {
    }

    @Test
    @EnableFlags(Flags.FLAG_ALLOW_SECURE_SCREENSHOTS)
    public void takeScreenshot_standardService_cannotCaptureSecureLayers() {
        setPreinstalledA11yTool(false);

@@ -801,7 +799,6 @@ public class AbstractAccessibilityServiceConnectionTest {
    }

    @Test
    @EnableFlags(Flags.FLAG_ALLOW_SECURE_SCREENSHOTS)
    public void takeScreenshot_preinstalledA11yTool_canCaptureSecureLayers() {
        setPreinstalledA11yTool(true);

@@ -827,7 +824,6 @@ public class AbstractAccessibilityServiceConnectionTest {
    }

    @Test
    @EnableFlags(Flags.FLAG_ALLOW_SECURE_SCREENSHOTS)
    public void takeScreenshotOfWindow_standardWindow_standardService_cannotCaptureSecureLayers()
            throws Exception {
        setPreinstalledA11yTool(false);
@@ -846,7 +842,6 @@ public class AbstractAccessibilityServiceConnectionTest {
    }

    @Test
    @EnableFlags(Flags.FLAG_ALLOW_SECURE_SCREENSHOTS)
    public void takeScreenshotOfWindow_standardWindow_preinstalledA11yTool_canCaptureSecureLayers()
            throws Exception {
        setPreinstalledA11yTool(true);
@@ -865,7 +860,6 @@ public class AbstractAccessibilityServiceConnectionTest {
    }

    @Test
    @EnableFlags(Flags.FLAG_ALLOW_SECURE_SCREENSHOTS)
    public void takeScreenshotOfWindow_secureWindow_standardService_sendsCallbackError()
            throws Exception {
        setPreinstalledA11yTool(false);
@@ -880,7 +874,6 @@ public class AbstractAccessibilityServiceConnectionTest {
    }

    @Test
    @EnableFlags(Flags.FLAG_ALLOW_SECURE_SCREENSHOTS)
    public void takeScreenshotOfWindow_secureWindow_preinstalledA11yTool_canCaptureSecureLayers()
            throws Exception {
        setPreinstalledA11yTool(true);