From 7920eeb2784eed4aa13a02fda7de862c271f194d Mon Sep 17 00:00:00 2001 From: Jobobby04 Date: Mon, 12 Sep 2022 00:01:45 -0400 Subject: [PATCH] Fix saved searches for sources without filters --- .../browse/source/browse/BrowseSourceController.kt | 12 +++++++----- .../ui/browse/source/feed/SourceFeedController.kt | 13 ++++++++----- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt index ed25e9327..1d793c102 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt @@ -242,20 +242,22 @@ open class BrowseSourceController(bundle: Bundle) : return@launchUI } - if (search.filterList == null) { + if (search.filterList == null && presenter.filters.isNotEmpty()) { activity?.toast(R.string.save_search_invalid) return@launchUI } - presenter.setFilter(FilterList(search.filterList)) - filterSheet?.setFilters(presenter.filterItems) - val allDefault = presenter.filters == presenter.source!!.getFilterList() + if (search.filterList != null) { + presenter.setFilter(FilterList(search.filterList)) + filterSheet?.setFilters(presenter.filterItems) + } + val allDefault = search.filterList != null && presenter.filters == presenter.source!!.getFilterList() + filterSheet?.dismiss() filterSheet?.dismiss() presenter.searchQuery = search.query.nullIfBlank() presenter.setSourceFilter(if (allDefault) FilterList() else presenter.filters) presenter.search() - activity?.invalidateOptionsMenu() } }, onSavedSearchDeleteClicked = { idToDelete, name -> diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/feed/SourceFeedController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/feed/SourceFeedController.kt index 9ab658438..8b4004e24 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/feed/SourceFeedController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/feed/SourceFeedController.kt @@ -13,6 +13,7 @@ import eu.kanade.tachiyomi.source.CatalogueSource import eu.kanade.tachiyomi.source.SourceManager import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.ui.base.controller.FullComposeController +import eu.kanade.tachiyomi.ui.base.controller.pushController import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController import eu.kanade.tachiyomi.ui.browse.source.browse.SourceFilterSheet @@ -120,14 +121,16 @@ open class SourceFeedController : return@launchUI } - if (search.filterList == null) { + if (search.filterList == null && presenter.filters.isNotEmpty()) { activity?.toast(R.string.save_search_invalid) return@launchUI } - presenter.setFilters(FilterList(search.filterList)) - filterSheet?.setFilters(presenter.filterItems) - val allDefault = presenter.filters == presenter.source.getFilterList() + if (search.filterList != null) { + presenter.setFilters(FilterList(search.filterList)) + filterSheet?.setFilters(presenter.filterItems) + } + val allDefault = search.filterList != null && presenter.filters == presenter.source.getFilterList() filterSheet?.dismiss() if (!allDefault) { @@ -184,7 +187,7 @@ open class SourceFeedController : */ private fun onMangaClick(manga: Manga) { // Open MangaController. - router.pushController(MangaController(manga.id, true).withFadeTransaction()) + router.pushController(MangaController(manga.id, true)) } fun onBrowseClick(search: String? = null, savedSearch: Long? = null, filters: String? = null) {