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

Commit 4e629153 authored by Philip P. Moltmann's avatar Philip P. Moltmann Committed by android-build-merger
Browse files

Merge changes from topic "GroupWithGrantedAndDeniedPerm" into qt-dev

am: 7e6bc8ad

Change-Id: Id1b600e629798286464810d53c911de662727de0
parents c144751e 7e6bc8ad
Loading
Loading
Loading
Loading
+12 −5
Original line number Diff line number Diff line
@@ -1020,12 +1020,19 @@ public final class AppPermissionGroup implements Comparable<AppPermissionGroup>
        return wasAllRevoked;
    }

    public void setPolicyFixed() {
        final int permissionCount = mPermissions.size();
        for (int i = 0; i < permissionCount; i++) {
            Permission permission = mPermissions.valueAt(i);
    /**
     * Mark permissions in this group as policy fixed.
     *
     * @param filterPermissions The permissions to mark
     */
    public void setPolicyFixed(@NonNull String[] filterPermissions) {
        for (String permissionName : filterPermissions) {
            Permission permission = mPermissions.get(permissionName);

            if (permission != null) {
                permission.setPolicyFixed(true);
            }
        }

        if (!mDelayChanges) {
            persistChanges(false);
+5 −3
Original line number Diff line number Diff line
@@ -181,9 +181,10 @@ public class GrantPermissionsActivity extends Activity
        boolean skipGroup = false;
        switch (getPermissionPolicy()) {
            case DevicePolicyManager.PERMISSION_POLICY_AUTO_GRANT: {
                group.grantRuntimePermissions(false, new String[]{permName});
                final String[] filterPermissions = new String[]{permName};
                group.grantRuntimePermissions(false, filterPermissions);
                group.setPolicyFixed(filterPermissions);
                state.mState = GroupState.STATE_ALLOWED;
                group.setPolicyFixed();
                skipGroup = true;

                reportRequestResult(permName,
@@ -191,8 +192,9 @@ public class GrantPermissionsActivity extends Activity
            } break;

            case DevicePolicyManager.PERMISSION_POLICY_AUTO_DENY: {
                final String[] filterPermissions = new String[]{permName};
                group.setPolicyFixed(filterPermissions);
                state.mState = GroupState.STATE_DENIED;
                group.setPolicyFixed();
                skipGroup = true;

                reportRequestResult(permName,
+18 −0
Original line number Diff line number Diff line
@@ -13,6 +13,24 @@
            "options": [
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testPermissionGrantOfDisallowedPermissionWhileOtherPermIsGranted"
                },
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testPermissionGrant"
                },
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testPermissionPolicy"
                },
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testPermissionMixedPolicies"
                },
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testPermissionAppUpdate"
                },
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testPermissionGrantPreMApp"
                },
                {
                    "include-filter": "com.android.cts.devicepolicy.MixedManagedProfileOwnerTestApi25#testPermissionGrantPreMApp"
                }
            ]
        }