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

Commit bc050cb6 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: Ic0821ee41189c3db419a46e714ac1bf60c72e3a8
parents 56d98654 40116423
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.");