diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java index c9bb15d893f38..c4b7932ba3106 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java @@ -845,15 +845,19 @@ public abstract class PanelView extends FrameLayout { }; public void cancelPeek() { + boolean cancelled = mPeekPending; if (mPeekAnimator != null) { + cancelled = true; mPeekAnimator.cancel(); } removeCallbacks(mPeekRunnable); mPeekPending = false; - // When peeking, we already tell mBar that we expanded ourselves. Make sure that we also - // notify mBar that we might have closed ourselves. - notifyBarPanelExpansionChanged(); + if (cancelled) { + // When peeking, we already tell mBar that we expanded ourselves. Make sure that we also + // notify mBar that we might have closed ourselves. + notifyBarPanelExpansionChanged(); + } } public void expand(final boolean animate) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java index 902fd3d64962b..cc3b4bddb7879 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java @@ -41,7 +41,9 @@ public class PhoneStatusBarView extends PanelBar { private Runnable mHideExpandedRunnable = new Runnable() { @Override public void run() { - mBar.makeExpandedInvisible(); + if (mPanelFraction == 0.0f) { + mBar.makeExpandedInvisible(); + } } }; @@ -135,6 +137,7 @@ public class PhoneStatusBarView extends PanelBar { super.onTrackingStarted(); mBar.onTrackingStarted(); mScrimController.onTrackingStarted(); + removePendingHideExpandedRunnables(); } @Override