Fix saved searches for sources without filters

This commit is contained in:
Jobobby04 2022-09-12 00:01:45 -04:00
parent d6bbb69966
commit 7920eeb278
2 changed files with 15 additions and 10 deletions

View File

@ -242,20 +242,22 @@ open class BrowseSourceController(bundle: Bundle) :
return@launchUI return@launchUI
} }
if (search.filterList == null) { if (search.filterList == null && presenter.filters.isNotEmpty()) {
activity?.toast(R.string.save_search_invalid) activity?.toast(R.string.save_search_invalid)
return@launchUI return@launchUI
} }
presenter.setFilter(FilterList(search.filterList)) if (search.filterList != null) {
filterSheet?.setFilters(presenter.filterItems) presenter.setFilter(FilterList(search.filterList))
val allDefault = presenter.filters == presenter.source!!.getFilterList() filterSheet?.setFilters(presenter.filterItems)
}
val allDefault = search.filterList != null && presenter.filters == presenter.source!!.getFilterList()
filterSheet?.dismiss()
filterSheet?.dismiss() filterSheet?.dismiss()
presenter.searchQuery = search.query.nullIfBlank() presenter.searchQuery = search.query.nullIfBlank()
presenter.setSourceFilter(if (allDefault) FilterList() else presenter.filters) presenter.setSourceFilter(if (allDefault) FilterList() else presenter.filters)
presenter.search() presenter.search()
activity?.invalidateOptionsMenu()
} }
}, },
onSavedSearchDeleteClicked = { idToDelete, name -> onSavedSearchDeleteClicked = { idToDelete, name ->

View File

@ -13,6 +13,7 @@ import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.source.SourceManager import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.FilterList
import eu.kanade.tachiyomi.ui.base.controller.FullComposeController 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.base.controller.withFadeTransaction
import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController
import eu.kanade.tachiyomi.ui.browse.source.browse.SourceFilterSheet import eu.kanade.tachiyomi.ui.browse.source.browse.SourceFilterSheet
@ -120,14 +121,16 @@ open class SourceFeedController :
return@launchUI return@launchUI
} }
if (search.filterList == null) { if (search.filterList == null && presenter.filters.isNotEmpty()) {
activity?.toast(R.string.save_search_invalid) activity?.toast(R.string.save_search_invalid)
return@launchUI return@launchUI
} }
presenter.setFilters(FilterList(search.filterList)) if (search.filterList != null) {
filterSheet?.setFilters(presenter.filterItems) presenter.setFilters(FilterList(search.filterList))
val allDefault = presenter.filters == presenter.source.getFilterList() filterSheet?.setFilters(presenter.filterItems)
}
val allDefault = search.filterList != null && presenter.filters == presenter.source.getFilterList()
filterSheet?.dismiss() filterSheet?.dismiss()
if (!allDefault) { if (!allDefault) {
@ -184,7 +187,7 @@ open class SourceFeedController :
*/ */
private fun onMangaClick(manga: Manga) { private fun onMangaClick(manga: Manga) {
// Open MangaController. // 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) { fun onBrowseClick(search: String? = null, savedSearch: Long? = null, filters: String? = null) {