Fixed a crash where onTouch might have been called too early

Bug: 21906153
Change-Id: I1fbc8b29f9cb0d7d71d6cb81e95a35da2fe9959e
This commit is contained in:
Selim Cinek
2015-06-25 20:15:33 -04:00
parent 2a46d68571
commit 4e6b2d3e7d
2 changed files with 14 additions and 6 deletions

View File

@@ -614,7 +614,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
mStatusBarWindow = (StatusBarWindowView) View.inflate(context,
R.layout.super_status_bar, null);
mStatusBarWindow.mService = this;
mStatusBarWindow.setService(this);
mStatusBarWindow.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {

View File

@@ -53,7 +53,7 @@ public class StatusBarWindowView extends FrameLayout {
private int mRightInset = 0;
PhoneStatusBar mService;
private PhoneStatusBar mService;
private final Paint mTransparentSrcPaint = new Paint();
public StatusBarWindowView(Context context, AttributeSet attrs) {
@@ -124,14 +124,22 @@ public class StatusBarWindowView extends FrameLayout {
}
@Override
protected void onAttachedToWindow () {
super.onAttachedToWindow();
protected void onFinishInflate() {
super.onFinishInflate();
mStackScrollLayout = (NotificationStackScrollLayout) findViewById(
R.id.notification_stack_scroller);
mNotificationPanel = (NotificationPanelView) findViewById(R.id.notification_panel);
mDragDownHelper = new DragDownHelper(getContext(), this, mStackScrollLayout, mService);
mBrightnessMirror = findViewById(R.id.brightness_mirror);
}
public void setService(PhoneStatusBar service) {
mService = service;
mDragDownHelper = new DragDownHelper(getContext(), this, mStackScrollLayout, mService);
}
@Override
protected void onAttachedToWindow () {
super.onAttachedToWindow();
// We really need to be able to animate while window animations are going on
// so that activities may be started asynchronously from panel animations