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

Commit 569c49b5 authored by Jon Spivack's avatar Jon Spivack Committed by Automerger Merge Worker
Browse files

Merge "Revert "Fix default mode for system alert window on low-RAM device.""...

Merge "Revert "Fix default mode for system alert window on low-RAM device."" into tm-dev am: 074f4aa6

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18365482



Change-Id: I4fda2da234c39a4699b32eb46842c8c3e61af8ff
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 3ec3344e 074f4aa6
Loading
Loading
Loading
Loading
+4 −15
Original line number Diff line number Diff line
@@ -2709,7 +2709,7 @@ public class AppOpsManager {
            AppOpsManager.MODE_ALLOWED, // READ_ICC_SMS
            AppOpsManager.MODE_ALLOWED, // WRITE_ICC_SMS
            AppOpsManager.MODE_DEFAULT, // WRITE_SETTINGS
            AppOpsManager.MODE_DEFAULT, // SYSTEM_ALERT_WINDOW /*Overridden in opToDefaultMode()*/
            getSystemAlertWindowDefault(), // SYSTEM_ALERT_WINDOW
            AppOpsManager.MODE_ALLOWED, // ACCESS_NOTIFICATIONS
            AppOpsManager.MODE_ALLOWED, // CAMERA
            AppOpsManager.MODE_ALLOWED, // RECORD_AUDIO
@@ -3163,8 +3163,6 @@ public class AppOpsManager {
    private static final String DEBUG_LOGGING_OPS_PROP = "appops.logging_ops";
    private static final String DEBUG_LOGGING_TAG = "AppOpsManager";

    private static volatile Integer sOpSystemAlertWindowDefaultMode;

    /**
     * Retrieve the op switch that controls the given operation.
     * @hide
@@ -3263,9 +3261,6 @@ public class AppOpsManager {
     * @hide
     */
    public static @Mode int opToDefaultMode(int op) {
        if (op == OP_SYSTEM_ALERT_WINDOW) {
            return getSystemAlertWindowDefault();
        }
        return sOpDefaultMode[op];
    }

@@ -10283,11 +10278,6 @@ public class AppOpsManager {
    }

    private static int getSystemAlertWindowDefault() {
        // This is indeed racy but we aren't expecting the result to change so it's not worth
        // the synchronization.
        if (sOpSystemAlertWindowDefaultMode != null) {
            return sOpSystemAlertWindowDefaultMode;
        }
        final Context context = ActivityThread.currentApplication();
        if (context == null) {
            return AppOpsManager.MODE_DEFAULT;
@@ -10298,11 +10288,10 @@ public class AppOpsManager {
        // TVs are constantly plugged in and has less concern for memory/power
        if (ActivityManager.isLowRamDeviceStatic()
                && !pm.hasSystemFeature(PackageManager.FEATURE_LEANBACK, 0)) {
            sOpSystemAlertWindowDefaultMode = AppOpsManager.MODE_IGNORED;
        } else {
            sOpSystemAlertWindowDefaultMode = AppOpsManager.MODE_DEFAULT;
            return AppOpsManager.MODE_IGNORED;
        }
        return sOpSystemAlertWindowDefaultMode;

        return AppOpsManager.MODE_DEFAULT;
    }

    /**