fix 2233092 - Notification shade gets stuck half-open
Follow up to bug 2195678. This was one of the reprocussions that I was worried about with respect to that bug, so I'm counting Dr. No on that change as the one for this one.
This commit is contained in:
@@ -692,6 +692,7 @@ public class StatusBarService extends IStatusBar.Stub
|
||||
mTicker.addEntry(n, StatusBarIcon.getIcon(mContext, data), n.tickerText);
|
||||
}
|
||||
}
|
||||
updateExpandedViewPos(EXPANDED_LEAVE_ALONE);
|
||||
}
|
||||
|
||||
// icon
|
||||
@@ -1562,15 +1563,24 @@ public class StatusBarService extends IStatusBar.Stub
|
||||
+ " mTrackingPosition=" + mTrackingPosition);
|
||||
}
|
||||
|
||||
// If the expanded view is not visible, there is no reason to do
|
||||
// any work.
|
||||
if (!mExpandedVisible) {
|
||||
return;
|
||||
}
|
||||
|
||||
// tracking view...
|
||||
int h = mStatusBarView.getHeight();
|
||||
int disph = mDisplay.getHeight();
|
||||
|
||||
// If the expanded view is not visible, make sure they're still off screen.
|
||||
// Maybe the view was resized.
|
||||
if (!mExpandedVisible) {
|
||||
if (mTrackingView != null) {
|
||||
mTrackingPosition = mTrackingParams.y = -disph;
|
||||
WindowManagerImpl.getDefault().updateViewLayout(mTrackingView, mTrackingParams);
|
||||
}
|
||||
if (mExpandedParams != null) {
|
||||
mExpandedParams.y = -disph;
|
||||
mExpandedDialog.getWindow().setAttributes(mExpandedParams);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// tracking view...
|
||||
int pos;
|
||||
if (expandedPosition == EXPANDED_FULL_OPEN) {
|
||||
pos = h;
|
||||
@@ -1681,7 +1691,7 @@ public class StatusBarService extends IStatusBar.Stub
|
||||
private View.OnClickListener mClearButtonListener = new View.OnClickListener() {
|
||||
public void onClick(View v) {
|
||||
mNotificationCallbacks.onClearAll();
|
||||
performCollapse();
|
||||
addPendingOp(OP_EXPAND, null, false);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user