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

Commit 40116423 authored by Caitlin Cassidy's avatar Caitlin Cassidy Committed by Android (Google) Code Review
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
parents 4c7368f7 b8842318
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.");