Clean up repetitive controller transactions

(cherry picked from commit 7e2f1d729f3876515342d6e7d25cf4df1005d711)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
This commit is contained in:
arkon 2022-04-23 12:10:32 -04:00 committed by Jobobby04
parent f537d8396c
commit b8b26c3531
36 changed files with 119 additions and 113 deletions

View File

@ -23,6 +23,10 @@ fun Router.popControllerWithTag(tag: String): Boolean {
return false return false
} }
fun Router.pushController(controller: Controller) {
pushController(controller.withFadeTransaction())
}
fun Controller.requestPermissionsSafe(permissions: Array<String>, requestCode: Int) { fun Controller.requestPermissionsSafe(permissions: Array<String>, requestCode: Int) {
val activity = activity ?: return val activity = activity ?: return
permissions.forEach { permission -> permissions.forEach { permission ->

View File

@ -17,7 +17,7 @@ import eu.kanade.tachiyomi.databinding.ExtensionControllerBinding
import eu.kanade.tachiyomi.extension.model.Extension import eu.kanade.tachiyomi.extension.model.Extension
import eu.kanade.tachiyomi.source.online.HttpSource import eu.kanade.tachiyomi.source.online.HttpSource
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.BrowseController import eu.kanade.tachiyomi.ui.browse.BrowseController
import eu.kanade.tachiyomi.ui.browse.extension.details.ExtensionDetailsController import eu.kanade.tachiyomi.ui.browse.extension.details.ExtensionDetailsController
import kotlinx.coroutines.flow.drop import kotlinx.coroutines.flow.drop
@ -92,9 +92,7 @@ open class ExtensionController :
when (item.itemId) { when (item.itemId) {
R.id.action_search -> expandActionViewFromInteraction = true R.id.action_search -> expandActionViewFromInteraction = true
R.id.action_settings -> { R.id.action_settings -> {
parentController!!.router.pushController( parentController!!.router.pushController(ExtensionFilterController())
ExtensionFilterController().withFadeTransaction(),
)
} }
} }
return super.onOptionsItemSelected(item) return super.onOptionsItemSelected(item)
@ -172,7 +170,7 @@ open class ExtensionController :
private fun openDetails(extension: Extension.Installed) { private fun openDetails(extension: Extension.Installed) {
val controller = ExtensionDetailsController(extension.pkgName) val controller = ExtensionDetailsController(extension.pkgName)
parentController!!.router.pushController(controller.withFadeTransaction()) parentController!!.router.pushController(controller)
} }
private fun openTrustDialog(extension: Extension.Untrusted) { private fun openTrustDialog(extension: Extension.Untrusted) {

View File

@ -31,7 +31,7 @@ import eu.kanade.tachiyomi.source.getPreferenceKey
import eu.kanade.tachiyomi.source.online.HttpSource import eu.kanade.tachiyomi.source.online.HttpSource
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.openInBrowser import eu.kanade.tachiyomi.ui.base.controller.openInBrowser
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.util.preference.DSL import eu.kanade.tachiyomi.util.preference.DSL
import eu.kanade.tachiyomi.util.preference.minusAssign import eu.kanade.tachiyomi.util.preference.minusAssign
import eu.kanade.tachiyomi.util.preference.onChange import eu.kanade.tachiyomi.util.preference.onChange
@ -165,9 +165,7 @@ class ExtensionDetailsController(bundle: Bundle? = null) :
switchSettingsPreference { switchSettingsPreference {
block() block()
onSettingsClick = View.OnClickListener { onSettingsClick = View.OnClickListener {
router.pushController( router.pushController(SourcePreferencesController(source.id))
SourcePreferencesController(source.id).withFadeTransaction(),
)
} }
} }
} else { } else {

View File

@ -14,6 +14,7 @@ import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.databinding.GlobalSearchControllerBinding import eu.kanade.tachiyomi.databinding.GlobalSearchControllerBinding
import eu.kanade.tachiyomi.source.CatalogueSource import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
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.latest.LatestUpdatesController import eu.kanade.tachiyomi.ui.browse.source.latest.LatestUpdatesController
@ -115,7 +116,7 @@ open class FeedController :
*/ */
override fun onMangaClick(manga: Manga) { override fun onMangaClick(manga: Manga) {
// Open MangaController. // Open MangaController.
parentController?.router?.pushController(MangaController(manga, true).withFadeTransaction()) parentController?.router?.pushController(MangaController(manga, true))
} }
/** /**
@ -214,12 +215,12 @@ open class FeedController :
*/ */
override fun onSourceClick(source: CatalogueSource) { override fun onSourceClick(source: CatalogueSource) {
presenter.preferences.lastUsedSource().set(source.id) presenter.preferences.lastUsedSource().set(source.id)
parentController?.router?.pushController(LatestUpdatesController(source).withFadeTransaction()) parentController?.router?.pushController(LatestUpdatesController(source))
} }
override fun onSavedSearchClick(savedSearch: SavedSearch, source: CatalogueSource) { override fun onSavedSearchClick(savedSearch: SavedSearch, source: CatalogueSource) {
presenter.preferences.lastUsedSource().set(savedSearch.source) presenter.preferences.lastUsedSource().set(savedSearch.source)
parentController?.router?.pushController(BrowseSourceController(source, savedSearch = savedSearch.id).withFadeTransaction()) parentController?.router?.pushController(BrowseSourceController(source, savedSearch = savedSearch.id))
} }
override fun onRemoveClick(feedSavedSearch: FeedSavedSearch) { override fun onRemoveClick(feedSavedSearch: FeedSavedSearch) {

View File

@ -28,7 +28,9 @@ import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.source.model.toSChapter import eu.kanade.tachiyomi.source.model.toSChapter
import eu.kanade.tachiyomi.source.model.toSManga import eu.kanade.tachiyomi.source.model.toSManga
import eu.kanade.tachiyomi.source.online.all.EHentai import eu.kanade.tachiyomi.source.online.all.EHentai
import eu.kanade.tachiyomi.ui.base.changehandler.OneWayFadeChangeHandler
import eu.kanade.tachiyomi.ui.base.controller.BaseController import eu.kanade.tachiyomi.ui.base.controller.BaseController
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.migration.MigrationMangaDialog import eu.kanade.tachiyomi.ui.browse.migration.MigrationMangaDialog
import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController
@ -336,7 +338,7 @@ class MigrationListController(bundle: Bundle? = null) :
} }
val searchController = SearchController(manga, validSources) val searchController = SearchController(manga, validSources)
searchController.targetController = this@MigrationListController searchController.targetController = this@MigrationListController
router.pushController(searchController.withFadeTransaction()) router.pushController(searchController)
} }
} }
R.id.action_skip -> adapter?.removeManga(position) R.id.action_skip -> adapter?.removeManga(position)
@ -420,7 +422,7 @@ class MigrationListController(bundle: Bundle? = null) :
it.controller !is MigrationListController && it.controller !is MigrationListController &&
it.controller !is PreMigrationController it.controller !is PreMigrationController
} + MangaController(manga).withFadeTransaction() } + MangaController(manga).withFadeTransaction()
router.setBackstack(newStack, FadeChangeHandler()) router.setBackstack(newStack, OneWayFadeChangeHandler())
return@launchUI return@launchUI
} }
} }

