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

Commit b4ced2c2 authored by Elis Elliott's avatar Elis Elliott
Browse files

Assortment of fixes for APIs used by unicorn

Bug: n/a

Test: btest a.d.c.TimeTest
Test: btest a.d.c.StatusBarTest
Change-Id: Ic83b338d21426e5a0b2756ca49aa005d60924973
parent 11562e97
Loading
Loading
Loading
Loading
+24 −14
Original line number Diff line number Diff line
@@ -15467,12 +15467,14 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        int userId = caller.getUserId();
        synchronized (getLockObject()) {
            if (!isPermissionCheckFlagEnabled()) {
                Preconditions.checkCallAuthorization(isUserAffiliatedWithDeviceLocked(userId),
                    "Admin " + who
                            + " is neither the device owner or affiliated user's profile owner.");
                        "Admin " + who + " is neither the device owner or affiliated "
                                + "user's profile owner.");
                if (isManagedProfile(userId)) {
                    throw new SecurityException("Managed profile cannot disable status bar");
                }
            }
            checkCanExecuteOrThrowUnsafe(DevicePolicyManager.OPERATION_SET_STATUS_BAR_DISABLED);
            DevicePolicyData policy = getUserData(userId);
@@ -15524,17 +15526,24 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
    @Override
    public boolean isStatusBarDisabled(String callerPackage) {
        final CallerIdentity caller = getCallerIdentity(callerPackage);
        if (isPermissionCheckFlagEnabled()) {
            enforceCanQuery(
                    MANAGE_DEVICE_POLICY_STATUS_BAR, caller.getPackageName(), caller.getUserId());
        } else {
            Preconditions.checkCallAuthorization(
                    isProfileOwner(caller) || isDefaultDeviceOwner(caller));
        }
        int userId = caller.getUserId();
        synchronized (getLockObject()) {
            if (!isPermissionCheckFlagEnabled()) {
                Preconditions.checkCallAuthorization(isUserAffiliatedWithDeviceLocked(userId),
                        "Admin " + callerPackage
                                + " is neither the device owner or affiliated user's profile owner.");
                if (isManagedProfile(userId)) {
                    throw new SecurityException("Managed profile cannot disable status bar");
                }
            }
            DevicePolicyData policy = getUserData(userId);
            return policy.mStatusBarDisabled;
        }
@@ -22796,7 +22805,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
                    MANAGE_DEVICE_POLICY_PROFILE_INTERACTION,
                    MANAGE_DEVICE_POLICY_SAFE_BOOT,
                    MANAGE_DEVICE_POLICY_SMS,
                    MANAGE_DEVICE_POLICY_STATUS_BAR,
                    MANAGE_DEVICE_POLICY_SYSTEM_DIALOGS,
                    MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER,
                    MANAGE_DEVICE_POLICY_USERS,
@@ -22817,7 +22825,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
     * All the additional permissions granted to a Profile Owner on an affiliated user.
     */
    private static final List<String> ADDITIONAL_AFFILIATED_PROFILE_OWNER_ON_USER_PERMISSIONS =
            List.of();
            List.of(
                    MANAGE_DEVICE_POLICY_STATUS_BAR
            );
    /**
     * Combination of {@link PROFILE_OWNER_PERMISSIONS} and