summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-03-15 10:07:47 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-03-15 10:07:47 +0000
commit99ede970a0651cf2b140ea7e6ae12592c67300fd (patch)
tree54359ca1b48d179ffc44d53e91e9855a6d55c262
parent530080b6342c5d04073e4bc4dc8894d270f07c3e (diff)
parent4330a792ce27e9d9f48fefd60b683a1a9db74598 (diff)
downloadPermission-99ede970a0651cf2b140ea7e6ae12592c67300fd.tar.gz
Snap for 8301745 from 4330a792ce27e9d9f48fefd60b683a1a9db74598 to mainline-art-releaseandroid-mainline-12.0.0_r98
Change-Id: I7343a4dfb5c27c2c2eaf7ea7dbba2d75066084bf
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/ui/handheld/PermissionAppsFragment.java26
1 files changed, 17 insertions, 9 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/ui/handheld/PermissionAppsFragment.java b/PermissionController/src/com/android/permissioncontroller/permission/ui/handheld/PermissionAppsFragment.java
index 50c64df02..92586a26a 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/ui/handheld/PermissionAppsFragment.java
+++ b/PermissionController/src/com/android/permissioncontroller/permission/ui/handheld/PermissionAppsFragment.java
@@ -272,11 +272,27 @@ public final class PermissionAppsFragment extends SettingsWithLargeHeader implem
CardViewPreference sensorCard = findPreference(BLOCKED_SENSOR_PREF_KEY);
if (sensorCard == null) {
sensorCard = createSensorCard();
+ ensurePreferenceScreen();
getPreferenceScreen().addPreference(sensorCard);
}
sensorCard.setVisible(true);
}
+ private void ensurePreferenceScreen() {
+ // Check if preference screen has been already loaded
+ if (getPreferenceScreen() != null) {
+ return;
+ }
+ boolean isStorage = mPermGroupName.equals(Manifest.permission_group.STORAGE);
+ if (isStorage) {
+ addPreferencesFromResource(R.xml.allowed_denied_storage);
+ } else {
+ addPreferencesFromResource(R.xml.allowed_denied);
+ }
+ // Hide allowed foreground label by default, to avoid briefly showing it before updating
+ findPreference(ALLOWED_FOREGROUND.getCategoryName()).setVisible(false);
+ }
+
@RequiresApi(Build.VERSION_CODES.S)
private CardViewPreference createSensorCard() {
boolean isLocation = Manifest.permission_group.LOCATION.equals(mPermGroupName);
@@ -328,15 +344,7 @@ public final class PermissionAppsFragment extends SettingsWithLargeHeader implem
private void onPackagesLoaded(Map<Category, List<Pair<String, UserHandle>>> categories) {
boolean isStorage = mPermGroupName.equals(Manifest.permission_group.STORAGE);
- if (getPreferenceScreen() == null) {
- if (isStorage) {
- addPreferencesFromResource(R.xml.allowed_denied_storage);
- } else {
- addPreferencesFromResource(R.xml.allowed_denied);
- }
- // Hide allowed foreground label by default, to avoid briefly showing it before updating
- findPreference(ALLOWED_FOREGROUND.getCategoryName()).setVisible(false);
- }
+ ensurePreferenceScreen();
Context context = getPreferenceManager().getContext();
if (context == null || getActivity() == null || categories == null) {