diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java | 14 | 
1 files changed, 9 insertions, 5 deletions
| diff --git a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java index b2302cccba25..898f64be9e55 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java +++ b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java @@ -354,17 +354,22 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis      private final ServiceConnection mOverviewServiceConnection = new ServiceConnection() {          @Override          public void onServiceConnected(ComponentName name, IBinder service) { -            mHandler.removeCallbacks(mDeferredConnectionCallback); -            mCurrentBoundedUserId = mDeviceProvisionedController.getCurrentUser();              mConnectionBackoffAttempts = 0; -            mOverviewProxy = IOverviewProxy.Stub.asInterface(service); -            // Listen for launcher's death +            mHandler.removeCallbacks(mDeferredConnectionCallback);              try {                  service.linkToDeath(mOverviewServiceDeathRcpt, 0);              } catch (RemoteException e) { +                // Failed to link to death (process may have died between binding and connecting), +                // just unbind the service for now and retry again                  Log.e(TAG_OPS, "Lost connection to launcher service", e); +                disconnectFromLauncherService(); +                retryConnectionWithBackoff(); +                return;              } +            mCurrentBoundedUserId = mDeviceProvisionedController.getCurrentUser(); +            mOverviewProxy = IOverviewProxy.Stub.asInterface(service); +              Bundle params = new Bundle();              params.putBinder(KEY_EXTRA_SYSUI_PROXY, mSysUiProxy.asBinder());              params.putFloat(KEY_EXTRA_WINDOW_CORNER_RADIUS, mWindowCornerRadius); @@ -550,7 +555,6 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis              mHandler.post(()-> {                  StatusBar bar = SysUiServiceProvider.getComponent(mContext, StatusBar.class);                  if (bar != null) { -                    System.out.println("MERONG dispatchNotificationPanelTouchEvent");                      mStatusBarGestureDownEvent.setAction(MotionEvent.ACTION_CANCEL);                      bar.dispatchNotificationsPanelTouchEvent(mStatusBarGestureDownEvent);                      mStatusBarGestureDownEvent.recycle(); |