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

Commit 8726f8a5 authored by Jorim Jaggi's avatar Jorim Jaggi Committed by Android (Google) Code Review
Browse files

Merge "Pressing back when QS is open only collapses QS"

parents 9974690e bd003100
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -132,6 +132,7 @@ public class NotificationPanelView extends PanelView implements
     * need to take this into account in our panel height calculation.
     */
    private int mScrollYOverride = -1;
    private boolean mQsAnimatorExpand;

    public NotificationPanelView(Context context, AttributeSet attrs) {
        super(context, attrs);
@@ -308,6 +309,18 @@ public class NotificationPanelView extends PanelView implements
        setQsExpansion(mQsMinExpansionHeight);
    }

    public void animateCloseQs() {
        if (mQsExpansionAnimator != null) {
            if (!mQsAnimatorExpand) {
                return;
            }
            float height = mQsExpansionHeight;
            mQsExpansionAnimator.cancel();
            setQsExpansion(height);
        }
        flingSettings(0 /* vel */, false);
    }

    public void openQs() {
        cancelAnimation();
        if (mQsExpansionEnabled) {
@@ -738,6 +751,7 @@ public class NotificationPanelView extends PanelView implements
        });
        animator.start();
        mQsExpansionAnimator = animator;
        mQsAnimatorExpand = expand;
    }

    /**
@@ -1228,4 +1242,8 @@ public class NotificationPanelView extends PanelView implements
            mReserveNotificationSpace.setVisibility(View.GONE);
        }
    }

    public boolean isQsExpanded() {
        return mQsExpanded;
    }
}
+13 −2
Original line number Diff line number Diff line
@@ -2901,9 +2901,20 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,

    public boolean onBackPressed() {
        if (mState == StatusBarState.KEYGUARD || mState == StatusBarState.SHADE_LOCKED) {
            return mStatusBarKeyguardViewManager.onBackPressed();
            if (mStatusBarKeyguardViewManager.onBackPressed()) {
                return true;
            }
            if (mNotificationPanel.isQsExpanded()) {
                mNotificationPanel.animateCloseQs();
                return true;
            }
            return false;
        } else {
            if (mNotificationPanel.isQsExpanded()) {
                mNotificationPanel.animateCloseQs();
            } else {
                animateCollapsePanels();
            }
            return true;
        }
    }