diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index 24f76bba15fee..5a9d12e3f9b1f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -1079,7 +1079,12 @@ public class PhoneStatusBar extends BaseStatusBar { + " any=" + any + " clearable=" + clearable); } - if (mClearButton.isShown()) { + if (mHasFlipSettings + && mFlipSettingsView != null + && mFlipSettingsView.getVisibility() == View.VISIBLE) { + // the flip settings panel is showing; we should not be shown + mClearButton.setVisibility(View.INVISIBLE); + } else if (mClearButton.isShown()) { if (clearable != (mClearButton.getAlpha() == 1.0f)) { ObjectAnimator clearAnimation = ObjectAnimator.ofFloat( mClearButton, "alpha", clearable ? 1.0f : 0.0f).setDuration(250); @@ -1522,6 +1527,10 @@ public class PhoneStatusBar extends BaseStatusBar { mStatusBarView.collapseAllPanels(true); } + void makeExpandedInvisibleSoon() { + mHandler.postDelayed(new Runnable() { public void run() { makeExpandedInvisible(); }}, 50); + } + void makeExpandedInvisible() { if (SPEW) Slog.d(TAG, "makeExpandedInvisible: mExpandedVisible=" + mExpandedVisible + " mExpandedVisible=" + mExpandedVisible); 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 a27df9494d2f8..1824ba33ab901 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java @@ -154,7 +154,8 @@ public class PhoneStatusBarView extends PanelBar { @Override public void onAllPanelsCollapsed() { super.onAllPanelsCollapsed(); - mBar.makeExpandedInvisible(); + // give animations time to settle + mBar.makeExpandedInvisibleSoon(); mFadingPanel = null; mLastFullyOpenedPanel = null; }