Update compose to 2023.08.00

This commit is contained in:
Oleksandr Balan
2023-09-06 22:37:10 +02:00
parent 9addca8f27
commit 23a394897a
35 changed files with 431 additions and 332 deletions

View File

@@ -4,31 +4,17 @@ import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.BackHandler
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.animation.Crossfade
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.safeDrawingPadding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.material.Icon
import androidx.compose.material.MaterialTheme
import androidx.compose.material.Scaffold
import androidx.compose.material.Surface
import androidx.compose.material.Text
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.KeyboardArrowRight
import androidx.compose.runtime.Composable
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.core.view.WindowCompat
import eu.wewox.pagecurl.components.TopBar
import eu.wewox.pagecurl.screens.BackPagePageCurlScreen
import eu.wewox.pagecurl.screens.InteractionConfigInPageCurlScreen
import eu.wewox.pagecurl.screens.PagingPageCurlScreen
@@ -36,7 +22,6 @@ import eu.wewox.pagecurl.screens.SettingsPageCurlScreen
import eu.wewox.pagecurl.screens.ShadowInPageCurlScreen
import eu.wewox.pagecurl.screens.SimplePageCurlScreen
import eu.wewox.pagecurl.screens.StateInPageCurlScreen
import eu.wewox.pagecurl.ui.SpacingMedium
import eu.wewox.pagecurl.ui.theme.PageCurlTheme
/**
@@ -46,6 +31,7 @@ import eu.wewox.pagecurl.ui.theme.PageCurlTheme
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
WindowCompat.setDecorFitsSystemWindows(window, false)
@@ -57,8 +43,8 @@ class MainActivity : ComponentActivity() {
example = null
}
Surface(color = MaterialTheme.colors.background) {
Crossfade(targetState = example, Modifier.safeDrawingPadding()) { selected ->
Surface(color = MaterialTheme.colorScheme.background) {
Crossfade(targetState = example, Modifier.safeDrawingPadding(), label = "Crossfade") { selected ->
when (selected) {
null -> RootScreen(onExampleClick = { example = it })
Example.SimplePageCurl -> SimplePageCurlScreen()
@@ -75,37 +61,3 @@ class MainActivity : ComponentActivity() {
}
}
}
@Composable
private fun RootScreen(onExampleClick: (Example) -> Unit) {
Scaffold(
topBar = { TopBar("Page Curl Demo") }
) { padding ->
LazyColumn(Modifier.padding(padding)) {
items(Example.values()) {
Row(
verticalAlignment = Alignment.CenterVertically,
modifier = Modifier
.fillMaxWidth()
.clickable { onExampleClick(it) }
.padding(SpacingMedium)
) {
Column(modifier = Modifier.weight(1f)) {
Text(
text = it.label,
style = MaterialTheme.typography.h6
)
Text(
text = it.description,
style = MaterialTheme.typography.body2
)
}
Icon(
imageVector = Icons.Default.KeyboardArrowRight,
contentDescription = null
)
}
}
}
}
}