enhance: Base controller for compose

This commit is contained in:
ziro 2024-01-11 19:27:36 +07:00
parent 22d14acf37
commit e4967ca7a5
Signed by: null2264
GPG key ID: BA64F8B60AF3EFB6
2 changed files with 37 additions and 20 deletions

View file

@ -1,27 +1,14 @@
package dev.yokai.presentation.extension
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.compose.material3.Text
import androidx.compose.ui.platform.ComposeView
import dev.yokai.presentation.theme.YokaiTheme
import eu.kanade.tachiyomi.ui.base.controller.BaseController
import androidx.compose.runtime.Composable
import eu.kanade.tachiyomi.ui.base.controller.BaseComposeController
class ExtensionDetailsController(bundle: Bundle? = null) : BaseController(bundle) {
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup,
savedViewState: Bundle?
): View {
return ComposeView(container.context).apply {
setContent {
YokaiTheme {
// TODO
Text(text = "Hello World")
}
}
}
class ExtensionDetailsController(bundle: Bundle? = null) : BaseComposeController(bundle) {
@Composable
override fun ScreenContent() {
// TODO
Text(text = "Hello World")
}
}

View file

@ -0,0 +1,30 @@
package eu.kanade.tachiyomi.ui.base.controller
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.ComposeView
import dev.yokai.presentation.theme.YokaiTheme
abstract class BaseComposeController(bundle: Bundle? = null) :
BaseController(bundle) {
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup,
savedViewState: Bundle?
): View {
return ComposeView(container.context).apply {
setContent {
YokaiTheme {
ScreenContent()
}
}
}
}
@Composable
abstract fun ScreenContent()
}