Merge "Fix touches passing though Notification Bar drag down" into udc-dev

This commit is contained in:
Austin Delgado
2023-05-03 14:39:27 +00:00
committed by Android (Google) Code Review
2 changed files with 11 additions and 6 deletions

View File

@@ -553,6 +553,10 @@ public class UdfpsController implements DozeReceiver, Dumpable {
+ mOverlay.getRequestId());
return false;
}
if (mLockscreenShadeTransitionController.getQSDragProgress() != 0f
|| mPrimaryBouncerInteractor.isInTransit()) {
return false;
}
final TouchProcessorResult result = mTouchProcessor.processTouch(event, mActivePointerId,
mOverlayParams);
@@ -626,9 +630,8 @@ public class UdfpsController implements DozeReceiver, Dumpable {
shouldPilfer = true;
}
// Execute the pilfer, never pilfer if a vertical swipe is in progress
if (shouldPilfer && mLockscreenShadeTransitionController.getQSDragProgress() == 0f
&& !mPrimaryBouncerInteractor.isInTransit()) {
// Execute the pilfer
if (shouldPilfer) {
mInputManager.pilferPointers(
mOverlay.getOverlayView().getViewRootImpl().getInputToken());
}

View File

@@ -1388,7 +1388,7 @@ public class UdfpsControllerTest extends SysuiTestCase {
}
@Test
public void onTouch_withNewTouchDetection_doNotPilferWhenPullingUpBouncer()
public void onTouch_withNewTouchDetection_doNotProcessTouchWhenPullingUpBouncer()
throws RemoteException {
final NormalizedTouchData touchData = new NormalizedTouchData(0, 0f, 0f, 0f, 0f, 0f, 0L,
0L);
@@ -1427,8 +1427,10 @@ public class UdfpsControllerTest extends SysuiTestCase {
mBiometricExecutor.runAllReady();
moveEvent.recycle();
// THEN the touch is NOT pilfered
verify(mInputManager, never()).pilferPointers(any());
// THEN the touch is NOT processed
verify(mFingerprintManager, never()).onPointerDown(anyLong(), anyInt(), anyInt(),
anyFloat(), anyFloat(), anyFloat(), anyFloat(), anyFloat(), anyLong(), anyLong(),
anyBoolean());
}
@Test