mirror of
https://github.com/mihonapp/mihon.git
synced 2024-11-07 11:17:25 +01:00
Fix download status updates not appearing in chapters list (fixes #3358)
This commit is contained in:
parent
3813743e3d
commit
99710b45d1
@ -176,14 +176,14 @@ class DownloadService : Service() {
|
|||||||
/**
|
/**
|
||||||
* Releases the wake lock if it's held.
|
* Releases the wake lock if it's held.
|
||||||
*/
|
*/
|
||||||
fun PowerManager.WakeLock.releaseIfNeeded() {
|
private fun PowerManager.WakeLock.releaseIfNeeded() {
|
||||||
if (isHeld) release()
|
if (isHeld) release()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Acquires the wake lock if it's not held.
|
* Acquires the wake lock if it's not held.
|
||||||
*/
|
*/
|
||||||
fun PowerManager.WakeLock.acquireIfNeeded() {
|
private fun PowerManager.WakeLock.acquireIfNeeded() {
|
||||||
if (!isHeld) acquire()
|
if (!isHeld) acquire()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -231,8 +231,6 @@ class Downloader(
|
|||||||
val wasEmpty = queue.isEmpty()
|
val wasEmpty = queue.isEmpty()
|
||||||
// Called in background thread, the operation can be slow with SAF.
|
// Called in background thread, the operation can be slow with SAF.
|
||||||
val chaptersWithoutDir = async {
|
val chaptersWithoutDir = async {
|
||||||
val mangaDir = provider.findMangaDir(manga, source)
|
|
||||||
|
|
||||||
chapters
|
chapters
|
||||||
// Filter out those already downloaded.
|
// Filter out those already downloaded.
|
||||||
.filter { provider.findChapterDir(it, manga, source) == null }
|
.filter { provider.findChapterDir(it, manga, source) == null }
|
||||||
|
@ -49,7 +49,6 @@ import eu.kanade.tachiyomi.ui.library.LibraryController
|
|||||||
import eu.kanade.tachiyomi.ui.main.MainActivity
|
import eu.kanade.tachiyomi.ui.main.MainActivity
|
||||||
import eu.kanade.tachiyomi.ui.main.offsetAppbarHeight
|
import eu.kanade.tachiyomi.ui.main.offsetAppbarHeight
|
||||||
import eu.kanade.tachiyomi.ui.manga.chapter.ChapterDividerItemDecoration
|
import eu.kanade.tachiyomi.ui.manga.chapter.ChapterDividerItemDecoration
|
||||||
import eu.kanade.tachiyomi.ui.manga.chapter.ChapterHolder
|
|
||||||
import eu.kanade.tachiyomi.ui.manga.chapter.ChapterItem
|
import eu.kanade.tachiyomi.ui.manga.chapter.ChapterItem
|
||||||
import eu.kanade.tachiyomi.ui.manga.chapter.ChaptersAdapter
|
import eu.kanade.tachiyomi.ui.manga.chapter.ChaptersAdapter
|
||||||
import eu.kanade.tachiyomi.ui.manga.chapter.ChaptersSettingsSheet
|
import eu.kanade.tachiyomi.ui.manga.chapter.ChaptersSettingsSheet
|
||||||
@ -685,11 +684,10 @@ class MangaController :
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun onChapterStatusChange(download: Download) {
|
fun onChapterStatusChange(download: Download) {
|
||||||
getHolder(download.chapter)?.notifyStatus(download.status)
|
chaptersAdapter?.currentItems?.find { it.id == download.chapter.id }?.let {
|
||||||
|
chaptersAdapter?.updateItem(it)
|
||||||
|
chaptersAdapter?.notifyDataSetChanged()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun getHolder(chapter: Chapter): ChapterHolder? {
|
|
||||||
return binding.recycler.findViewHolderForItemId(chapter.id!!) as? ChapterHolder
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun openChapter(chapter: Chapter, hasAnimation: Boolean = false) {
|
fun openChapter(chapter: Chapter, hasAnimation: Boolean = false) {
|
||||||
|
Loading…
Reference in New Issue
Block a user