Add offline mode (forced download filters; closes #2902)

This commit is contained in:
arkon
2020-04-19 15:30:55 -04:00
parent 9c820fcca1
commit 5bc77fc6e8
10 changed files with 59 additions and 26 deletions
@@ -155,6 +155,7 @@ class ChaptersController : NucleusController<ChaptersControllerBinding, Chapters
menuFilterRead.isChecked = presenter.onlyRead()
menuFilterUnread.isChecked = presenter.onlyUnread()
menuFilterDownloaded.isChecked = presenter.onlyDownloaded()
menuFilterDownloaded.isEnabled = !presenter.isOfflineMode()
menuFilterBookmarked.isChecked = presenter.onlyBookmarked()
val filterSet = presenter.onlyRead() || presenter.onlyUnread() || presenter.onlyDownloaded() || presenter.onlyBookmarked()
@@ -366,11 +366,18 @@ class ChaptersPresenter(
refreshChapters()
}
/**
* Whether offline mode is enabled (i.e. force only downloaded content).
*/
fun isOfflineMode(): Boolean {
return preferences.offlineMode().get()
}
/**
* Whether the display only downloaded filter is enabled.
*/
fun onlyDownloaded(): Boolean {
return manga.downloadedFilter == Manga.SHOW_DOWNLOADED
return isOfflineMode() || manga.downloadedFilter == Manga.SHOW_DOWNLOADED
}
/**