diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-03-15 10:07:47 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-03-15 10:07:47 +0000 |
commit | 99ede970a0651cf2b140ea7e6ae12592c67300fd (patch) | |
tree | 54359ca1b48d179ffc44d53e91e9855a6d55c262 | |
parent | 530080b6342c5d04073e4bc4dc8894d270f07c3e (diff) | |
parent | 4330a792ce27e9d9f48fefd60b683a1a9db74598 (diff) | |
download | Permission-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.java | 26 |
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) { |