fix(library): Handle multiple header

This commit is contained in:
Ahmad Ansori Palembani 2024-12-14 13:29:18 +07:00
parent 00aa93d189
commit 8c5b54df5f
Signed by: null2264
GPG key ID: BA64F8B60AF3EFB6

View file

@ -616,9 +616,11 @@ open class LibraryController(
LibraryUpdateJob.updateFlow.onEach(::onUpdateManga).launchIn(viewScope)
viewScope.launchUI {
LibraryUpdateJob.isRunningFlow(view.context).collect {
val holder = if (mAdapter != null) visibleHeaderHolder() else null
val category = holder?.category ?: return@collect
holder.notifyStatus(LibraryUpdateJob.categoryInQueue(category.id), category)
adapter.getHeaderPositions().forEach {
val holder = (binding.libraryGridRecycler.recycler.findViewHolderForAdapterPosition(it) as? LibraryHeaderHolder) ?: return@forEach
val category = holder.category ?: return@forEach
holder.notifyStatus(LibraryUpdateJob.categoryInQueue(category.id), category)
}
}
}