Merge change I0d7dc3b8 into eclair

* changes:
  Fix notification bar performance.
This commit is contained in:
Android (Google) Code Review
2009-11-02 16:29:31 -05:00
2 changed files with 9 additions and 7 deletions

View File

@ -950,7 +950,8 @@ public class StatusBarService extends IStatusBar.Stub
panelSlightlyVisible(true); panelSlightlyVisible(true);
updateExpandedViewPos(EXPANDED_LEAVE_ALONE); updateExpandedViewPos(EXPANDED_LEAVE_ALONE);
mExpandedDialog.show(); mExpandedParams.flags &= ~WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
mExpandedDialog.getWindow().setAttributes(mExpandedParams);
mExpandedView.requestFocus(View.FOCUS_FORWARD); mExpandedView.requestFocus(View.FOCUS_FORWARD);
mTrackingView.setVisibility(View.VISIBLE); mTrackingView.setVisibility(View.VISIBLE);
@ -1027,7 +1028,8 @@ public class StatusBarService extends IStatusBar.Stub
} }
mExpandedVisible = false; mExpandedVisible = false;
panelSlightlyVisible(false); panelSlightlyVisible(false);
mExpandedDialog.hide(); mExpandedParams.flags |= WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
mExpandedDialog.getWindow().setAttributes(mExpandedParams);
mTrackingView.setVisibility(View.GONE); mTrackingView.setVisibility(View.GONE);
if ((mDisabled & StatusBarManager.DISABLE_NOTIFICATION_ICONS) == 0) { if ((mDisabled & StatusBarManager.DISABLE_NOTIFICATION_ICONS) == 0) {
@ -1056,6 +1058,7 @@ public class StatusBarService extends IStatusBar.Stub
else if (mAnimY < mStatusBarView.getHeight()) { else if (mAnimY < mStatusBarView.getHeight()) {
if (SPEW) Log.d(TAG, "Animation completed to collapsed state."); if (SPEW) Log.d(TAG, "Animation completed to collapsed state.");
mAnimating = false; mAnimating = false;
updateExpandedViewPos(0);
performCollapse(); performCollapse();
} }
else { else {
@ -1508,17 +1511,19 @@ public class StatusBarService extends IStatusBar.Stub
} }
} }
final int disph = mDisplay.getHeight();
lp = mExpandedDialog.getWindow().getAttributes(); lp = mExpandedDialog.getWindow().getAttributes();
lp.width = ViewGroup.LayoutParams.FILL_PARENT; lp.width = ViewGroup.LayoutParams.FILL_PARENT;
lp.height = ViewGroup.LayoutParams.WRAP_CONTENT; lp.height = ViewGroup.LayoutParams.WRAP_CONTENT;
lp.x = 0; lp.x = 0;
lp.y = 0; mTrackingPosition = lp.y = -disph; // sufficiently large negative
lp.type = WindowManager.LayoutParams.TYPE_STATUS_BAR_PANEL; lp.type = WindowManager.LayoutParams.TYPE_STATUS_BAR_PANEL;
lp.flags = WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN lp.flags = WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
| WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS | WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
| WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM
| WindowManager.LayoutParams.FLAG_DITHER; | WindowManager.LayoutParams.FLAG_DITHER
| WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
lp.format = pixelFormat; lp.format = pixelFormat;
lp.gravity = Gravity.TOP | Gravity.FILL_HORIZONTAL; lp.gravity = Gravity.TOP | Gravity.FILL_HORIZONTAL;
lp.setTitle("StatusBarExpanded"); lp.setTitle("StatusBarExpanded");
@ -1531,7 +1536,6 @@ public class StatusBarService extends IStatusBar.Stub
new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT)); ViewGroup.LayoutParams.WRAP_CONTENT));
mExpandedDialog.show(); mExpandedDialog.show();
mExpandedDialog.hide();
FrameLayout hack = (FrameLayout)mExpandedView.getParent(); FrameLayout hack = (FrameLayout)mExpandedView.getParent();
hack.setForeground(null); hack.setForeground(null);
} }

View File

@ -55,8 +55,6 @@ public class TrackingPatternView extends View {
final int textureWidth = mTextureWidth; final int textureWidth = mTextureWidth;
final int textureHeight = mTextureHeight; final int textureHeight = mTextureHeight;
Log.d("TrackingPatternView", "width=" + width + " textureWidth=" + textureWidth);
int x = 0; int x = 0;
int y; int y;