From 65f53e98e352580cba8892c3c0c4194d782b5593 Mon Sep 17 00:00:00 2001 From: Vincent Wang Date: Thu, 21 Jul 2022 16:52:37 +0800 Subject: [PATCH] Fix Delete face model button flicker Update the visibility of button in onCreate & onActivityResult to avoid button flicker Bug: 191112124 Test: Reference reproduce step in b/191112124 Change-Id: I68e42433631db27e3f8f03ab4fc68e2326852f9b --- .../settings/biometrics/face/FaceSettings.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/com/android/settings/biometrics/face/FaceSettings.java b/src/com/android/settings/biometrics/face/FaceSettings.java index dc94376b91d..3710528ef4c 100644 --- a/src/com/android/settings/biometrics/face/FaceSettings.java +++ b/src/com/android/settings/biometrics/face/FaceSettings.java @@ -203,6 +203,10 @@ public class FaceSettings extends DashboardFragment { if (savedInstanceState != null) { mToken = savedInstanceState.getByteArray(KEY_TOKEN); } + + final boolean hasEnrolled = mFaceManager.hasEnrolledTemplates(mUserId); + mEnrollButton.setVisible(!hasEnrolled); + mRemoveButton.setVisible(hasEnrolled); } @Override @@ -230,10 +234,6 @@ public class FaceSettings extends DashboardFragment { mEnrollController.setToken(mToken); } - final boolean hasEnrolled = mFaceManager.hasEnrolledTemplates(mUserId); - mEnrollButton.setVisible(!hasEnrolled); - mRemoveButton.setVisible(hasEnrolled); - if (!mFaceFeatureProvider.isAttentionSupported(getContext())) { removePreference(FaceSettingsAttentionPreferenceController.KEY); } @@ -261,6 +261,10 @@ public class FaceSettings extends DashboardFragment { mEnrollController.setToken(mToken); mConfirmingPassword = false; }); + + final boolean hasEnrolled = mFaceManager.hasEnrolledTemplates(mUserId); + mEnrollButton.setVisible(!hasEnrolled); + mRemoveButton.setVisible(hasEnrolled); } } else if (requestCode == ENROLL_REQUEST) { if (resultCode == RESULT_TIMEOUT) {