summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Juan Sebastian Martinez <juansmartinez@google.com> 2023-10-30 13:28:45 -0700
committer Juan Sebastian Martinez <juansmartinez@google.com> 2023-10-30 13:43:47 -0700
commitbf8833a56b063da720de085dfee6b5ba5c8b74af (patch)
tree550781b8fbb86b1ad74eae9ff2dd40441ff79528
parent2d68f3f99d05852033867116a393a87aa6ae9930 (diff)
Cleanup of the flag ONE_WAY_HAPTICS_API_MIGRATION on UdfpsController
Test: atest SystemUITests:UdfpsControllerTest Bug: 290213663 Change-Id: Ied9fd361f7b23a49cd96f55686c62d436f5f6aa9
-rw-r--r--packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java48
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java84
2 files changed, 15 insertions, 117 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java
index c9e4cbe30a2c..6bc137f8a943 100644
--- a/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java
+++ b/packages/SystemUI/src/com/android/systemui/biometrics/UdfpsController.java
@@ -26,7 +26,6 @@ import static android.hardware.biometrics.BiometricOverlayConstants.REASON_ENROL
import static com.android.internal.util.Preconditions.checkNotNull;
import static com.android.systemui.classifier.Classifier.UDFPS_AUTHENTICATION;
-import static com.android.systemui.flags.Flags.ONE_WAY_HAPTICS_API_MIGRATION;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -45,7 +44,6 @@ import android.hardware.input.InputManager;
import android.os.Build;
import android.os.Handler;
import android.os.PowerManager;
-import android.os.Process;
import android.os.Trace;
import android.os.VibrationAttributes;
import android.os.VibrationEffect;
@@ -725,23 +723,14 @@ public class UdfpsController implements DozeReceiver, Dumpable {
@VisibleForTesting
public void playStartHaptic() {
if (mAccessibilityManager.isTouchExplorationEnabled()) {
- if (mFeatureFlags.isEnabled(ONE_WAY_HAPTICS_API_MIGRATION)) {
- if (mOverlay != null && mOverlay.getOverlayView() != null) {
- mVibrator.performHapticFeedback(
- mOverlay.getOverlayView(),
- HapticFeedbackConstants.CONTEXT_CLICK
- );
- } else {
- Log.e(TAG, "No haptics played. Could not obtain overlay view to perform"
- + "vibration. Either the controller overlay is null or has no view");
- }
+ if (mOverlay != null && mOverlay.getOverlayView() != null) {
+ mVibrator.performHapticFeedback(
+ mOverlay.getOverlayView(),
+ HapticFeedbackConstants.CONTEXT_CLICK
+ );
} else {
- mVibrator.vibrate(
- Process.myUid(),
- mContext.getOpPackageName(),
- EFFECT_CLICK,
- "udfps-onStart-click",
- UDFPS_VIBRATION_ATTRIBUTES);
+ Log.e(TAG, "No haptics played. Could not obtain overlay view to perform"
+ + "vibration. Either the controller overlay is null or has no view");
}
}
}
@@ -835,23 +824,14 @@ public class UdfpsController implements DozeReceiver, Dumpable {
mKeyguardViewManager.showPrimaryBouncer(true);
// play the same haptic as the LockIconViewController longpress
- if (mFeatureFlags.isEnabled(ONE_WAY_HAPTICS_API_MIGRATION)) {
- if (mOverlay != null && mOverlay.getOverlayView() != null) {
- mVibrator.performHapticFeedback(
- mOverlay.getOverlayView(),
- UdfpsController.LONG_PRESS
- );
- } else {
- Log.e(TAG, "No haptics played. Could not obtain overlay view to perform"
- + "vibration. Either the controller overlay is null or has no view");
- }
+ if (mOverlay != null && mOverlay.getOverlayView() != null) {
+ mVibrator.performHapticFeedback(
+ mOverlay.getOverlayView(),
+ UdfpsController.LONG_PRESS
+ );
} else {
- mVibrator.vibrate(
- Process.myUid(),
- mContext.getOpPackageName(),
- UdfpsController.EFFECT_CLICK,
- "aod-lock-icon-longpress",
- LOCK_ICON_VIBRATION_ATTRIBUTES);
+ Log.e(TAG, "No haptics played. Could not obtain overlay view to perform"
+ + "vibration. Either the controller overlay is null or has no view");
}
return;
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java
index dcb53984ad87..19eb60cf8b90 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java
@@ -23,9 +23,7 @@ import static android.view.MotionEvent.ACTION_UP;
import static com.android.internal.util.FunctionalUtils.ThrowingConsumer;
import static com.android.systemui.classifier.Classifier.UDFPS_AUTHENTICATION;
-import static com.android.systemui.flags.Flags.ONE_WAY_HAPTICS_API_MIGRATION;
-import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertTrue;
@@ -34,7 +32,6 @@ import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyFloat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyLong;
-import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.inOrder;
import static org.mockito.Mockito.mock;
@@ -59,7 +56,6 @@ import android.hardware.input.InputManager;
import android.os.Handler;
import android.os.PowerManager;
import android.os.RemoteException;
-import android.os.VibrationAttributes;
import android.testing.TestableLooper.RunWithLooper;
import android.util.Pair;
import android.view.HapticFeedbackConstants;
@@ -1047,35 +1043,6 @@ public class UdfpsControllerTest extends SysuiTestCase {
mHoverListenerCaptor.getValue().onHover(mUdfpsView, enterEvent);
enterEvent.recycle();
- // THEN tick haptic is played
- verify(mVibrator).vibrate(
- anyInt(),
- anyString(),
- any(),
- eq("udfps-onStart-click"),
- eq(UdfpsController.UDFPS_VIBRATION_ATTRIBUTES));
-
- // THEN make sure vibration attributes has so that it always will play the haptic,
- // even in battery saver mode
- assertEquals(VibrationAttributes.USAGE_COMMUNICATION_REQUEST,
- UdfpsController.UDFPS_VIBRATION_ATTRIBUTES.getUsage());
- }
-
- @Test
- public void playHapticOnTouchUdfpsArea_a11yTouchExplorationEnabled_oneWayHapticsEnabled()
- throws RemoteException {
- when(mFeatureFlags.isEnabled(ONE_WAY_HAPTICS_API_MIGRATION)).thenReturn(true);
-
- final Pair<TouchProcessorResult, TouchProcessorResult> touchProcessorResult =
- givenFingerEvent(InteractionEvent.DOWN, InteractionEvent.UP, true);
-
- // WHEN ACTION_HOVER is received
- when(mSinglePointerTouchProcessor.processTouch(any(), anyInt(), any())).thenReturn(
- touchProcessorResult.first);
- MotionEvent enterEvent = MotionEvent.obtain(0, 0, MotionEvent.ACTION_HOVER_ENTER, 0, 0, 0);
- mHoverListenerCaptor.getValue().onHover(mUdfpsView, enterEvent);
- enterEvent.recycle();
-
// THEN context click haptic is played
verify(mVibrator).performHapticFeedback(
any(),
@@ -1097,31 +1064,6 @@ public class UdfpsControllerTest extends SysuiTestCase {
downEvent.recycle();
// THEN NO haptic played
- verify(mVibrator, never()).vibrate(
- anyInt(),
- anyString(),
- any(),
- anyString(),
- any());
- }
-
- @Test
- public void noHapticOnTouchUdfpsArea_a11yTouchExplorationDisabled__oneWayHapticsEnabled()
- throws RemoteException {
- when(mFeatureFlags.isEnabled(ONE_WAY_HAPTICS_API_MIGRATION)).thenReturn(true);
-
- final Pair<TouchProcessorResult, TouchProcessorResult> touchProcessorResult =
- givenFingerEvent(InteractionEvent.DOWN, InteractionEvent.UP, false);
-
- // WHEN ACTION_DOWN is received
- when(mSinglePointerTouchProcessor.processTouch(any(), anyInt(), any())).thenReturn(
- touchProcessorResult.first);
- MotionEvent downEvent = MotionEvent.obtain(0, 0, ACTION_DOWN, 0, 0, 0);
- mTouchListenerCaptor.getValue().onTouch(mUdfpsView, downEvent);
- mBiometricExecutor.runAllReady();
- downEvent.recycle();
-
- // THEN NO haptic played
verify(mVibrator, never()).performHapticFeedback(any(), anyInt());
}
@@ -1347,32 +1289,8 @@ public class UdfpsControllerTest extends SysuiTestCase {
}
@Test
- public void playHaptic_onAodInterrupt_oneWayHapticsDisabled_onAcquiredBad_usesVibrate()
- throws RemoteException {
- // GIVEN UDFPS overlay is showing
- mOverlayController.showUdfpsOverlay(TEST_REQUEST_ID, mOpticalProps.sensorId,
- BiometricOverlayConstants.REASON_AUTH_KEYGUARD, mUdfpsOverlayControllerCallback);
- mFgExecutor.runAllReady();
-
- // GIVEN there's been an AoD interrupt
- when(mKeyguardUpdateMonitor.isFingerprintDetectionRunning()).thenReturn(false);
- mScreenObserver.onScreenTurnedOn();
- mUdfpsController.onAodInterrupt(0, 0, 0, 0);
-
- // THEN vibrate is used
- verify(mVibrator).vibrate(
- anyInt(),
- anyString(),
- eq(UdfpsController.EFFECT_CLICK),
- eq("aod-lock-icon-longpress"),
- eq(UdfpsController.LOCK_ICON_VIBRATION_ATTRIBUTES)
- );
- }
-
- @Test
- public void playHaptic_onAodInterrupt_oneWayHapticsEnabled_onAcquiredBad_performHapticFeedback()
+ public void playHaptic_onAodInterrupt_onAcquiredBad_performHapticFeedback()
throws RemoteException {
- when(mFeatureFlags.isEnabled(ONE_WAY_HAPTICS_API_MIGRATION)).thenReturn(true);
// GIVEN UDFPS overlay is showing
mOverlayController.showUdfpsOverlay(TEST_REQUEST_ID, mOpticalProps.sensorId,
BiometricOverlayConstants.REASON_AUTH_KEYGUARD, mUdfpsOverlayControllerCallback);