Merge "Don't wait for thumbnails to update if updatedThumbnails are empty" into main

This commit is contained in:
Treehugger Robot
2024-09-16 12:57:12 +00:00
committed by Android (Google) Code Review
3 changed files with 53 additions and 5 deletions
@@ -24,7 +24,7 @@ import kotlinx.coroutines.flow.first
class RecentsViewModel(
private val recentsTasksRepository: RecentTasksRepository,
private val recentsViewData: RecentsViewData
private val recentsViewData: RecentsViewData,
) {
fun refreshAllTaskData() {
recentsTasksRepository.getAllTaskData(true)
@@ -58,7 +58,8 @@ class RecentsViewModel(
recentsViewData.thumbnailSplashProgress.value = taskThumbnailSplashAlpha
}
suspend fun waitForThumbnailsToUpdate(updatedThumbnails: Map<Int, ThumbnailData>) {
suspend fun waitForThumbnailsToUpdate(updatedThumbnails: Map<Int, ThumbnailData>?) {
if (updatedThumbnails.isNullOrEmpty()) return
combine(
updatedThumbnails.map {
recentsTasksRepository.getThumbnailById(it.key).filter { thumbnailData ->
@@ -49,9 +49,7 @@ class RecentsViewModelHelper(private val recentsViewModel: RecentsViewModel) {
recentsViewModel.setRunningTaskShowScreenshot(true)
viewAttachedScope.launch {
recentsViewModel.waitForRunningTaskShowScreenshotToUpdate()
if (updatedThumbnails != null) {
recentsViewModel.waitForThumbnailsToUpdate(updatedThumbnails)
}
recentsViewModel.waitForThumbnailsToUpdate(updatedThumbnails)
ViewUtils.postFrameDrawn(taskView, onFinishRunnable)
}
}