View File

@ -13,6 +13,7 @@ import eu.kanade.tachiyomi.databinding.MigrationMangaCardBinding
import eu.kanade.tachiyomi.databinding.MigrationProcessItemBinding import eu.kanade.tachiyomi.databinding.MigrationProcessItemBinding
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceManager import eu.kanade.tachiyomi.source.SourceManager
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.lang.launchUI import eu.kanade.tachiyomi.util.lang.launchUI
@ -69,7 +70,7 @@ class MigrationProcessHolder(
MangaController( MangaController(
manga, manga,
true, true,
).withFadeTransaction(), ),
) )
} }
.launchIn(adapter.controller.viewScope) .launchIn(adapter.controller.viewScope)
@ -105,7 +106,7 @@ class MigrationProcessHolder(
MangaController( MangaController(
searchResult, searchResult,
true, true,
).withFadeTransaction(), ),
) )
} }
.launchIn(adapter.controller.viewScope) .launchIn(adapter.controller.viewScope)

View File

@ -11,7 +11,7 @@ import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.databinding.MigrationMangaControllerBinding import eu.kanade.tachiyomi.databinding.MigrationMangaControllerBinding
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController
import eu.kanade.tachiyomi.ui.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.Injekt
@ -91,7 +91,7 @@ class MigrationMangaController :
override fun onCoverClick(position: Int) { override fun onCoverClick(position: Int) {
val mangaItem = adapter?.getItem(position) as? MigrationMangaItem ?: return val mangaItem = adapter?.getItem(position) as? MigrationMangaItem ?: return
router.pushController(MangaController(mangaItem.manga).withFadeTransaction()) router.pushController(MangaController(mangaItem.manga))
} }
// SY --> // SY -->

View File

