diff options
Diffstat (limited to 'src/com/android/packageinstaller/permission/ui/PermissionAppsFragment.java')
-rw-r--r-- | src/com/android/packageinstaller/permission/ui/PermissionAppsFragment.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/PermissionAppsFragment.java b/src/com/android/packageinstaller/permission/ui/PermissionAppsFragment.java index 2a5f7c7e..8dacd037 100644 --- a/src/com/android/packageinstaller/permission/ui/PermissionAppsFragment.java +++ b/src/com/android/packageinstaller/permission/ui/PermissionAppsFragment.java @@ -219,6 +219,17 @@ public final class PermissionAppsFragment extends PermissionsFrameFragment imple } if (existingPref != null) { + // If existing preference - only update its state. + if (app.isPolicyFixed()) { + existingPref.setSummary(getString( + R.string.permission_summary_enforced_by_policy)); + } + existingPref.setPersistent(false); + existingPref.setEnabled(!app.isPolicyFixed()); + if (existingPref instanceof SwitchPreference) { + ((SwitchPreference) existingPref) + .setChecked(app.areRuntimePermissionsGranted()); + } continue; } @@ -316,7 +327,8 @@ public final class PermissionAppsFragment extends PermissionsFrameFragment imple addToggledGroup(app.getPackageName(), app.getPermissionGroup()); - if (LocationUtils.isLocked(mPermissionApps.getGroupName(), app.getPackageName())) { + if (LocationUtils.isLocationGroupAndProvider(mPermissionApps.getGroupName(), + app.getPackageName())) { LocationUtils.showLocationDialog(getContext(), app.getLabel()); return false; } |