Remove face/fignerprint search if not present

Test: Verified manually with a device that if face/fingerprint are not
present they do not show up.
Fixes: 350599580
Flag: EXEMPT bugfix

Change-Id: I6a691d2985e4839336e9c08dfa6c97abe23f43f2
This commit is contained in:
Joshua McCloskey
2024-07-24 16:19:33 +00:00
committed by Joshua Mccloskey
parent 441a202444
commit ed59922ca8
5 changed files with 77 additions and 1 deletions

View File

@@ -159,11 +159,27 @@ public class FingerprintSettings extends SubSettings {
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
new BaseSearchIndexProvider(R.xml.security_settings_fingerprint) {
@Override
protected boolean isPageSearchEnabled(Context context) {
return super.isPageSearchEnabled(context) &&
hasEnrolledFingerprints(context);
}
@Override
public List<AbstractPreferenceController>
createPreferenceControllers(Context context) {
return createThePreferenceControllers(context);
}
private boolean hasEnrolledFingerprints(Context context) {
final FingerprintManager fingerprintManager =
Utils.getFingerprintManagerOrNull(context);
if (fingerprintManager != null) {
return fingerprintManager.hasEnrolledTemplates(UserHandle.myUserId());
}
return false;
}
};
private static List<AbstractPreferenceController> createThePreferenceControllers(Context