From c370af5a48a1387718e9edcafc2d5c04bc24df66 Mon Sep 17 00:00:00 2001 From: Jobobby04 Date: Wed, 3 Jun 2020 22:49:13 -0400 Subject: [PATCH] Add Global Search requested changes (cherry picked from commit 18d640ccf4ed88f12ec1112b1116c222f8e51cb7) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchAdapter.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt --- .../globalsearch/GlobalSearchAdapter.kt | 3 --- .../globalsearch/GlobalSearchController.kt | 21 +++++-------------- .../source/globalsearch/GlobalSearchHolder.kt | 5 ++--- 3 files changed, 7 insertions(+), 22 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchAdapter.kt index eadd43478..d9739a813 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchAdapter.kt @@ -15,9 +15,6 @@ import eu.kanade.tachiyomi.source.CatalogueSource class GlobalSearchAdapter(val controller: GlobalSearchController) : FlexibleAdapter(null, controller, true) { - /** - * Listen for more button clicks. - */ val titleClickListener: OnTitleClickListener = controller /** diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt index cd320fde6..628f21daa 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt @@ -11,7 +11,6 @@ import androidx.appcompat.widget.SearchView import androidx.recyclerview.widget.LinearLayoutManager import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.database.models.Manga -import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.databinding.GlobalSearchControllerBinding import eu.kanade.tachiyomi.source.CatalogueSource import eu.kanade.tachiyomi.ui.base.controller.NucleusController @@ -24,7 +23,6 @@ import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach import reactivecircus.flowbinding.appcompat.QueryTextEvent import reactivecircus.flowbinding.appcompat.queryTextEvents -import uy.kohesive.injekt.injectLazy /** * This controller shows and manages the different search result in global search. @@ -38,11 +36,6 @@ open class GlobalSearchController( GlobalSearchCardAdapter.OnMangaClickListener, GlobalSearchAdapter.OnTitleClickListener { - /** - * Application preferences. - */ - private val preferences: PreferencesHelper by injectLazy() - /** * Adapter containing search results grouped by lang. */ @@ -84,7 +77,7 @@ open class GlobalSearchController( */ override fun onMangaClick(manga: Manga) { // Open MangaController. - if (preferences.eh_useNewMangaInterface().get()) { + if (presenter.preferences.eh_useNewMangaInterface().get()) { router.pushController(MangaAllInOneController(manga, true).withFadeTransaction()) } else { router.pushController(MangaController(manga, true).withFadeTransaction()) @@ -205,15 +198,11 @@ open class GlobalSearchController( getHolder(source)?.setImage(manga) } - override fun onTitleClick(source: CatalogueSource) { - openCatalogue(source, BrowseSourceController(source, presenter.query)) - } - /** - * Opens a catalogue with the given controller. + * Opens a catalogue with the given search. */ - private fun openCatalogue(source: CatalogueSource, controller: BrowseSourceController) { - preferences.lastUsedCatalogueSource().set(source.id) - router.pushController(controller.withFadeTransaction()) + override fun onTitleClick(source: CatalogueSource) { + presenter.preferences.lastUsedCatalogueSource().set(source.id) + router.pushController(BrowseSourceController(source, presenter.query).withFadeTransaction()) } } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchHolder.kt index 201da47d3..9328cd0db 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchHolder.kt @@ -32,9 +32,8 @@ class GlobalSearchHolder(view: View, val adapter: GlobalSearchAdapter) : recycler.layoutManager = LinearLayoutManager(view.context, LinearLayoutManager.HORIZONTAL, false) recycler.adapter = mangaAdapter title.setOnClickListener { - val item = adapter.getItem(bindingAdapterPosition) - if (item != null) { - adapter.titleClickListener.onTitleClick(item.source) + adapter.getItem(bindingAdapterPosition)?.let { + adapter.titleClickListener.onTitleClick(it.source) } } }