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

Commit 9a8c0ebf authored by Caitlin Cassidy's avatar Caitlin Cassidy Committed by Automerger Merge Worker
Browse files

Merge "Allow swiping down from area directly below notch to trigger QS instead...

Merge "Allow swiping down from area directly below notch to trigger QS instead of notification shade." into sc-dev am: 40116423

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15108769

Change-Id: I05429d6e78c11e6373a321ee23b660f66744a976
parents c176e771 40116423
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -590,6 +590,7 @@ public class NotificationPanelViewController extends PanelViewController {
     */
    private ValueAnimator mQsClippingAnimation = null;
    private final Rect mKeyguardStatusAreaClipBounds = new Rect();
    private final Region mQsInterceptRegion = new Region();

    /**
     * The alpha of the views which only show on the keyguard but not in shade / shade locked
@@ -2670,10 +2671,16 @@ public class NotificationPanelViewController extends PanelViewController {
            return false;
        }
        View header = mKeyguardShowing || mQs == null ? mKeyguardStatusBar : mQs.getHeader();
        final boolean
                onHeader =
                x >= mQsFrame.getX() && x <= mQsFrame.getX() + mQsFrame.getWidth()
                        && y >= header.getTop() && y <= header.getBottom();

        mQsInterceptRegion.set(
                /* left= */ (int) mQsFrame.getX(),
                /* top= */ header.getTop(),
                /* right= */ (int) mQsFrame.getX() + mQsFrame.getWidth(),
                /* bottom= */ header.getBottom());
        // Also allow QS to intercept if the touch is near the notch.
        mStatusBarTouchableRegionManager.updateRegionForNotch(mQsInterceptRegion);
        final boolean onHeader = mQsInterceptRegion.contains((int) x, (int) y);

        if (mQsExpanded) {
            return onHeader || (yDiff < 0 && isInQsArea(x, y));
        } else {
+1 −1
Original line number Diff line number Diff line
@@ -223,7 +223,7 @@ public final class StatusBarTouchableRegionManager implements Dumpable {
        }
    }

    private void updateRegionForNotch(Region touchableRegion) {
    void updateRegionForNotch(Region touchableRegion) {
        WindowInsets windowInsets = mNotificationShadeWindowView.getRootWindowInsets();
        if (windowInsets == null) {
            Log.w(TAG, "StatusBarWindowView is not attached.");