diff --git a/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollProgressBarDrawable.java b/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollProgressBarDrawable.java index aa3f77010bc..75251cf381f 100644 --- a/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollProgressBarDrawable.java +++ b/src/com/android/settings/biometrics/fingerprint/UdfpsEnrollProgressBarDrawable.java @@ -202,6 +202,7 @@ public class UdfpsEnrollProgressBarDrawable extends Drawable { return; } + mShowingHelp = showingHelp; if (mShowingHelp) { if (mVibrator != null && mIsAccessibilityEnabled) { mVibrator.vibrate(Process.myUid(), mContext.getOpPackageName(), @@ -228,7 +229,6 @@ public class UdfpsEnrollProgressBarDrawable extends Drawable { } } - mShowingHelp = showingHelp; mRemainingSteps = remainingSteps; mTotalSteps = totalSteps; diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java index 0f12d1e5023..a23ededd477 100644 --- a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java +++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrollingTest.java @@ -147,6 +147,23 @@ public class FingerprintEnrollEnrollingTest { verify(mVibrator, never()).vibrate(anyInt(), anyString(), any(), anyString(), any()); } + @Test + public void fingerprintUdfpsEnrollInitStage_afterOnEnrollmentHelp_shouldVibrate() { + initializeActivityFor(TYPE_UDFPS_OPTICAL); + + assertThat(getLayout().getDescriptionText()).isNotEqualTo(""); + + mActivity.configureEnrollmentStage(0 /* lottie */); + mActivity.onEnrollmentHelp(1/* FINGERPRINT_ACQUIRED_PARTIAL */, mContext.getString( + com.android.internal.R.string.fingerprint_acquired_partial)); + + verify(mVibrator, never()).vibrate(anyInt(), anyString(), any(), anyString(), any()); + + mActivity.onEnrollmentProgressChange(1, 1); + verify(mVibrator).vibrate(anyInt(), anyString(), any(), anyString(), any()); + + } + @Test public void fingerprintUdfpsOverlayEnrollment_gainFocus_shouldNotCancel() { initializeActivityFor(TYPE_UDFPS_OPTICAL);