Merge "Add onUiReady to AlternativeTouchProvider" into tm-dev am: 6bcd7fdc9a

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

Change-Id: Ie2faa94114f533760485fb7e6eb6540121dd2cc7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Ilya Matyukhin
2022-05-04 01:26:34 +00:00
committed by Automerger Merge Worker
3 changed files with 19 additions and 4 deletions

View File

@@ -22,6 +22,8 @@ package com.android.systemui.biometrics
interface AlternateUdfpsTouchProvider {
/**
* onPointerDown:
*
* This operation is used to notify the Fingerprint HAL that
* a fingerprint has been detected on the device's screen.
*
@@ -39,4 +41,14 @@ interface AlternateUdfpsTouchProvider {
* See fingerprint/ISession#onPointerUp for more details.
*/
fun onPointerUp(pointerId: Long)
/**
* onUiReady:
*
* This operation is used by the callee to notify the Fingerprint HAL that SystemUI is
* correctly configured for the fingerprint capture.
*
* See fingerprint/ISession#onUiReady for more details.
*/
fun onUiReady()
}

View File

@@ -818,7 +818,11 @@ public class UdfpsController implements DozeReceiver {
final UdfpsView view = mOverlay.getOverlayView();
if (view != null) {
view.startIllumination(() -> {
mFingerprintManager.onUiReady(requestId, mSensorId);
if (mAlternateTouchProvider != null) {
mAlternateTouchProvider.onUiReady();
} else {
mFingerprintManager.onUiReady(requestId, mSensorId);
}
mLatencyTracker.onActionEnd(LatencyTracker.ACTION_UDFPS_ILLUMINATE);
});
}

View File

@@ -597,9 +597,8 @@ public class UdfpsControllerTest extends SysuiTestCase {
verify(mKeyguardUpdateMonitor).onUdfpsPointerDown(eq((int) TEST_REQUEST_ID));
// AND onIlluminatedRunnable notifies FingerprintManager about onUiReady
mOnIlluminatedRunnableCaptor.getValue().run();
InOrder inOrder = inOrder(mFingerprintManager, mLatencyTracker);
inOrder.verify(mFingerprintManager).onUiReady(
eq(TEST_REQUEST_ID), eq(mUdfpsController.mSensorId));
InOrder inOrder = inOrder(mAlternateTouchProvider, mLatencyTracker);
inOrder.verify(mAlternateTouchProvider).onUiReady();
inOrder.verify(mLatencyTracker).onActionEnd(eq(LatencyTracker.ACTION_UDFPS_ILLUMINATE));
}