@ -10,7 +10,7 @@ import eu.kanade.tachiyomi.data.database.DatabaseHelper
import eu.kanade.tachiyomi.data.database.models.Manga import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.source.CatalogueSource import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.source.SourceManager import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.migration.advanced.process.MigrationListController import eu.kanade.tachiyomi.ui.browse.migration.advanced.process.MigrationListController
import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController
import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchPresenter import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchPresenter
@ -108,7 +108,7 @@ class SearchController(
override fun onTitleClick(source: CatalogueSource) { override fun onTitleClick(source: CatalogueSource) {
presenter.preferences.lastUsedSource().set(source.id) presenter.preferences.lastUsedSource().set(source.id)
router.pushController(SourceSearchController(targetController as? MigrationListController ?: return, manga!!, source, presenter.query).withFadeTransaction()) router.pushController(SourceSearchController(targetController as? MigrationListController ?: return, manga!!, source, presenter.query))
} }
companion object { companion object {

View File

@ -13,7 +13,7 @@ import eu.kanade.tachiyomi.data.database.DatabaseHelper
import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.databinding.MigrationSourcesControllerBinding import eu.kanade.tachiyomi.databinding.MigrationSourcesControllerBinding
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.BrowseController import eu.kanade.tachiyomi.ui.browse.BrowseController
import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController
import eu.kanade.tachiyomi.ui.browse.migration.manga.MigrationMangaController import eu.kanade.tachiyomi.ui.browse.migration.manga.MigrationMangaController
@ -119,9 +119,9 @@ class MigrationSourcesController :
val controller = MigrationMangaController(item.source.id, item.source.name) val controller = MigrationMangaController(item.source.id, item.source.name)
val parentController = parentController val parentController = parentController
if (parentController is BrowseController) { if (parentController is BrowseController) {
parentController.router.pushController(controller.withFadeTransaction()) parentController.router.pushController(controller)
} else { } else {
router.pushController(controller.withFadeTransaction()) router.pushController(controller)
} }
return false return false

View File

@ -25,8 +25,8 @@ import eu.kanade.tachiyomi.source.LocalSource
import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.base.controller.DialogController
import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController
import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.base.controller.requestPermissionsSafe import eu.kanade.tachiyomi.ui.base.controller.requestPermissionsSafe
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction
import eu.kanade.tachiyomi.ui.browse.BrowseController import eu.kanade.tachiyomi.ui.browse.BrowseController
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.feed.SourceFeedController import eu.kanade.tachiyomi.ui.browse.source.feed.SourceFeedController
@ -156,7 +156,7 @@ class SourceController(bundle: Bundle? = null) :
SmartSearchController.ARG_SOURCE_ID to source.id, SmartSearchController.ARG_SOURCE_ID to source.id,
SmartSearchController.ARG_SMART_SEARCH_CONFIG to smartSearchConfig, SmartSearchController.ARG_SMART_SEARCH_CONFIG to smartSearchConfig,
), ),
).withFadeTransaction(), ),
) )
} }
// SY <-- // SY <--
@ -303,7 +303,7 @@ class SourceController(bundle: Bundle? = null) :
if (!preferences.incognitoMode().get()) { if (!preferences.incognitoMode().get()) {
preferences.lastUsedSource().set(source.id) preferences.lastUsedSource().set(source.id)
} }
parentController!!.router.pushController(controller.withFadeTransaction()) parentController!!.router.pushController(controller)
} }
// SY --> // SY -->
@ -312,7 +312,7 @@ class SourceController(bundle: Bundle? = null) :
*/ */
private fun openSourceFeed(source: CatalogueSource) { private fun openSourceFeed(source: CatalogueSource) {
preferences.lastUsedSource().set(source.id) preferences.lastUsedSource().set(source.id)
parentController!!.router.pushController(SourceFeedController(source).withFadeTransaction()) parentController!!.router.pushController(SourceFeedController(source))
} }
// SY <-- // SY <--
@ -326,10 +326,7 @@ class SourceController(bundle: Bundle? = null) :
when (item.itemId) { when (item.itemId) {
// Initialize option to open catalogue settings. // Initialize option to open catalogue settings.
R.id.action_settings -> { R.id.action_settings -> {
parentController!!.router.pushController( parentController!!.router.pushController(SourceFilterController())
SourceFilterController()
.withFadeTransaction(),
)
} }
} }
return super.onOptionsItemSelected(item) return super.onOptionsItemSelected(item)
@ -391,7 +388,7 @@ class SourceController(bundle: Bundle? = null) :
// SY --> // SY -->
if (mode == Mode.CATALOGUE) { if (mode == Mode.CATALOGUE) {
parentController!!.router.pushController( parentController!!.router.pushController(
GlobalSearchController(query).withFadeTransaction(), GlobalSearchController(query),
) )
} }
// SY <-- // SY <--

View File

@ -34,7 +34,7 @@ import eu.kanade.tachiyomi.source.online.HttpSource
import eu.kanade.tachiyomi.source.online.LoginSource import eu.kanade.tachiyomi.source.online.LoginSource
import eu.kanade.tachiyomi.ui.base.controller.FabController import eu.kanade.tachiyomi.ui.base.controller.FabController
import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.extension.details.SourcePreferencesController import eu.kanade.tachiyomi.ui.browse.extension.details.SourcePreferencesController
import eu.kanade.tachiyomi.ui.browse.source.SourceController import eu.kanade.tachiyomi.ui.browse.source.SourceController
import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController
@ -460,9 +460,7 @@ open class BrowseSourceController(bundle: Bundle) :
// SY --> // SY -->
private fun openSourceSettings() { private fun openSourceSettings() {
router.pushController( router.pushController(SourcePreferencesController(presenter.source.id))
SourcePreferencesController(presenter.source.id).withFadeTransaction(),
)
} }
// SY <-- // SY <--
@ -731,7 +729,7 @@ open class BrowseSourceController(bundle: Bundle) :
item.manga, item.manga,
true, true,
args.getParcelable(MangaController.SMART_SEARCH_CONFIG_EXTRA), args.getParcelable(MangaController.SMART_SEARCH_CONFIG_EXTRA),
).withFadeTransaction(), ),
) )
return false return false
} }

View File

