rename BaseScreen to AppScaffold
This commit is contained in:
+2
-2
@@ -15,7 +15,7 @@ import androidx.compose.ui.res.stringResource
|
|||||||
import ru.shadowsparky.callblocker.R
|
import ru.shadowsparky.callblocker.R
|
||||||
import ru.shadowsparky.callblocker.domain.RejectPolicyManager
|
import ru.shadowsparky.callblocker.domain.RejectPolicyManager
|
||||||
import ru.shadowsparky.koin
|
import ru.shadowsparky.koin
|
||||||
import ru.shadowsparky.ui.BaseScreen
|
import ru.shadowsparky.ui.AppScaffold
|
||||||
|
|
||||||
class MainActivity : ComponentActivity() {
|
class MainActivity : ComponentActivity() {
|
||||||
private val rejectPolicyManager by koin.inject<RejectPolicyManager>()
|
private val rejectPolicyManager by koin.inject<RejectPolicyManager>()
|
||||||
@@ -26,7 +26,7 @@ class MainActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
val permissionRequest = newPermissionRequest()
|
val permissionRequest = newPermissionRequest()
|
||||||
setContent {
|
setContent {
|
||||||
BaseScreen(
|
AppScaffold(
|
||||||
appBar = {
|
appBar = {
|
||||||
TopAppBar(title = { Text(stringResource(R.string.app_name)) })
|
TopAppBar(title = { Text(stringResource(R.string.app_name)) })
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -110,7 +110,7 @@ fun BaseScreen(
|
|||||||
content: @Composable (padding: PaddingValues) -> Unit,
|
content: @Composable (padding: PaddingValues) -> Unit,
|
||||||
appBar: @Composable () -> Unit
|
appBar: @Composable () -> Unit
|
||||||
) {
|
) {
|
||||||
ru.shadowsparky.ui.BaseScreen(
|
ru.shadowsparky.ui.AppScaffold(
|
||||||
modifier,
|
modifier,
|
||||||
scrollBehavior,
|
scrollBehavior,
|
||||||
snackbarState,
|
snackbarState,
|
||||||
|
|||||||
+2
-2
@@ -9,7 +9,7 @@ import androidx.compose.material3.TopAppBarScrollBehavior
|
|||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.CompositionLocalProvider
|
import androidx.compose.runtime.CompositionLocalProvider
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import ru.shadowsparky.ui.BaseScreen
|
import ru.shadowsparky.ui.AppScaffold
|
||||||
import ru.shadowsparky.ui.LocalBlurState
|
import ru.shadowsparky.ui.LocalBlurState
|
||||||
import ru.shadowsparky.ui.applyBlurEffect
|
import ru.shadowsparky.ui.applyBlurEffect
|
||||||
import ru.shadowsparky.ui.rememberBlurState
|
import ru.shadowsparky.ui.rememberBlurState
|
||||||
@@ -41,7 +41,7 @@ fun BaseMainScreen(
|
|||||||
) {
|
) {
|
||||||
val blurState = rememberBlurState()
|
val blurState = rememberBlurState()
|
||||||
CompositionLocalProvider(LocalBlurState provides blurState) {
|
CompositionLocalProvider(LocalBlurState provides blurState) {
|
||||||
BaseScreen(
|
AppScaffold(
|
||||||
appBar = { appBar() },
|
appBar = { appBar() },
|
||||||
currentRoute = route,
|
currentRoute = route,
|
||||||
onSelectNavigation = { onNavigate(it) },
|
onSelectNavigation = { onNavigate(it) },
|
||||||
|
|||||||
+2
-2
@@ -41,7 +41,7 @@ import androidx.compose.ui.text.style.TextAlign
|
|||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import org.jetbrains.compose.resources.painterResource
|
import org.jetbrains.compose.resources.painterResource
|
||||||
import org.jetbrains.compose.resources.stringResource
|
import org.jetbrains.compose.resources.stringResource
|
||||||
import ru.shadowsparky.ui.BaseScreen
|
import ru.shadowsparky.ui.AppScaffold
|
||||||
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
|
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
|
||||||
import ru.shadowsparky.ui.components.Loading
|
import ru.shadowsparky.ui.components.Loading
|
||||||
import ru.shadowsparky.vbox.shared.domain.EpisodeOfflineVideo
|
import ru.shadowsparky.vbox.shared.domain.EpisodeOfflineVideo
|
||||||
@@ -54,7 +54,7 @@ import ru.shadowsparky.vbox.shared.presentation.SimpleAppBar
|
|||||||
@Composable
|
@Composable
|
||||||
fun OfflineVideoScreen(component: OfflineVideoComponent) {
|
fun OfflineVideoScreen(component: OfflineVideoComponent) {
|
||||||
val info by component.info.collectAsState(null)
|
val info by component.info.collectAsState(null)
|
||||||
BaseScreen(
|
AppScaffold(
|
||||||
appBar = {
|
appBar = {
|
||||||
SimpleAppBar(
|
SimpleAppBar(
|
||||||
title = stringResource(Res.string.offline_video),
|
title = stringResource(Res.string.offline_video),
|
||||||
|
|||||||
+2
-2
@@ -27,7 +27,7 @@ import androidx.compose.ui.draw.alpha
|
|||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import org.jetbrains.compose.resources.stringResource
|
import org.jetbrains.compose.resources.stringResource
|
||||||
import ru.shadowsparky.ui.BaseScreen
|
import ru.shadowsparky.ui.AppScaffold
|
||||||
import ru.shadowsparky.ui.components.Loading
|
import ru.shadowsparky.ui.components.Loading
|
||||||
import ru.shadowsparky.vbox.shared.presentation.list.ErrorAndRetry
|
import ru.shadowsparky.vbox.shared.presentation.list.ErrorAndRetry
|
||||||
import ru.shadowsparky.videoplayer.PlayerEvent
|
import ru.shadowsparky.videoplayer.PlayerEvent
|
||||||
@@ -41,7 +41,7 @@ fun PlayerScreen(component: PlayerComponent) {
|
|||||||
LaunchedEffect(event) {
|
LaunchedEffect(event) {
|
||||||
if (event is PlayerComponentState.Ended) component.onBack()
|
if (event is PlayerComponentState.Ended) component.onBack()
|
||||||
}
|
}
|
||||||
BaseScreen(appBar = {}) {
|
AppScaffold(appBar = {}) {
|
||||||
when (val e = event) {
|
when (val e = event) {
|
||||||
is PlayerComponentState.Event -> {
|
is PlayerComponentState.Event -> {
|
||||||
when (val state = e.state) {
|
when (val state = e.state) {
|
||||||
|
|||||||
+2
-2
@@ -38,7 +38,7 @@ import androidx.compose.ui.platform.LocalSoftwareKeyboardController
|
|||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import org.jetbrains.compose.resources.stringResource
|
import org.jetbrains.compose.resources.stringResource
|
||||||
import ru.shadowsparky.ui.BaseScreen
|
import ru.shadowsparky.ui.AppScaffold
|
||||||
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
|
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
|
||||||
import ru.shadowsparky.ui.components.TextPreference
|
import ru.shadowsparky.ui.components.TextPreference
|
||||||
import ru.shadowsparky.vbox.shared.domain.tag.TagInfo
|
import ru.shadowsparky.vbox.shared.domain.tag.TagInfo
|
||||||
@@ -50,7 +50,7 @@ fun TagScreen(component: TagComponent) {
|
|||||||
val userTags by component.userTags.collectAsStateWithLifecycle(emptyList())
|
val userTags by component.userTags.collectAsStateWithLifecycle(emptyList())
|
||||||
var isAddSheetVisible by rememberSaveable { mutableStateOf(false) }
|
var isAddSheetVisible by rememberSaveable { mutableStateOf(false) }
|
||||||
var activeTag by remember { mutableStateOf<TagInfo?>(null) }
|
var activeTag by remember { mutableStateOf<TagInfo?>(null) }
|
||||||
BaseScreen(
|
AppScaffold(
|
||||||
appBar = {
|
appBar = {
|
||||||
SimpleAppBar(
|
SimpleAppBar(
|
||||||
stringResource(Res.string.user_tags),
|
stringResource(Res.string.user_tags),
|
||||||
|
|||||||
@@ -35,8 +35,6 @@ import ru.shadowsparky.ui.nav.Route
|
|||||||
import ru.shadowsparky.ui.theme.ComponentDefaults
|
import ru.shadowsparky.ui.theme.ComponentDefaults
|
||||||
import ru.shadowsparky.ui.theme.getColorScheme
|
import ru.shadowsparky.ui.theme.getColorScheme
|
||||||
|
|
||||||
const val USE_EXPERIMENTAL_RAIL = true
|
|
||||||
|
|
||||||
@Immutable
|
@Immutable
|
||||||
data class NavigationEntry<out T : Route>(
|
data class NavigationEntry<out T : Route>(
|
||||||
val route: T,
|
val route: T,
|
||||||
@@ -46,7 +44,7 @@ data class NavigationEntry<out T : Route>(
|
|||||||
|
|
||||||
@OptIn(ExperimentalMaterial3Api::class)
|
@OptIn(ExperimentalMaterial3Api::class)
|
||||||
@Composable
|
@Composable
|
||||||
fun BaseScreen(
|
fun AppScaffold(
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
scrollBehavior: TopAppBarScrollBehavior? = TopAppBarDefaults.pinnedScrollBehavior(),
|
scrollBehavior: TopAppBarScrollBehavior? = TopAppBarDefaults.pinnedScrollBehavior(),
|
||||||
snackbarState: SnackbarHostState? = null,
|
snackbarState: SnackbarHostState? = null,
|
||||||
@@ -54,7 +52,7 @@ fun BaseScreen(
|
|||||||
appBar: @Composable (scroll: TopAppBarScrollBehavior?) -> Unit,
|
appBar: @Composable (scroll: TopAppBarScrollBehavior?) -> Unit,
|
||||||
content: @Composable (padding: PaddingValues) -> Unit,
|
content: @Composable (padding: PaddingValues) -> Unit,
|
||||||
) {
|
) {
|
||||||
BaseScreen<Route>(
|
AppScaffold<Route>(
|
||||||
modifier,
|
modifier,
|
||||||
scrollBehavior,
|
scrollBehavior,
|
||||||
snackbarState,
|
snackbarState,
|
||||||
@@ -66,7 +64,7 @@ fun BaseScreen(
|
|||||||
|
|
||||||
@OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class)
|
@OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class)
|
||||||
@Composable
|
@Composable
|
||||||
fun <T : Route> BaseScreen(
|
fun <T : Route> AppScaffold(
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
scrollBehavior: TopAppBarScrollBehavior? = TopAppBarDefaults.pinnedScrollBehavior(),
|
scrollBehavior: TopAppBarScrollBehavior? = TopAppBarDefaults.pinnedScrollBehavior(),
|
||||||
snackbarState: SnackbarHostState? = null,
|
snackbarState: SnackbarHostState? = null,
|
||||||
@@ -81,14 +79,14 @@ fun <T : Route> BaseScreen(
|
|||||||
MaterialExpressiveTheme(colorScheme = colorScheme) {
|
MaterialExpressiveTheme(colorScheme = colorScheme) {
|
||||||
Scaffold(
|
Scaffold(
|
||||||
bottomBar = {
|
bottomBar = {
|
||||||
if (windowType.isCompact || !USE_EXPERIMENTAL_RAIL) {
|
if (windowType.isCompact) {
|
||||||
BottomBar(navigationEntries, currentRoute, onSelectNavigation)
|
BottomBar(navigationEntries, currentRoute, onSelectNavigation)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
topBar = {
|
topBar = {
|
||||||
appBar(scrollBehavior)
|
appBar(scrollBehavior)
|
||||||
}, content = {
|
}, content = {
|
||||||
if (windowType.isExpanded && navigationEntries?.isNotEmpty() == true && USE_EXPERIMENTAL_RAIL) {
|
if (windowType.isExpanded && navigationEntries?.isNotEmpty() == true) {
|
||||||
ExpandedContent(
|
ExpandedContent(
|
||||||
it,
|
it,
|
||||||
navigationEntries,
|
navigationEntries,
|
||||||
|
|||||||
Reference in New Issue
Block a user