Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 25a1e0b9 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Rebind TISBinder if service killed during connection" into sc-v2-dev

parents d552132d c64c3cf4
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -124,6 +124,15 @@ public abstract class BaseQuickstepLauncher extends Launcher
    private final ServiceConnection mTisBinderConnection = new ServiceConnection() {
        @Override
        public void onServiceConnected(ComponentName componentName, IBinder iBinder) {
            if (!(iBinder instanceof TISBinder)) {
                // Seems like there can be a race condition when user unlocks, which kills the TIS
                // process and re-starts it. I guess in the meantime service can be connected to
                // a killed TIS? Either way, unbind and try to re-connect in that case.
                unbindService(mTisBinderConnection);
                mHandler.postDelayed(mConnectionRunnable, BACKOFF_MILLIS);
                return;
            }

            mTaskbarManager = ((TISBinder) iBinder).getTaskbarManager();
            mTaskbarManager.setLauncher(BaseQuickstepLauncher.this);