Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ad280f99 authored by Joe Bolinger's avatar Joe Bolinger Committed by Automerger Merge Worker
Browse files

Merge "Always play haptic on UDFPS reject." into tm-d1-dev am: fb18e86f am:...

Merge "Always play haptic on UDFPS reject." into tm-d1-dev am: fb18e86f am: 29718303 am: e5befe9d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17946388



Change-Id: Ia4770218749aa7951556c048cc94ea776c429f05
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents cf7bdd92 e5befe9d
Loading
Loading
Loading
Loading
+3 −18
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@ public class CoexCoordinator {
        void sendHapticFeedback();
    }

    private static CoexCoordinator sInstance;
    private static final CoexCoordinator sInstance = new CoexCoordinator();

    @VisibleForTesting
    public static class SuccessfulAuth {
@@ -147,14 +147,9 @@ public class CoexCoordinator {
        }
    }

    /**
     * @return a singleton instance.
     */
    /** The singleton instance. */
    @NonNull
    public static CoexCoordinator getInstance() {
        if (sInstance == null) {
            sInstance = new CoexCoordinator();
        }
        return sInstance;
    }

@@ -339,18 +334,8 @@ public class CoexCoordinator {
                        auth.mCallback.sendHapticFeedback();
                        auth.mCallback.sendAuthenticationResult(true /* addAuthTokenIfStrong */);
                        auth.mCallback.handleLifecycleAfterAuth();
                    } else if (isFaceScanning()) {
                        // UDFPS rejected but face is still scanning
                        Slog.d(TAG, "UDFPS rejected in multi-sensor auth, face: " + face);
                        callback.handleLifecycleAfterAuth();

                        // TODO(b/193089985): Enforce/ensure that face auth finishes (whether
                        //  accept/reject) within X amount of time. Otherwise users will be stuck
                        //  waiting with their finger down for a long time.
                    } else {
                        // Face not scanning, and was not found in the queue. Most likely, face
                        // auth was too long ago.
                        Slog.d(TAG, "UDFPS rejected in multi-sensor auth, face not scanning");
                        Slog.d(TAG, "UDFPS rejected in multi-sensor auth");
                        callback.sendHapticFeedback();
                        callback.handleLifecycleAfterAuth();
                    }
+2 −2
Original line number Diff line number Diff line
@@ -415,7 +415,7 @@ public class CoexCoordinatorTest {
        // Auth was attempted
        when(mUdfpsClient.getState())
                .thenReturn(AuthenticationClient.STATE_STARTED_PAUSED_ATTEMPTED);
        verify(mCallback, never()).sendHapticFeedback();
        verify(mCallback).sendHapticFeedback();
        verify(mCallback).handleLifecycleAfterAuth();

        // Then face rejected. Note that scheduler leaves UDFPS in the CoexCoordinator since
@@ -425,7 +425,7 @@ public class CoexCoordinatorTest {
                LockoutTracker.LOCKOUT_NONE, faceCallback);
        verify(faceCallback).sendHapticFeedback();
        verify(faceCallback).sendAuthenticationResult(eq(false) /* addAuthTokenIfStrong */);
        verify(mCallback, never()).sendHapticFeedback();
        verify(mCallback).sendHapticFeedback();
    }

    @Test