summaryrefslogtreecommitdiffstats
path: root/src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java')
-rw-r--r--src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java31
1 files changed, 18 insertions, 13 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java
index f31d618e..2bff0e28 100644
--- a/src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java
+++ b/src/com/android/packageinstaller/permission/ui/ReviewPermissionsActivity.java
@@ -144,7 +144,7 @@ public final class ReviewPermissionsActivity extends Activity
return;
}
- boolean reviewRequired= false;
+ boolean reviewRequired = false;
for (AppPermissionGroup group : mAppPermissions.getPermissionGroups()) {
if (group.isReviewRequired()) {
reviewRequired = true;
@@ -166,6 +166,7 @@ public final class ReviewPermissionsActivity extends Activity
@Override
public void onResume() {
super.onResume();
+ mAppPermissions.refresh();
loadPreferences();
}
@@ -240,6 +241,9 @@ public final class ReviewPermissionsActivity extends Activity
private void bindUi() {
Activity activity = getActivity();
+ if (activity == null) {
+ return;
+ }
// Set icon
Drawable icon = mAppPermissions.getPackageInfo().applicationInfo.loadIcon(
@@ -279,6 +283,11 @@ public final class ReviewPermissionsActivity extends Activity
}
private void loadPreferences() {
+ Activity activity = getActivity();
+ if (activity == null) {
+ return;
+ }
+
PreferenceScreen screen = getPreferenceScreen();
if (screen == null) {
screen = getPreferenceManager().createPreferenceScreen(getActivity());
@@ -309,17 +318,8 @@ public final class ReviewPermissionsActivity extends Activity
} else {
preference = new SwitchPreference(getActivity());
- // We update permission grants based on the final preference states
- if (group.isReviewRequired()) {
- // If review is required use granted as default
- preference.setChecked(true);
- } else {
- // If review not required use the current grant state as default
- preference.setChecked(group.areRuntimePermissionsGranted());
- }
-
preference.setKey(group.getName());
- Drawable icon = Utils.loadDrawable(getActivity().getPackageManager(),
+ Drawable icon = Utils.loadDrawable(activity.getPackageManager(),
group.getIconPkg(), group.getIconResId());
preference.setIcon(Utils.applyTint(getContext(), icon,
android.R.attr.colorControlNormal));
@@ -330,6 +330,8 @@ public final class ReviewPermissionsActivity extends Activity
preference.setOnPreferenceChangeListener(this);
}
+ preference.setChecked(group.areRuntimePermissionsGranted());
+
// Mutable state
if (group.isPolicyFixed()) {
preference.setEnabled(false);
@@ -344,7 +346,7 @@ public final class ReviewPermissionsActivity extends Activity
screen.addPreference(preference);
} else {
if (mNewPermissionsCategory == null) {
- mNewPermissionsCategory = new PreferenceCategory(getActivity());
+ mNewPermissionsCategory = new PreferenceCategory(activity);
mNewPermissionsCategory.setTitle(R.string.new_permissions_category);
mNewPermissionsCategory.setOrder(1);
screen.addPreference(mNewPermissionsCategory);
@@ -353,7 +355,7 @@ public final class ReviewPermissionsActivity extends Activity
}
} else {
if (currentPermissionsCategory == null) {
- currentPermissionsCategory = new PreferenceCategory(getActivity());
+ currentPermissionsCategory = new PreferenceCategory(activity);
currentPermissionsCategory.setTitle(R.string.current_permissions_category);
currentPermissionsCategory.setOrder(2);
screen.addPreference(currentPermissionsCategory);
@@ -377,6 +379,9 @@ public final class ReviewPermissionsActivity extends Activity
private void executeCallback(boolean success) {
Activity activity = getActivity();
+ if (activity == null) {
+ return;
+ }
if (success) {
IntentSender intent = activity.getIntent().getParcelableExtra(Intent.EXTRA_INTENT);
if (intent != null) {