From 5278011bec8162245d9f6be2e3cd81c567818c65 Mon Sep 17 00:00:00 2001 From: Ilya Matyukhin Date: Wed, 7 Dec 2022 08:26:31 +0000 Subject: [PATCH] Prepare AlternateTouchProvider to be injected as null Bug: 250710937 Test: N/A Change-Id: Ibe8e2ad2d8ff8fa1ac4cf55036b4c43e92e753b6 --- .../systemui/biometrics/UdfpsOverlay.kt | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsOverlay.kt b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsOverlay.kt index 142642a2411f1..802b9b6c02959 100644 --- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsOverlay.kt +++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsOverlay.kt @@ -42,6 +42,7 @@ import com.android.systemui.util.concurrency.Execution import java.util.Optional import java.util.concurrent.Executor import javax.inject.Inject +import javax.inject.Provider import kotlin.math.cos import kotlin.math.pow import kotlin.math.sin @@ -64,7 +65,7 @@ constructor( private val fingerprintManager: FingerprintManager?, private val handler: Handler, private val biometricExecutor: Executor, - private val alternateTouchProvider: Optional, + private val alternateTouchProvider: Optional>, @Main private val fgExecutor: DelayableExecutor, private val keyguardUpdateMonitor: KeyguardUpdateMonitor, private val authController: AuthController, @@ -126,6 +127,7 @@ constructor( if (!processedMotionEvent && goodOverlap) { biometricExecutor.execute { alternateTouchProvider + .map(Provider::get) .get() .onPointerDown( requestId, @@ -142,7 +144,10 @@ constructor( view.configureDisplay { biometricExecutor.execute { - alternateTouchProvider.get().onUiReady() + alternateTouchProvider + .map(Provider::get) + .get() + .onUiReady() } } @@ -158,7 +163,10 @@ constructor( MotionEvent.ACTION_CANCEL -> { if (processedMotionEvent && alternateTouchProvider.isPresent) { biometricExecutor.execute { - alternateTouchProvider.get().onPointerUp(requestId) + alternateTouchProvider + .map(Provider::get) + .get() + .onPointerUp(requestId) } fgExecutor.execute { if (keyguardUpdateMonitor.isFingerprintDetectionRunning) { @@ -241,7 +249,10 @@ constructor( if (overlayView != null && isShowing && alternateTouchProvider.isPresent) { if (processedMotionEvent) { biometricExecutor.execute { - alternateTouchProvider.get().onPointerUp(requestId) + alternateTouchProvider + .map(Provider::get) + .get() + .onPointerUp(requestId) } fgExecutor.execute { if (keyguardUpdateMonitor.isFingerprintDetectionRunning) {