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

Commit 83eeb7b9 authored by Yogisha Dixit's avatar Yogisha Dixit Committed by Automerger Merge Worker
Browse files

RESTRICT AUTOMERGE am: 4b1a1f13

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

Change-Id: I115c89330dda834bdaad9b361274e88b57439bb8
parents d629ed80 4b1a1f13
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -94,6 +94,8 @@ interface IPowerManager
    boolean isAmbientDisplaySuppressedForToken(String token);
    // returns whether ambient display is suppressed by any app with any token.
    boolean isAmbientDisplaySuppressed();
    // returns whether ambient display is suppressed by the given app with the given token.
    boolean isAmbientDisplaySuppressedForTokenByApp(String token, int appUid);

    // Forces the system to suspend even if there are held wakelocks.
    boolean forceSuspend();
+21 −0
Original line number Diff line number Diff line
@@ -2120,6 +2120,27 @@ public final class PowerManager {
        }
    }

    /**
     * Returns true if ambient display is suppressed by the given {@code appUid} with the given
     * {@code token}.
     *
     * <p>This method will return false if {@link #isAmbientDisplayAvailable()} is false.
     *
     * @param token The identifier of the ambient display suppression.
     * @param appUid The uid of the app that suppressed ambient display.
     * @hide
     */
    @RequiresPermission(allOf = {
            android.Manifest.permission.READ_DREAM_STATE,
            android.Manifest.permission.READ_DREAM_SUPPRESSION })
    public boolean isAmbientDisplaySuppressedForTokenByApp(@NonNull String token, int appUid) {
        try {
            return mService.isAmbientDisplaySuppressedForTokenByApp(token, appUid);
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
    }

    /**
     * Returns the reason the phone was last shutdown. Calling app must have the
     * {@link android.Manifest.permission#DEVICE_POWER} permission to request this information.
+4 −0
Original line number Diff line number Diff line
@@ -4315,6 +4315,10 @@
    <permission android:name="android.permission.WRITE_DREAM_STATE"
        android:protectionLevel="signature|privileged" />

    <!-- @hide Allows applications to read whether ambient display is suppressed. -->
    <permission android:name="android.permission.READ_DREAM_SUPPRESSION"
        android:protectionLevel="signature" />

    <!-- @SystemApi Allow an application to read and write the cache partition.
         @hide -->
    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
+16 −0
Original line number Diff line number Diff line
@@ -5304,6 +5304,22 @@ public final class PowerManagerService extends SystemService
            }
        }

        @Override // Binder call
        public boolean isAmbientDisplaySuppressedForTokenByApp(@NonNull String token, int appUid) {
            mContext.enforceCallingOrSelfPermission(
                    android.Manifest.permission.READ_DREAM_STATE, null);
            mContext.enforceCallingOrSelfPermission(
                    android.Manifest.permission.READ_DREAM_SUPPRESSION, null);

            final long ident = Binder.clearCallingIdentity();
            try {
                return isAmbientDisplayAvailable()
                        && mAmbientDisplaySuppressionController.isSuppressed(token, appUid);
            } finally {
                Binder.restoreCallingIdentity(ident);
            }
        }

        @Override // Binder call
        public boolean isAmbientDisplaySuppressed() {
            mContext.enforceCallingOrSelfPermission(
+1 −0
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
    <uses-permission android:name="android.permission.DUMP"/>
    <uses-permission android:name="android.permission.READ_DREAM_STATE"/>
    <uses-permission android:name="android.permission.READ_DREAM_SUPPRESSION"/>
    <uses-permission android:name="android.permission.WRITE_DREAM_STATE"/>
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
    <uses-permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"/>
Loading