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

Commit 1952bb62 authored by Michael Mikhail's avatar Michael Mikhail
Browse files

Increasing Penalty on UMO taps

Increase penalty from low to moderate for action buttons and seekbar in
UMO because they have a big impact on the user experience.

Bug: 241487855.
Test: atest MediaControlPanelTest.
Test: atest SeekbarViewModelTest.
Change-Id: I1186b9a8da6fd3f53b69ec17cca282399d630601
parent 2238b567
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -231,7 +231,8 @@ public class BrightLineFalsingManager implements FalsingManager {

        // check for false tap if it is a seekbar interaction
        if (interactionType == MEDIA_SEEKBAR) {
            localResult[0] &= isFalseTap(LOW_PENALTY);
            localResult[0] &= isFalseTap(mFeatureFlags.isEnabled(Flags.MEDIA_FALSING_PENALTY)
                    ? FalsingManager.MODERATE_PENALTY : FalsingManager.LOW_PENALTY);
        }

        logDebug("False Gesture (type: " + interactionType + "): " + localResult[0]);
+2 −0
Original line number Diff line number Diff line
@@ -291,6 +291,8 @@ object Flags {
    // TODO(b/254513168): Tracking Bug
    @JvmField val UMO_SURFACE_RIPPLE = unreleasedFlag(907, "umo_surface_ripple")

    @JvmField val MEDIA_FALSING_PENALTY = unreleasedFlag(908, "media_falsing_media")

    // 1000 - dock
    val SIMULATE_DOCK_THROUGH_CHARGING = releasedFlag(1000, "simulate_dock_through_charging")

+8 −2
Original line number Diff line number Diff line
@@ -571,7 +571,10 @@ public class MediaControlPanel {
        seamlessView.setContentDescription(deviceString);
        seamlessView.setOnClickListener(
                v -> {
                    if (mFalsingManager.isFalseTap(FalsingManager.LOW_PENALTY)) {
                    if (mFalsingManager.isFalseTap(
                            mFeatureFlags.isEnabled(Flags.MEDIA_FALSING_PENALTY)
                                    ? FalsingManager.MODERATE_PENALTY :
                                    FalsingManager.LOW_PENALTY)) {
                        return;
                    }

@@ -994,7 +997,10 @@ public class MediaControlPanel {
            } else {
                button.setEnabled(true);
                button.setOnClickListener(v -> {
                    if (!mFalsingManager.isFalseTap(FalsingManager.LOW_PENALTY)) {
                    if (!mFalsingManager.isFalseTap(
                            mFeatureFlags.isEnabled(Flags.MEDIA_FALSING_PENALTY)
                                    ? FalsingManager.MODERATE_PENALTY :
                                    FalsingManager.LOW_PENALTY)) {
                        mLogger.logTapAction(button.getId(), mUid, mPackageName, mInstanceId);
                        logSmartspaceCardReported(SMARTSPACE_CARD_CLICK_EVENT);
                        action.run();
+1 −0
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@ public class BrightLineClassifierTest extends SysuiTestCase {

        mGestureFinalizedListener = gestureCompleteListenerCaptor.getValue();
        mFakeFeatureFlags.set(Flags.FALSING_FOR_LONG_TAPS, true);
        mFakeFeatureFlags.set(Flags.MEDIA_FALSING_PENALTY, true);
    }

    @Test
+2 −1
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ import org.junit.runner.RunWith
import org.mockito.ArgumentCaptor
import org.mockito.Mock
import org.mockito.Mockito.any
import org.mockito.Mockito.anyInt
import org.mockito.Mockito.eq
import org.mockito.Mockito.mock
import org.mockito.Mockito.never
@@ -464,7 +465,7 @@ public class SeekBarViewModelTest : SysuiTestCase() {
    fun onFalseTapOrTouch() {
        whenever(mockController.getTransportControls()).thenReturn(mockTransport)
        whenever(falsingManager.isFalseTouch(Classifier.MEDIA_SEEKBAR)).thenReturn(true)
        whenever(falsingManager.isFalseTap(FalsingManager.LOW_PENALTY)).thenReturn(true)
        whenever(falsingManager.isFalseTap(anyInt())).thenReturn(true)
        viewModel.updateController(mockController)
        val pos = 169

Loading