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

Commit d687b85f 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 am: bc050cb6

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

Change-Id: Icfd76d86e408271bd5f14f8a725377d2a45a4110
parents cb7b1667 bc050cb6
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -592,6 +592,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
@@ -2684,10 +2685,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.");