mirror of
https://github.com/mihonapp/mihon.git
synced 2025-11-14 21:18:56 +01:00
Remove top app bar scroll behavior
This lets us make it more consistent with the Compose screens for now. Maybe it'll return in the future. This also includes making the AboutController a full Compose controller with a new abstracted TopAppBar composable.
This commit is contained in:
@@ -73,6 +73,27 @@ abstract class BasicComposeController :
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Basic Compose controller without a presenter.
|
||||
*/
|
||||
abstract class BasicFullComposeController :
|
||||
BaseController<ComposeControllerBinding>(),
|
||||
FullComposeContentController {
|
||||
|
||||
override fun createBinding(inflater: LayoutInflater) =
|
||||
ComposeControllerBinding.inflate(inflater)
|
||||
|
||||
override fun onViewCreated(view: View) {
|
||||
super.onViewCreated(view)
|
||||
|
||||
binding.root.apply {
|
||||
setComposeContent {
|
||||
ComposeContent()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
abstract class SearchableComposeController<P : BasePresenter<*>>(bundle: Bundle? = null) :
|
||||
SearchableNucleusController<ComposeControllerBinding, P>(bundle),
|
||||
ComposeContentController {
|
||||
|
||||
@@ -43,7 +43,7 @@ import eu.kanade.tachiyomi.extension.api.ExtensionGithubApi
|
||||
import eu.kanade.tachiyomi.ui.base.activity.BaseActivity
|
||||
import eu.kanade.tachiyomi.ui.base.controller.DialogController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.FabController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.FullComposeController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.FullComposeContentController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.RootController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.TabbedController
|
||||
@@ -606,7 +606,7 @@ class MainActivity : BaseActivity() {
|
||||
binding.fabLayout.rootFab.hide()
|
||||
}
|
||||
|
||||
val isFullComposeController = internalTo is FullComposeController<*>
|
||||
val isFullComposeController = internalTo is FullComposeContentController
|
||||
binding.appbar.isVisible = !isFullComposeController
|
||||
binding.controllerContainer.enableScrollingBehavior(!isFullComposeController)
|
||||
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
package eu.kanade.tachiyomi.ui.more
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.input.nestedscroll.NestedScrollConnection
|
||||
import eu.kanade.presentation.more.about.AboutScreen
|
||||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
|
||||
import eu.kanade.tachiyomi.data.updater.AppUpdateResult
|
||||
import eu.kanade.tachiyomi.ui.base.controller.BasicComposeController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.NoAppBarElevationController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.BasicFullComposeController
|
||||
import eu.kanade.tachiyomi.ui.base.controller.pushController
|
||||
import eu.kanade.tachiyomi.util.lang.launchNow
|
||||
import eu.kanade.tachiyomi.util.lang.toDateTimestampString
|
||||
@@ -22,17 +20,15 @@ import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.TimeZone
|
||||
|
||||
class AboutController : BasicComposeController(), NoAppBarElevationController {
|
||||
class AboutController : BasicFullComposeController() {
|
||||
|
||||
private val preferences: PreferencesHelper by injectLazy()
|
||||
private val updateChecker by lazy { AppUpdateChecker() }
|
||||
|
||||
override fun getTitle() = resources?.getString(R.string.pref_category_about)
|
||||
|
||||
@Composable
|
||||
override fun ComposeContent(nestedScrollInterop: NestedScrollConnection) {
|
||||
override fun ComposeContent() {
|
||||
AboutScreen(
|
||||
nestedScrollInterop = nestedScrollInterop,
|
||||
navigateUp = router::popCurrentController,
|
||||
checkVersion = this::checkVersion,
|
||||
getFormattedBuildTime = this::getFormattedBuildTime,
|
||||
onClickLicenses = { router.pushController(LicensesController()) },
|
||||
|
||||
Reference in New Issue
Block a user