@ -16,7 +16,7 @@ import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.databinding.GlobalSearchControllerBinding import eu.kanade.tachiyomi.databinding.GlobalSearchControllerBinding
import eu.kanade.tachiyomi.source.CatalogueSource import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController
import eu.kanade.tachiyomi.ui.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import uy.kohesive.injekt.injectLazy import uy.kohesive.injekt.injectLazy
@ -71,7 +71,7 @@ open class GlobalSearchController(
* @param manga clicked item containing manga information. * @param manga clicked item containing manga information.
*/ */
override fun onMangaClick(manga: Manga) { override fun onMangaClick(manga: Manga) {
router.pushController(MangaController(manga, true).withFadeTransaction()) router.pushController(MangaController(manga, true))
} }
/** /**
@ -213,6 +213,6 @@ open class GlobalSearchController(
if (!preferences.incognitoMode().get()) { if (!preferences.incognitoMode().get()) {
preferences.lastUsedSource().set(source.id) preferences.lastUsedSource().set(source.id)
} }
router.pushController(BrowseSourceController(source, presenter.query).withFadeTransaction()) router.pushController(BrowseSourceController(source, presenter.query))
} }
} }

View File

@ -8,7 +8,7 @@ import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.database.models.Category import eu.kanade.tachiyomi.data.database.models.Category
import eu.kanade.tachiyomi.data.database.models.Manga import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.base.controller.DialogController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.category.CategoryController import eu.kanade.tachiyomi.ui.category.CategoryController
import eu.kanade.tachiyomi.widget.materialdialogs.QuadStateTextView import eu.kanade.tachiyomi.widget.materialdialogs.QuadStateTextView
import eu.kanade.tachiyomi.widget.materialdialogs.setQuadStateMultiChoiceItems import eu.kanade.tachiyomi.widget.materialdialogs.setQuadStateMultiChoiceItems
@ -71,7 +71,7 @@ class ChangeMangaCategoriesDialog<T>(bundle: Bundle? = null) :
libController.clearSelection() libController.clearSelection()
} }
router.popCurrentController() router.popCurrentController()
router.pushController(CategoryController().withFadeTransaction()) router.pushController(CategoryController())
} }
interface Listener { interface Listener {

View File

@ -31,7 +31,7 @@ import eu.kanade.tachiyomi.source.LocalSource
import eu.kanade.tachiyomi.ui.base.controller.RootController import eu.kanade.tachiyomi.ui.base.controller.RootController
import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController
import eu.kanade.tachiyomi.ui.base.controller.TabbedController import eu.kanade.tachiyomi.ui.base.controller.TabbedController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController
import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController
import eu.kanade.tachiyomi.ui.main.MainActivity import eu.kanade.tachiyomi.ui.main.MainActivity
@ -251,9 +251,7 @@ class LibraryController(
binding.btnGlobalSearch.clicks() binding.btnGlobalSearch.clicks()
.onEach { .onEach {
router.pushController( router.pushController(GlobalSearchController(presenter.query))
GlobalSearchController(presenter.query).withFadeTransaction(),
)
} }
.launchIn(viewScope) .launchIn(viewScope)
} }
@ -586,7 +584,7 @@ class LibraryController(
// Notify the presenter a manga is being opened. // Notify the presenter a manga is being opened.
presenter.onOpenManga() presenter.onOpenManga()
router.pushController(MangaController(manga).withFadeTransaction()) router.pushController(MangaController(manga))
} }
/** /**

View File

@ -47,8 +47,8 @@ import eu.kanade.tachiyomi.ui.base.controller.FabController
import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController
import eu.kanade.tachiyomi.ui.base.controller.RootController import eu.kanade.tachiyomi.ui.base.controller.RootController
import eu.kanade.tachiyomi.ui.base.controller.TabbedController import eu.kanade.tachiyomi.ui.base.controller.TabbedController
import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.base.controller.setRoot import eu.kanade.tachiyomi.ui.base.controller.setRoot
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction
import eu.kanade.tachiyomi.ui.browse.BrowseController import eu.kanade.tachiyomi.ui.browse.BrowseController
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.globalsearch.GlobalSearchController import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController
@ -209,12 +209,12 @@ class MainActivity : BaseActivity() {
} }
R.id.nav_updates -> { R.id.nav_updates -> {
if (router.backstackSize == 1) { if (router.backstackSize == 1) {
router.pushController(DownloadController().withFadeTransaction()) router.pushController(DownloadController())
} }
} }
R.id.nav_more -> { R.id.nav_more -> {
if (router.backstackSize == 1) { if (router.backstackSize == 1) {
router.pushController(SettingsMainController().withFadeTransaction()) router.pushController(SettingsMainController())
} }
} }
} }
@ -462,7 +462,7 @@ class MainActivity : BaseActivity() {
router.popToRoot() router.popToRoot()
} }
setSelectedNavItem(R.id.nav_browse) setSelectedNavItem(R.id.nav_browse)
router.pushController(BrowseController(toExtensions = true).withFadeTransaction()) router.pushController(BrowseController(toExtensions = true))
} }
SHORTCUT_MANGA -> { SHORTCUT_MANGA -> {
val extras = intent.extras ?: return false val extras = intent.extras ?: return false
@ -478,7 +478,7 @@ class MainActivity : BaseActivity() {
router.popToRoot() router.popToRoot()
} }
setSelectedNavItem(R.id.nav_more) setSelectedNavItem(R.id.nav_more)
router.pushController(DownloadController().withFadeTransaction()) router.pushController(DownloadController())
} }
Intent.ACTION_SEARCH, Intent.ACTION_SEND, "com.google.android.gms.actions.SEARCH_ACTION" -> { Intent.ACTION_SEARCH, Intent.ACTION_SEND, "com.google.android.gms.actions.SEARCH_ACTION" -> {
// If the intent match the "standard" Android search intent // If the intent match the "standard" Android search intent
@ -490,7 +490,7 @@ class MainActivity : BaseActivity() {
if (router.backstackSize > 1) { if (router.backstackSize > 1) {
router.popToRoot() router.popToRoot()
} }
router.pushController(GlobalSearchController(query).withFadeTransaction()) router.pushController(GlobalSearchController(query))
} }
} }
INTENT_SEARCH -> { INTENT_SEARCH -> {
@ -500,7 +500,7 @@ class MainActivity : BaseActivity() {
if (router.backstackSize > 1) { if (router.backstackSize > 1) {
router.popToRoot() router.popToRoot()
} }
router.pushController(GlobalSearchController(query, filter).withFadeTransaction()) router.pushController(GlobalSearchController(query, filter))
} }
} }
else -> { else -> {

View File

@ -62,6 +62,7 @@ import eu.kanade.tachiyomi.ui.base.controller.FabController
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.getMainAppBarHeight import eu.kanade.tachiyomi.ui.base.controller.getMainAppBarHeight
import eu.kanade.tachiyomi.ui.base.controller.popControllerWithTag import eu.kanade.tachiyomi.ui.base.controller.popControllerWithTag
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.migration.advanced.design.PreMigrationController import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController
import eu.kanade.tachiyomi.ui.browse.source.SourceController import eu.kanade.tachiyomi.ui.browse.source.SourceController
@ -684,7 +685,7 @@ class MangaController :
} }
setNegativeButton(activity?.getString(R.string.action_cancel)) { _, _ -> } setNegativeButton(activity?.getString(R.string.action_cancel)) { _, _ -> }
setNeutralButton(activity?.getString(R.string.action_show_manga)) { _, _ -> setNeutralButton(activity?.getString(R.string.action_show_manga)) { _, _ ->
router.pushController(MangaController(libraryManga).withFadeTransaction()) router.pushController(MangaController(libraryManga))
} }
setCancelable(true) setCancelable(true)
}.create().show() }.create().show()
@ -813,13 +814,13 @@ class MangaController :
) { dialog, index -> ) { dialog, index ->
dialog.dismiss() dialog.dismiss()
when (index) { when (index) {
0 -> router.pushController(MangaDexSimilarController(presenter.manga, source as CatalogueSource).withFadeTransaction()) 0 -> router.pushController(MangaDexSimilarController(presenter.manga, source as CatalogueSource))
1 -> router.pushController(RecommendsController(presenter.manga, source as CatalogueSource).withFadeTransaction()) 1 -> router.pushController(RecommendsController(presenter.manga, source as CatalogueSource))
} }
} }
.show() .show()
} else if (source is CatalogueSource) { } else if (source is CatalogueSource) {
router.pushController(RecommendsController(presenter.manga, source).withFadeTransaction()) router.pushController(RecommendsController(presenter.manga, source))
} }
} }
// AZ <-- // AZ <--
@ -889,7 +890,7 @@ class MangaController :
* @param query the search query to pass to the search controller * @param query the search query to pass to the search controller
*/ */
fun performGlobalSearch(query: String) { fun performGlobalSearch(query: String) {
router.pushController(GlobalSearchController(query).withFadeTransaction()) router.pushController(GlobalSearchController(query))
} }
/** /**

View File

@ -10,7 +10,7 @@ import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
import eu.kanade.tachiyomi.data.updater.AppUpdateResult import eu.kanade.tachiyomi.data.updater.AppUpdateResult
import eu.kanade.tachiyomi.ui.base.controller.BasicComposeController import eu.kanade.tachiyomi.ui.base.controller.BasicComposeController
import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.main.WhatsNewDialogController import eu.kanade.tachiyomi.ui.main.WhatsNewDialogController
import eu.kanade.tachiyomi.util.lang.launchNow import eu.kanade.tachiyomi.util.lang.launchNow
import eu.kanade.tachiyomi.util.lang.toDateTimestampString import eu.kanade.tachiyomi.util.lang.toDateTimestampString
@ -37,7 +37,7 @@ class AboutController : BasicComposeController(), NoAppBarElevationController {
checkVersion = this::checkVersion, checkVersion = this::checkVersion,
getFormattedBuildTime = this::getFormattedBuildTime, getFormattedBuildTime = this::getFormattedBuildTime,
onClickLicenses = { onClickLicenses = {
router.pushController(LicensesController().withFadeTransaction()) router.pushController(LicensesController())
}, },
onClickWhatsNew = { onClickWhatsNew = {
WhatsNewDialogController().showDialog(router) WhatsNewDialogController().showDialog(router)

View File

@ -11,7 +11,7 @@ import eu.kanade.tachiyomi.data.download.DownloadManager
import eu.kanade.tachiyomi.data.download.DownloadService import eu.kanade.tachiyomi.data.download.DownloadService
import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController
import eu.kanade.tachiyomi.ui.base.controller.RootController import eu.kanade.tachiyomi.ui.base.controller.RootController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.category.CategoryController import eu.kanade.tachiyomi.ui.category.CategoryController
import eu.kanade.tachiyomi.ui.download.DownloadController import eu.kanade.tachiyomi.ui.download.DownloadController
import eu.kanade.tachiyomi.ui.recent.history.HistoryController import eu.kanade.tachiyomi.ui.recent.history.HistoryController
@ -86,7 +86,7 @@ class MoreController :
iconRes = R.drawable.ic_updates_outline_24dp iconRes = R.drawable.ic_updates_outline_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(UpdatesController().withFadeTransaction()) router.pushController(UpdatesController())
} }
} }
} }
@ -96,7 +96,7 @@ class MoreController :
iconRes = R.drawable.ic_history_24dp iconRes = R.drawable.ic_history_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(HistoryController().withFadeTransaction()) router.pushController(HistoryController())
} }
} }
} }
@ -110,7 +110,7 @@ class MoreController :
iconRes = R.drawable.ic_get_app_24dp iconRes = R.drawable.ic_get_app_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(DownloadController().withFadeTransaction()) router.pushController(DownloadController())
} }
} }
preference { preference {
@ -118,7 +118,7 @@ class MoreController :
iconRes = R.drawable.ic_label_24dp iconRes = R.drawable.ic_label_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(CategoryController().withFadeTransaction()) router.pushController(CategoryController())
} }
} }
preference { preference {
@ -126,7 +126,7 @@ class MoreController :
iconRes = R.drawable.ic_settings_backup_restore_24dp iconRes = R.drawable.ic_settings_backup_restore_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(SettingsBackupController().withFadeTransaction()) router.pushController(SettingsBackupController())
} }
} }
// SY --> // SY -->
@ -136,7 +136,7 @@ class MoreController :
iconRes = R.drawable.ic_playlist_add_black_24dp iconRes = R.drawable.ic_playlist_add_black_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(BatchAddController().withFadeTransaction()) router.pushController(BatchAddController())
} }
} }
} }
@ -149,7 +149,7 @@ class MoreController :
iconRes = R.drawable.ic_settings_24dp iconRes = R.drawable.ic_settings_24dp
iconTint = tintColor iconTint = tintColor
onClick { onClick {
router.pushController(SettingsMainController().withFadeTransaction()) router.pushController(SettingsMainController())
} }
} }
preference { preference {
@ -157,7 +157,7 @@ class MoreController :
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_about titleRes = R.string.pref_category_about
onClick { onClick {
router.pushController(AboutController().withFadeTransaction()) router.pushController(AboutController())
} }
} }
preference { preference {

View File

@ -11,7 +11,7 @@ import eu.kanade.presentation.history.HistoryScreen
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.ui.base.controller.ComposeController import eu.kanade.tachiyomi.ui.base.controller.ComposeController
import eu.kanade.tachiyomi.ui.base.controller.RootController import eu.kanade.tachiyomi.ui.base.controller.RootController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.ui.reader.ReaderActivity import eu.kanade.tachiyomi.ui.reader.ReaderActivity
import eu.kanade.tachiyomi.util.system.toast import eu.kanade.tachiyomi.util.system.toast
@ -34,7 +34,7 @@ class HistoryController : ComposeController<HistoryPresenter>(), RootController
nestedScrollInterop = nestedScrollInterop, nestedScrollInterop = nestedScrollInterop,
presenter = presenter, presenter = presenter,
onClickCover = { history -> onClickCover = { history ->
router.pushController(MangaController(history).withFadeTransaction()) router.pushController(MangaController(history))
}, },
onClickResume = { history -> onClickResume = { history ->
presenter.getNextChapterForManga(history.mangaId, history.chapterId) presenter.getNextChapterForManga(history.mangaId, history.chapterId)

View File

@ -20,7 +20,7 @@ import eu.kanade.tachiyomi.data.notification.Notifications
import eu.kanade.tachiyomi.databinding.UpdatesControllerBinding import eu.kanade.tachiyomi.databinding.UpdatesControllerBinding
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.RootController import eu.kanade.tachiyomi.ui.base.controller.RootController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.main.MainActivity import eu.kanade.tachiyomi.ui.main.MainActivity
import eu.kanade.tachiyomi.ui.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.ui.manga.chapter.base.BaseChaptersAdapter import eu.kanade.tachiyomi.ui.manga.chapter.base.BaseChaptersAdapter
@ -282,7 +282,7 @@ class UpdatesController :
} }
private fun openManga(chapter: UpdatesItem) { private fun openManga(chapter: UpdatesItem) {
router.pushController(MangaController(chapter.manga).withFadeTransaction()) router.pushController(MangaController(chapter.manga))
} }
/** /**

View File

@ -30,7 +30,7 @@ import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.source.SourceManager.Companion.DELEGATED_SOURCES import eu.kanade.tachiyomi.source.SourceManager.Companion.DELEGATED_SOURCES
import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.base.controller.DialogController
import eu.kanade.tachiyomi.ui.base.controller.openInBrowser import eu.kanade.tachiyomi.ui.base.controller.openInBrowser
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.setting.database.ClearDatabaseController import eu.kanade.tachiyomi.ui.setting.database.ClearDatabaseController
import eu.kanade.tachiyomi.util.CrashLogUtil import eu.kanade.tachiyomi.util.CrashLogUtil
import eu.kanade.tachiyomi.util.lang.launchIO import eu.kanade.tachiyomi.util.lang.launchIO
@ -158,7 +158,7 @@ class SettingsAdvancedController : SettingsController() {
summaryRes = R.string.pref_clear_database_summary summaryRes = R.string.pref_clear_database_summary
onClick { onClick {
router.pushController(ClearDatabaseController().withFadeTransaction()) router.pushController(ClearDatabaseController())
} }
} }
} }
@ -413,7 +413,7 @@ class SettingsAdvancedController : SettingsController() {
key = "pref_open_debug_menu" key = "pref_open_debug_menu"
titleRes = R.string.open_debug_menu titleRes = R.string.open_debug_menu
summary = HtmlCompat.fromHtml(context.getString(R.string.open_debug_menu_summary), HtmlCompat.FROM_HTML_MODE_LEGACY) summary = HtmlCompat.fromHtml(context.getString(R.string.open_debug_menu_summary), HtmlCompat.FROM_HTML_MODE_LEGACY)
onClick { router.pushController(SettingsDebugController().withFadeTransaction()) } onClick { router.pushController(SettingsDebugController()) }
} }
} }
// <-- EXH // <-- EXH

View File

@ -4,6 +4,7 @@ import androidx.fragment.app.FragmentActivity
import androidx.preference.PreferenceScreen import androidx.preference.PreferenceScreen
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.extension.ExtensionUpdateJob import eu.kanade.tachiyomi.extension.ExtensionUpdateJob
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.category.repos.RepoController import eu.kanade.tachiyomi.ui.category.repos.RepoController
import eu.kanade.tachiyomi.ui.category.sources.SourceCategoryController import eu.kanade.tachiyomi.ui.category.sources.SourceCategoryController
@ -38,7 +39,7 @@ class SettingsBrowseController : SettingsController() {
summary = context.resources.getQuantityString(R.plurals.num_categories, catCount, catCount) summary = context.resources.getQuantityString(R.plurals.num_categories, catCount, catCount)
onClick { onClick {
router.pushController(SourceCategoryController().withFadeTransaction()) router.pushController(SourceCategoryController())
} }
} }
switchPreference { switchPreference {
@ -91,7 +92,7 @@ class SettingsBrowseController : SettingsController() {
summary = context.resources.getQuantityString(R.plurals.num_repos, catCount, catCount) summary = context.resources.getQuantityString(R.plurals.num_repos, catCount, catCount)
onClick { onClick {
router.pushController(RepoController().withFadeTransaction()) router.pushController(RepoController())
} }
} }
// SY <-- // SY <--

View File

@ -21,7 +21,7 @@ import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.track.TrackManager import eu.kanade.tachiyomi.data.track.TrackManager
import eu.kanade.tachiyomi.databinding.PrefLibraryColumnsBinding import eu.kanade.tachiyomi.databinding.PrefLibraryColumnsBinding
import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.base.controller.DialogController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.category.CategoryController import eu.kanade.tachiyomi.ui.category.CategoryController
import eu.kanade.tachiyomi.ui.category.genre.SortTagController import eu.kanade.tachiyomi.ui.category.genre.SortTagController
import eu.kanade.tachiyomi.ui.library.LibrarySettingsSheet import eu.kanade.tachiyomi.ui.library.LibrarySettingsSheet
@ -129,7 +129,7 @@ class SettingsLibraryController : SettingsController() {
summary = context.resources.getQuantityString(R.plurals.num_categories, catCount, catCount) summary = context.resources.getQuantityString(R.plurals.num_categories, catCount, catCount)
onClick { onClick {
router.pushController(CategoryController().withFadeTransaction()) router.pushController(CategoryController())
} }
} }
@ -336,7 +336,7 @@ class SettingsLibraryController : SettingsController() {
val count = preferences.sortTagsForLibrary().get().size val count = preferences.sortTagsForLibrary().get().size
summary = context.resources.getQuantityString(R.plurals.pref_tag_sorting_desc, count, count) summary = context.resources.getQuantityString(R.plurals.pref_tag_sorting_desc, count, count)
onClick { onClick {
router.pushController(SortTagController().withFadeTransaction()) router.pushController(SortTagController())
} }
} }
} }

View File

@ -6,7 +6,7 @@ import android.view.MenuItem
import androidx.appcompat.widget.SearchView import androidx.appcompat.widget.SearchView
import androidx.preference.PreferenceScreen import androidx.preference.PreferenceScreen
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.setting.search.SettingsSearchController import eu.kanade.tachiyomi.ui.setting.search.SettingsSearchController
import eu.kanade.tachiyomi.util.preference.iconRes import eu.kanade.tachiyomi.util.preference.iconRes
import eu.kanade.tachiyomi.util.preference.iconTint import eu.kanade.tachiyomi.util.preference.iconTint
@ -27,55 +27,55 @@ class SettingsMainController : SettingsController() {
iconRes = R.drawable.ic_tune_24dp iconRes = R.drawable.ic_tune_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_general titleRes = R.string.pref_category_general
onClick { navigateTo(SettingsGeneralController()) } onClick { router.pushController(SettingsGeneralController()) }
} }
preference { preference {
iconRes = R.drawable.ic_palette_24dp iconRes = R.drawable.ic_palette_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_appearance titleRes = R.string.pref_category_appearance
onClick { navigateTo(SettingsAppearanceController()) } onClick { router.pushController(SettingsAppearanceController()) }
} }
preference { preference {
iconRes = R.drawable.ic_library_outline_24dp iconRes = R.drawable.ic_library_outline_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_library titleRes = R.string.pref_category_library
onClick { navigateTo(SettingsLibraryController()) } onClick { router.pushController(SettingsLibraryController()) }
} }
preference { preference {
iconRes = R.drawable.ic_chrome_reader_mode_24dp iconRes = R.drawable.ic_chrome_reader_mode_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_reader titleRes = R.string.pref_category_reader
onClick { navigateTo(SettingsReaderController()) } onClick { router.pushController(SettingsReaderController()) }
} }
preference { preference {
iconRes = R.drawable.ic_get_app_24dp iconRes = R.drawable.ic_get_app_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_downloads titleRes = R.string.pref_category_downloads
onClick { navigateTo(SettingsDownloadController()) } onClick { router.pushController(SettingsDownloadController()) }
} }
preference { preference {
iconRes = R.drawable.ic_sync_24dp iconRes = R.drawable.ic_sync_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_tracking titleRes = R.string.pref_category_tracking
onClick { navigateTo(SettingsTrackingController()) } onClick { router.pushController(SettingsTrackingController()) }
} }
preference { preference {
iconRes = R.drawable.ic_browse_outline_24dp iconRes = R.drawable.ic_browse_outline_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.browse titleRes = R.string.browse
onClick { navigateTo(SettingsBrowseController()) } onClick { router.pushController(SettingsBrowseController()) }
} }
preference { preference {
iconRes = R.drawable.ic_settings_backup_restore_24dp iconRes = R.drawable.ic_settings_backup_restore_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.label_backup titleRes = R.string.label_backup
onClick { navigateTo(SettingsBackupController()) } onClick { router.pushController(SettingsBackupController()) }
} }
preference { preference {
iconRes = R.drawable.ic_security_24dp iconRes = R.drawable.ic_security_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_security titleRes = R.string.pref_category_security
onClick { navigateTo(SettingsSecurityController()) } onClick { router.pushController(SettingsSecurityController()) }
} }
// SY --> // SY -->
if (preferences.isHentaiEnabled().get()) { if (preferences.isHentaiEnabled().get()) {
@ -83,7 +83,7 @@ class SettingsMainController : SettingsController() {
iconRes = R.drawable.eh_ic_ehlogo_red_24dp iconRes = R.drawable.eh_ic_ehlogo_red_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_eh titleRes = R.string.pref_category_eh
onClick { navigateTo(SettingsEhController()) } onClick { router.pushController(SettingsEhController()) }
} }
} }
if (MdUtil.getEnabledMangaDexs(preferences).isNotEmpty()) { if (MdUtil.getEnabledMangaDexs(preferences).isNotEmpty()) {
@ -91,7 +91,7 @@ class SettingsMainController : SettingsController() {
iconRes = R.drawable.ic_tracker_mangadex_logo_24dp iconRes = R.drawable.ic_tracker_mangadex_logo_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_mangadex titleRes = R.string.pref_category_mangadex
onClick { navigateTo(SettingsMangaDexController()) } onClick { router.pushController(SettingsMangaDexController()) }
} }
} }
// SY <-- // SY <--
@ -99,14 +99,10 @@ class SettingsMainController : SettingsController() {
iconRes = R.drawable.ic_code_24dp iconRes = R.drawable.ic_code_24dp
iconTint = tintColor iconTint = tintColor
titleRes = R.string.pref_category_advanced titleRes = R.string.pref_category_advanced
onClick { navigateTo(SettingsAdvancedController()) } onClick { router.pushController(SettingsAdvancedController()) }
} }
} }
private fun navigateTo(controller: SettingsController) {
router.pushController(controller.withFadeTransaction())
}
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
// Inflate menu // Inflate menu
inflater.inflate(R.menu.settings_main, menu) inflater.inflate(R.menu.settings_main, menu)
@ -123,7 +119,7 @@ class SettingsMainController : SettingsController() {
object : MenuItem.OnActionExpandListener { object : MenuItem.OnActionExpandListener {
override fun onMenuItemActionExpand(item: MenuItem?): Boolean { override fun onMenuItemActionExpand(item: MenuItem?): Boolean {
preferences.lastSearchQuerySearchSettings().set("") // reset saved search query preferences.lastSearchQuerySearchSettings().set("") // reset saved search query
router.pushController(SettingsSearchController().withFadeTransaction()) router.pushController(SettingsSearchController())
return true return true
} }

View File

@ -11,6 +11,7 @@ import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.preference.PreferenceValues import eu.kanade.tachiyomi.data.preference.PreferenceValues
import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.base.controller.DialogController
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.base.delegate.SecureActivityDelegate import eu.kanade.tachiyomi.ui.base.delegate.SecureActivityDelegate
import eu.kanade.tachiyomi.ui.category.biometric.BiometricTimesController import eu.kanade.tachiyomi.ui.category.biometric.BiometricTimesController
@ -120,7 +121,7 @@ class SettingsSecurityController : SettingsController() {
visibleIf(preferences.useAuthenticator()) { it } visibleIf(preferences.useAuthenticator()) { it }
onClick { onClick {
router.pushController(BiometricTimesController().withFadeTransaction()) router.pushController(BiometricTimesController())
} }
} }
preference { preference {

View File

@ -12,7 +12,7 @@ import dev.chrisbanes.insetter.applyInsetter
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.SettingsSearchControllerBinding import eu.kanade.tachiyomi.databinding.SettingsSearchControllerBinding
import eu.kanade.tachiyomi.ui.base.controller.NucleusController import eu.kanade.tachiyomi.ui.base.controller.NucleusController
import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.base.controller.pushController
import eu.kanade.tachiyomi.ui.setting.SettingsController import eu.kanade.tachiyomi.ui.setting.SettingsController
/** /**
@ -158,6 +158,6 @@ class SettingsSearchController :
presenter.preferences.lastSearchQuerySearchSettings().set(it.toString()) presenter.preferences.lastSearchQuerySearchSettings().set(it.toString())
} }
router.pushController(ctrl.withFadeTransaction()) router.pushController(ctrl)
} }
} }

View File

@ -7,6 +7,7 @@ import androidx.core.os.bundleOf
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.database.models.Manga import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.source.CatalogueSource import eu.kanade.tachiyomi.source.CatalogueSource
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.SourceController import eu.kanade.tachiyomi.ui.browse.source.SourceController
import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController import eu.kanade.tachiyomi.ui.browse.source.browse.BrowseSourceController
@ -56,7 +57,7 @@ class RecommendsController(bundle: Bundle) : BrowseSourceController(bundle) {
bundleOf( bundleOf(
SourceController.SMART_SEARCH_CONFIG to smartSearchConfig, SourceController.SMART_SEARCH_CONFIG to smartSearchConfig,
), ),
).withFadeTransaction(), ),
) )
} }

View File

@ -7,6 +7,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterEhBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterEhBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -101,7 +102,7 @@ class EHentaiDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -6,6 +6,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapter8mBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapter8mBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -52,7 +53,7 @@ class EightMusesDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -6,6 +6,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterHbBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterHbBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -53,7 +54,7 @@ class HBrowseDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -6,6 +6,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterHiBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterHiBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -66,7 +67,7 @@ class HitomiDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -8,6 +8,7 @@ import androidx.core.view.isVisible
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterMdBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterMdBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -63,7 +64,7 @@ class MangaDexDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -7,6 +7,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterNhBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterNhBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -85,7 +86,7 @@ class NHentaiDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -7,6 +7,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterPeBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterPeBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -75,7 +76,7 @@ class PervEdenDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -7,6 +7,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterPuBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterPuBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -81,7 +82,7 @@ class PururinDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }

View File

@ -7,6 +7,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.databinding.DescriptionAdapterTsBinding import eu.kanade.tachiyomi.databinding.DescriptionAdapterTsBinding
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.manga.MangaController import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.util.system.copyToClipboard import eu.kanade.tachiyomi.util.system.copyToClipboard
@ -82,7 +83,7 @@ class TsuminoDescriptionAdapter(
controller.router?.pushController( controller.router?.pushController(
MetadataViewController( MetadataViewController(
controller.manga, controller.manga,
).withFadeTransaction(), ),
) )
} }
} }