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

Commit 68c40f32 authored by Altaf-Mahdi's avatar Altaf-Mahdi Committed by Roman Birg
Browse files

SystemUI: fix QS quick pull down

Use the new method isOpenQsEvent(MotionEvent event) introduced in M

Change-Id: I7b72ac0dc6e3c6a118cd60d11922f9ec71cd2a2d
parent 536e68f1
Loading
Loading
Loading
Loading
+11 −22
Original line number Diff line number Diff line
@@ -807,13 +807,7 @@ public class NotificationPanelView extends PanelView implements
                && mQsExpansionEnabled) {
            mTwoFingerQsExpandPossible = true;
        }
        boolean twoFingerQsEvent = mTwoFingerQsExpandPossible
                && (event.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN
                && event.getPointerCount() == 2);
        boolean oneFingerQsOverride = mOneFingerQuickSettingsIntercept
                && event.getActionMasked() == MotionEvent.ACTION_DOWN
                && shouldQuickSettingsIntercept(event.getX(), event.getY(), -1, false);
        if ((twoFingerQsEvent || oneFingerQsOverride) && isOpenQsEvent(event)
        if (mTwoFingerQsExpandPossible && isOpenQsEvent(event)
                && event.getY(event.getActionIndex()) < mStatusBarMinHeight) {
            MetricsLogger.count(mContext, COUNTER_PANEL_OPEN_QS, 1);
            mQsExpandImmediate = true;
@@ -847,7 +841,14 @@ public class NotificationPanelView extends PanelView implements
                && (event.isButtonPressed(MotionEvent.BUTTON_SECONDARY)
                        || event.isButtonPressed(MotionEvent.BUTTON_TERTIARY));

        return twoFingerDrag || stylusButtonClickDrag || mouseButtonClickDrag;
        final float w = getMeasuredWidth();
        final float x = event.getX();
        float region = (w * (1.f/4.f)); // TODO overlay region fraction?
        final boolean showQsOverride = mOneFingerQuickSettingsIntercept &&
                isLayoutRtl() ? (x < region) : (w - region < x)
                        && mStatusBarState == StatusBarState.SHADE;

        return twoFingerDrag || showQsOverride || stylusButtonClickDrag || mouseButtonClickDrag;
    }

    private void handleQsDown(MotionEvent event) {
@@ -1504,29 +1505,17 @@ public class NotificationPanelView extends PanelView implements
     * @return Whether we should intercept a gesture to open Quick Settings.
     */
    private boolean shouldQuickSettingsIntercept(float x, float y, float yDiff) {
        return shouldQuickSettingsIntercept(x, y, yDiff, true);
    }

    /**
     * @return Whether we should intercept a gesture to open Quick Settings.
     */
    private boolean shouldQuickSettingsIntercept(float x, float y, float yDiff, boolean useHeader) {
        if (!mQsExpansionEnabled || mCollapsedOnDown) {
            return false;
        }
        View header = mKeyguardShowing ? mKeyguardStatusBar : mHeader;
        boolean onHeader = useHeader && x >= header.getX() && x <= header.getX() + header.getWidth()
        boolean onHeader = x >= header.getX() && x <= header.getX() + header.getWidth()
                && y >= header.getTop() && y <= header.getBottom();

        final float w = getMeasuredWidth();
        float region = (w * (1.f/3.f)); // TODO overlay region fraction?
        final boolean showQsOverride = isLayoutRtl() ? (x < region) : (w - region < x)
                        && mStatusBarState == StatusBarState.SHADE;

        if (mQsExpanded) {
            return onHeader || (mScrollView.isScrolledToBottom() && yDiff < 0) && isInQsArea(x, y);
        } else {
            return onHeader || showQsOverride;
            return onHeader;
        }
    }