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

Commit 7992a9cb authored by Shijian Li's avatar Shijian Li Committed by android-build-merger
Browse files

Add refresh logic for individually controlled permission in onResume. am: 8bb25537 am: 8eb3b01e

am: 311854b3

Change-Id: I7d6cd64e69366b2445877bcc38914bad3dfbac97
parents 2ee04f47 311854b3
Loading
Loading
Loading
Loading
+14 −3
Original line number Original line Diff line number Diff line
@@ -137,9 +137,13 @@ public final class AppPermissionsFragmentWear extends PreferenceFragment {


        // Also refresh the UI
        // Also refresh the UI
        for (final AppPermissionGroup group : mAppPermissions.getPermissionGroups()) {
        for (final AppPermissionGroup group : mAppPermissions.getPermissionGroups()) {
            Preference pref = findPreference(group.getName());
            if (Utils.areGroupPermissionsIndividuallyControlled(getContext(), group.getName())) {
            if (pref instanceof SwitchPreference) {
                for (PermissionInfo perm : getPermissionInfosFromGroup(group)) {
                ((SwitchPreference) pref).setChecked(group.areRuntimePermissionsGranted());
                    setPreferenceCheckedIfPresent(perm.name,
                            group.areRuntimePermissionsGranted(new String[]{ perm.name }));
                }
            } else {
                setPreferenceCheckedIfPresent(group.getName(), group.areRuntimePermissionsGranted());
            }
            }
        }
        }
    }
    }
@@ -304,4 +308,11 @@ public final class AppPermissionsFragmentWear extends PreferenceFragment {
        }
        }
        return permInfos;
        return permInfos;
    }
    }

    private void setPreferenceCheckedIfPresent(String preferenceKey, boolean checked) {
        Preference pref = findPreference(preferenceKey);
        if (pref instanceof SwitchPreference) {
            ((SwitchPreference) pref).setChecked(checked);
        }
    }
}
}