Loading packages/SystemUI/src/com/android/systemui/biometrics/AuthBiometricFaceToFingerprintView.java +10 −3 Original line number Diff line number Diff line Loading @@ -44,11 +44,17 @@ public class AuthBiometricFaceToFingerprintView extends AuthBiometricFaceView { private static final String TAG = "BiometricPrompt/AuthBiometricFaceToFingerprintView"; protected static class UdfpsIconController extends IconController { @BiometricState private int mIconState = STATE_IDLE; protected UdfpsIconController( @NonNull Context context, @NonNull ImageView iconView, @NonNull TextView textView) { super(context, iconView, textView); } void updateState(@BiometricState int newState) { updateState(mIconState, newState); } @Override protected void updateState(int lastState, int newState) { final boolean lastStateIsErrorIcon = Loading Loading @@ -86,6 +92,7 @@ public class AuthBiometricFaceToFingerprintView extends AuthBiometricFaceView { } mState = newState; mIconState = newState; } } Loading Loading @@ -191,11 +198,11 @@ public class AuthBiometricFaceToFingerprintView extends AuthBiometricFaceView { // Deactivate the face icon controller so it stops drawing to the view mFaceIconController.deactivate(); // Then, activate this icon controller. We need to start in the "error" state mUdfpsIconController.updateState(mState, newState); // Then, activate this icon controller. We need to start in the "idle" state mUdfpsIconController.updateState(STATE_IDLE); } } else { // Fingerprint mUdfpsIconController.updateState(mState, newState); mUdfpsIconController.updateState(newState); } super.updateState(newState); Loading packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthBiometricFaceToFingerprintViewTest.java +4 −6 Original line number Diff line number Diff line Loading @@ -101,7 +101,7 @@ public class AuthBiometricFaceToFingerprintViewTest extends SysuiTestCase { mFaceToFpView.onDialogAnimatedIn(); verify(mFaceToFpView.mFaceIconController) .updateState(anyInt(), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING)); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt(), anyInt()); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt()); } @Test Loading @@ -109,13 +109,13 @@ public class AuthBiometricFaceToFingerprintViewTest extends SysuiTestCase { mFaceToFpView.onDialogAnimatedIn(); verify(mFaceToFpView.mFaceIconController) .updateState(anyInt(), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING)); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt(), anyInt()); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt()); mFaceToFpView.updateState(AuthBiometricFaceView.STATE_AUTHENTICATED); verify(mFaceToFpView.mFaceIconController).updateState( eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATED)); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt(), anyInt()); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt()); assertEquals(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATED, mFaceToFpView.mState); } Loading @@ -130,14 +130,12 @@ public class AuthBiometricFaceToFingerprintViewTest extends SysuiTestCase { verify(mFaceToFpView.mFaceIconController).deactivate(); verify(mFaceToFpView.mUdfpsIconController).updateState( eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING), eq(AuthBiometricFaceToFingerprintView.STATE_ERROR)); eq(AuthBiometricFaceToFingerprintView.STATE_IDLE)); verify(mConfirmButton).setVisibility(eq(View.GONE)); mFaceToFpView.updateState(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING); verify(mFaceToFpView.mUdfpsIconController).updateState( eq(AuthBiometricFaceToFingerprintView.STATE_ERROR), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING)); } Loading Loading
packages/SystemUI/src/com/android/systemui/biometrics/AuthBiometricFaceToFingerprintView.java +10 −3 Original line number Diff line number Diff line Loading @@ -44,11 +44,17 @@ public class AuthBiometricFaceToFingerprintView extends AuthBiometricFaceView { private static final String TAG = "BiometricPrompt/AuthBiometricFaceToFingerprintView"; protected static class UdfpsIconController extends IconController { @BiometricState private int mIconState = STATE_IDLE; protected UdfpsIconController( @NonNull Context context, @NonNull ImageView iconView, @NonNull TextView textView) { super(context, iconView, textView); } void updateState(@BiometricState int newState) { updateState(mIconState, newState); } @Override protected void updateState(int lastState, int newState) { final boolean lastStateIsErrorIcon = Loading Loading @@ -86,6 +92,7 @@ public class AuthBiometricFaceToFingerprintView extends AuthBiometricFaceView { } mState = newState; mIconState = newState; } } Loading Loading @@ -191,11 +198,11 @@ public class AuthBiometricFaceToFingerprintView extends AuthBiometricFaceView { // Deactivate the face icon controller so it stops drawing to the view mFaceIconController.deactivate(); // Then, activate this icon controller. We need to start in the "error" state mUdfpsIconController.updateState(mState, newState); // Then, activate this icon controller. We need to start in the "idle" state mUdfpsIconController.updateState(STATE_IDLE); } } else { // Fingerprint mUdfpsIconController.updateState(mState, newState); mUdfpsIconController.updateState(newState); } super.updateState(newState); Loading
packages/SystemUI/tests/src/com/android/systemui/biometrics/AuthBiometricFaceToFingerprintViewTest.java +4 −6 Original line number Diff line number Diff line Loading @@ -101,7 +101,7 @@ public class AuthBiometricFaceToFingerprintViewTest extends SysuiTestCase { mFaceToFpView.onDialogAnimatedIn(); verify(mFaceToFpView.mFaceIconController) .updateState(anyInt(), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING)); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt(), anyInt()); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt()); } @Test Loading @@ -109,13 +109,13 @@ public class AuthBiometricFaceToFingerprintViewTest extends SysuiTestCase { mFaceToFpView.onDialogAnimatedIn(); verify(mFaceToFpView.mFaceIconController) .updateState(anyInt(), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING)); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt(), anyInt()); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt()); mFaceToFpView.updateState(AuthBiometricFaceView.STATE_AUTHENTICATED); verify(mFaceToFpView.mFaceIconController).updateState( eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATED)); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt(), anyInt()); verify(mFaceToFpView.mUdfpsIconController, never()).updateState(anyInt()); assertEquals(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATED, mFaceToFpView.mState); } Loading @@ -130,14 +130,12 @@ public class AuthBiometricFaceToFingerprintViewTest extends SysuiTestCase { verify(mFaceToFpView.mFaceIconController).deactivate(); verify(mFaceToFpView.mUdfpsIconController).updateState( eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING), eq(AuthBiometricFaceToFingerprintView.STATE_ERROR)); eq(AuthBiometricFaceToFingerprintView.STATE_IDLE)); verify(mConfirmButton).setVisibility(eq(View.GONE)); mFaceToFpView.updateState(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING); verify(mFaceToFpView.mUdfpsIconController).updateState( eq(AuthBiometricFaceToFingerprintView.STATE_ERROR), eq(AuthBiometricFaceToFingerprintView.STATE_AUTHENTICATING)); } Loading