From 065a5321a85ccb6e38d67af2c1cd4234fd8d7d57 Mon Sep 17 00:00:00 2001 From: Jagrut Desai Date: Fri, 4 Apr 2025 17:12:26 -0700 Subject: [PATCH] Fix Taskbar Recents Item after unlock we simply fetch the icons at the same time we restore the previously show items. Test: Manual Bug: 407932962 Flag: EXEMPT bugfix Change-Id: I83131ef034fe94583beee32aeeb3e908f07cfc6f --- .../launcher3/taskbar/TaskbarDesktopModeController.kt | 10 ++++------ .../launcher3/taskbar/TaskbarRecentAppsController.kt | 8 ++++++-- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt index 50cf380f2b..a00db5eb76 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt @@ -16,14 +16,13 @@ package com.android.launcher3.taskbar -import android.content.Context import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.statehandlers.DesktopVisibilityController.TaskbarDesktopModeListener import com.android.launcher3.taskbar.TaskbarBackgroundRenderer.Companion.MAX_ROUNDNESS /** Handles Taskbar in Desktop Windowing mode. */ class TaskbarDesktopModeController( - private val context: Context, + private val taskbarActivityContext: TaskbarActivityContext, private val desktopVisibilityController: DesktopVisibilityController, ) : TaskbarDesktopModeListener { private lateinit var taskbarControllers: TaskbarControllers @@ -48,14 +47,13 @@ class TaskbarDesktopModeController( } fun shouldShowDesktopTasksInTaskbar(): Boolean { - return shouldShowDesktopTasksInTaskbar(context.displayId) + return shouldShowDesktopTasksInTaskbar(taskbarActivityContext.displayId) } fun shouldShowDesktopTasksInTaskbar(displayId: Int): Boolean { - val activityContext = taskbarControllers.taskbarActivityContext return isInDesktopMode(displayId) || - activityContext.showDesktopTaskbarForFreeformDisplay() || - (activityContext.showLockedTaskbarOnHome() && + taskbarActivityContext.showDesktopTaskbarForFreeformDisplay() || + (taskbarActivityContext.showLockedTaskbarOnHome() && taskbarControllers.taskbarStashController.isOnHome) } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt index 0d603dc1c1..f4006bab61 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt @@ -175,10 +175,11 @@ class TaskbarRecentAppsController(context: Context, private val recentsModel: Re private var recentTasksLoaded = false fun init(taskbarControllers: TaskbarControllers, previousShownTasks: List) { + controllers = taskbarControllers if (previousShownTasks.isNotEmpty()) { shownTasks = previousShownTasks + fetchIcons() } - controllers = taskbarControllers if (canShowRunningApps || canShowRecentApps) { recentsModel.registerRecentTasksChangedListener(recentTasksChangedListener) controllers.runAfterInit { reloadRecentTasksIfNeeded() } @@ -279,7 +280,11 @@ class TaskbarRecentAppsController(context: Context, private val recentsModel: Re if (!shownTasksChanged) { return shownTasksChanged } + fetchIcons() + return shownTasksChanged + } + private fun fetchIcons() { for (groupTask in shownTasks) { for (task in groupTask.tasks) { val cancellableTask = @@ -297,7 +302,6 @@ class TaskbarRecentAppsController(context: Context, private val recentsModel: Re } } } - return shownTasksChanged } private fun updateOrderedRunningTaskIds(): MutableList {