From c745ac735062ccda94489981845a8c04e3f80ff8 Mon Sep 17 00:00:00 2001 From: Jay Date: Mon, 27 Jan 2020 21:09:25 -0800 Subject: [PATCH] Fixed #67 and #69 --- .../tachiyomi/data/download/DownloadManager.kt | 14 ++++++++++++++ .../tachiyomi/data/download/DownloadNotifier.kt | 1 + .../kanade/tachiyomi/data/download/Downloader.kt | 3 ++- app/src/main/res/menu/download_queue.xml | 2 +- 4 files changed, 18 insertions(+), 2 deletions(-) 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 4e6622ea21..413a9c5830 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 @@ -203,6 +203,20 @@ class DownloadManager(val context: Context) { * @param source the source of the chapters. */ fun deleteChapters(chapters: List, manga: Manga, source: Source) { + val wasPaused = isPaused() + if (chapters.isEmpty()) { + DownloadService.stop(context) + downloader.queue.clear() + return + } + downloader.pause() + downloader.queue.remove(chapters) + if(!wasPaused && downloader.queue.isNotEmpty()){ + downloader.start() + } + else if (downloader.queue.isEmpty()) { + DownloadService.stop(context) + } queue.remove(chapters) val chapterDirs = provider.findChapterDirs(chapters, manga, source) + provider.findTempChapterDirs(chapters, manga, source) chapterDirs.forEach { it.delete() } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadNotifier.kt b/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadNotifier.kt index 9c1886dfe9..321b3843f9 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadNotifier.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadNotifier.kt @@ -112,6 +112,7 @@ internal class DownloadNotifier(private val context: Context) { setContentTitle("$title - $chapter".chop(30)) setContentText(context.getString(R.string.chapter_downloading_progress) .format(download.downloadedImages, download.pages!!.size)) + setStyle(null) setProgress(download.pages!!.size, download.downloadedImages, false) } // Displays the progress bar on notification diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt b/app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt index eac21d3fca..f5ca6f5ec9 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt @@ -128,7 +128,8 @@ class Downloader( } else { if (notifier.paused) { notifier.paused = false - notifier.onDownloadPaused() + if (queue.isEmpty()) notifier.dismiss() + else notifier.onDownloadPaused() } else if (notifier.isSingleChapter && !notifier.errorThrown) { notifier.isSingleChapter = false } else { diff --git a/app/src/main/res/menu/download_queue.xml b/app/src/main/res/menu/download_queue.xml index 864d395020..cceaff411e 100644 --- a/app/src/main/res/menu/download_queue.xml +++ b/app/src/main/res/menu/download_queue.xml @@ -14,7 +14,7 @@ android:visible="false" app:showAsAction="ifRoom"/> -