From dc583a9024cf980e55edcbee283ba0716b53fba9 Mon Sep 17 00:00:00 2001 From: Curtis Belmonte Date: Tue, 7 Sep 2021 14:44:12 -0700 Subject: [PATCH] RESTRICT AUTOMERGE Update UDFPS enroll progress when help received Fixes a bug where the completion animation is sometimes played near the end of enrollment if ACQUIRED_GOOD is followed by a help message. Test: Manual Bug: 198989936 Bug: 199192982 Change-Id: I0fcf6d2cfbf33fb9b90d3ccf1fcbd7734a55edbd Merged-In: Ifda20133f1ee90c9e1612e9066c19efbb6ffc9cd Merged-In: Ic12b85bd6f8f1d4068952eb83bcc8a1df21f2e8e --- .../systemui/biometrics/UdfpsController.java | 1 + .../biometrics/UdfpsEnrollHelper.java | 5 +++- .../systemui/biometrics/UdfpsEnrollView.java | 5 ++++ .../biometrics/UdfpsEnrollViewController.java | 23 +++++++++++-------- 4 files changed, 24 insertions(+), 10 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java index 1cea1f655e648..ac7a18a3fbd47 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java @@ -217,6 +217,7 @@ public class UdfpsController implements DozeReceiver { } void onEnrollmentHelp() { + Log.d(TAG, "onEnrollmentHelp"); if (mEnrollHelper != null) { mEnrollHelper.onEnrollmentHelp(); } diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollHelper.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollHelper.java index bce013d1df53a..c209afa571e37 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollHelper.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollHelper.java @@ -56,6 +56,7 @@ public class UdfpsEnrollHelper { interface Listener { void onEnrollmentProgress(int remaining, int totalSteps); + void onEnrollmentHelp(int remaining, int totalSteps); void onLastStepAcquired(); } @@ -173,7 +174,9 @@ public class UdfpsEnrollHelper { } void onEnrollmentHelp() { - + if (mListener != null) { + mListener.onEnrollmentHelp(mRemainingSteps, mTotalSteps); + } } void setListener(Listener listener) { diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollView.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollView.java index 5e58e0841bd03..6f02c64e4cf75 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollView.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollView.java @@ -83,6 +83,11 @@ public class UdfpsEnrollView extends UdfpsAnimationView { }); } + void onEnrollmentHelp(int remaining, int totalSteps) { + mHandler.post( + () -> mFingerprintProgressDrawable.setEnrollmentProgress(remaining, totalSteps)); + } + void onLastStepAcquired() { mHandler.post(() -> { mFingerprintProgressDrawable.onLastStepAcquired(); diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollViewController.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollViewController.java index 9ae24db188357..6cdd1c8b0d4ea 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollViewController.java +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsEnrollViewController.java @@ -33,16 +33,21 @@ public class UdfpsEnrollViewController extends UdfpsAnimationViewController