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

Commit b811f00c authored by Jeff DeCew's avatar Jeff DeCew
Browse files

Fix NSSL falsing in all builds

Touch events were getting processed multiple times by the FalsingManager, leading to incorrect falsing and the UI being reset. These fixes ensure each touch gets processed once, and by the correct owner.

This is a followup of I228090b917a25a7d1ac459c10f0a1d98167d435a that removes the flag guarding so that this change applies to all builds.

Flag: NONE
Test: manual; observe falsing logs when swiping on shade
Fixes: 316551193
Change-Id: Ieaecd1272cf297f23dce6f72b52fd4912a1a0a66
parent cebc0923
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -66,6 +66,16 @@ flag {
    bug: "308623704"
}

flag {
    name: "nssl_falsing_fix"
    namespace: "systemui"
    description: "Minor touch changes to prevent falsing errors in NSSL"
    bug: "316551193"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "refactor_get_current_user"
    namespace: "systemui"
+2 −1
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ import androidx.annotation.FloatRange
import androidx.annotation.VisibleForTesting
import com.android.systemui.Dumpable
import com.android.systemui.ExpandHelper
import com.android.systemui.Flags.nsslFalsingFix
import com.android.systemui.Gefingerpoken
import com.android.systemui.biometrics.UdfpsKeyguardViewControllerLegacy
import com.android.systemui.classifier.Classifier
@@ -889,7 +890,7 @@ class DragDownHelper(
                    isDraggingDown = false
                    isTrackpadReverseScroll = false
                    shadeRepository.setLegacyLockscreenShadeTracking(false)
                    if (KeyguardShadeMigrationNssl.isEnabled) {
                    if (nsslFalsingFix() || KeyguardShadeMigrationNssl.isEnabled) {
                        return true
                    }
                } else {
+3 −2
Original line number Diff line number Diff line
@@ -21,8 +21,9 @@ import static android.service.notification.NotificationStats.DISMISS_SENTIMENT_N

import static com.android.app.animation.Interpolators.STANDARD;
import static com.android.internal.jank.InteractionJankMonitor.CUJ_NOTIFICATION_SHADE_SCROLL_FLING;
import static com.android.systemui.Dependency.ALLOW_NOTIFICATION_LONG_PRESS_NAME;
import static com.android.server.notification.Flags.screenshareNotificationHiding;
import static com.android.systemui.Dependency.ALLOW_NOTIFICATION_LONG_PRESS_NAME;
import static com.android.systemui.Flags.nsslFalsingFix;
import static com.android.systemui.statusbar.StatusBarState.KEYGUARD;
import static com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout.OnEmptySpaceClickListener;
import static com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout.OnOverscrollTopChangedListener;
@@ -2054,7 +2055,7 @@ public class NotificationStackScrollLayoutController implements Dumpable {
            }
            boolean horizontalSwipeWantsIt = false;
            boolean scrollerWantsIt = false;
            if (KeyguardShadeMigrationNssl.isEnabled()) {
            if (nsslFalsingFix() || KeyguardShadeMigrationNssl.isEnabled()) {
                // Reverse the order relative to the else statement. onScrollTouch will reset on an
                // UP event, causing horizontalSwipeWantsIt to be set to true on vertical swipes.
                if (mLongPressedView == null && !mView.isBeingDragged()