diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt b/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt index 374d926239..4297a45465 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt @@ -163,12 +163,12 @@ class DownloadManager( * @param downloads the list of downloads to enqueue. */ fun addDownloadsToStartOfQueue(downloads: List) { - val wasEmpty = queue.isEmpty() + if (downloads.isEmpty()) return queue.toMutableList().apply { addAll(0, downloads) reorderQueue(this) } - if (wasEmpty) startDownloads() + if (!DownloadService.isRunning(context)) DownloadService.start(context) } /** diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt index 3095bf84af..d7b595f5c7 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt @@ -500,6 +500,8 @@ class ReaderPresenter( if (removeAfterReadSlots != 0 && chapterDownload != null) { downloadManager.addDownloadsToStartOfQueue(listOf(chapterDownload!!)) + } else { + chapterDownload = null } // Check if deleting option is enabled and chapter exists if (removeAfterReadSlots != -1 && chapterToDelete != null) {