diff --git a/app/src/main/java/com/hippo/ehviewer/ui/main/GalleryInfo.kt b/app/src/main/java/com/hippo/ehviewer/ui/main/GalleryInfo.kt index b93bd1f35..97db54423 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/main/GalleryInfo.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/main/GalleryInfo.kt @@ -111,7 +111,9 @@ fun GalleryInfoListItem( bottom.linkTo(if (showFav) favRef.top else postedRef.top) }, ) { - val download by produceState(DownloadManager.containDownloadInfo(info.gid)) { + val download by produceState(DownloadManager.containDownloadInfo(info.gid), info.gid) { + // Workaround ComposeView in RecyclerView, since view is reused, remembered value will not update when setContent with similar @Composable lambda, since composer group key is the same + value = DownloadManager.containDownloadInfo(info.gid) DownloadManager.stateFlow(info.gid).collect { value = DownloadManager.containDownloadInfo(info.gid) }