diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarHotseatController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarHotseatController.java index 4dc051aaa9..082343ea0b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarHotseatController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarHotseatController.java @@ -57,6 +57,7 @@ public class TaskbarHotseatController { protected void init() { mLauncher.getDragController().addDragListener(mDragListener); + onHotseatUpdated(); } protected void cleanup() { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentsController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentsController.java index 9d4e000da0..4256d2bd88 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentsController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentsController.java @@ -50,6 +50,8 @@ public class TaskbarRecentsController { // The current background requests to load the task icons private CancellableTask[] mIconLoadRequests = new CancellableTask[mNumRecentIcons]; + private boolean mIsAlive; + public TaskbarRecentsController(BaseQuickstepLauncher launcher, TaskbarController.TaskbarRecentsControllerCallbacks taskbarCallbacks) { mLauncher = launcher; @@ -58,11 +60,13 @@ public class TaskbarRecentsController { } protected void init() { + mIsAlive = true; TaskStackChangeListeners.getInstance().registerTaskStackListener(mTaskStackChangeListener); reloadRecentTasksIfNeeded(); } protected void cleanup() { + mIsAlive = false; TaskStackChangeListeners.getInstance().unregisterTaskStackListener( mTaskStackChangeListener); cancelAllPendingIconLoadTasks(); @@ -84,7 +88,9 @@ public class TaskbarRecentsController { } private void onRecentTasksChanged(ArrayList tasks) { - mTaskbarCallbacks.updateRecentItems(tasks); + if (mIsAlive) { + mTaskbarCallbacks.updateRecentItems(tasks); + } } /**