Implement policy transparency for CredMan

This CL implements policy transparency for
Credential Manager settings.

Screenshots:
https://hsv.googleplex.com/5502938857340928
https://hsv.googleplex.com/4999933426925568

Test: on device w/ test dpc
Bug: 318552220
Change-Id: I78e1fa47541c81e6e2d2bf2c13159be01928e77c
This commit is contained in:
Becca Hughes
2024-02-06 08:23:18 -08:00
parent 0c85e4bca9
commit 9931d03f6f
5 changed files with 125 additions and 31 deletions

View File

@@ -159,6 +159,13 @@ public abstract class RadioButtonPickerFragment extends SettingsPreferenceFragme
String key, CandidateInfo info, String defaultKey, String systemDefaultKey) {
}
/**
* A chance for subclasses to create a custom preference instance.
*/
protected SelectorWithWidgetPreference createPreference() {
return new SelectorWithWidgetPreference(getPrefContext());
}
public void updateCandidates() {
mCandidates.clear();
final List<? extends CandidateInfo> candidateList = getCandidates();
@@ -193,8 +200,7 @@ public abstract class RadioButtonPickerFragment extends SettingsPreferenceFragme
}
if (candidateList != null) {
for (CandidateInfo info : candidateList) {
SelectorWithWidgetPreference pref =
new SelectorWithWidgetPreference(getPrefContext());
SelectorWithWidgetPreference pref = createPreference();
if (customLayoutResId > 0) {
pref.setLayoutResource(customLayoutResId);
}