Skip to content

Commit 5bdd7c5

Browse files
authored
Merge pull request #34 from utamori/feat/m3
migrate to material3
2 parents 370f64d + debcdc8 commit 5bdd7c5

File tree

5 files changed

+28
-27
lines changed

5 files changed

+28
-27
lines changed

composeApp/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ kotlin {
4040
commonMain.dependencies {
4141
implementation(compose.runtime)
4242
implementation(compose.foundation)
43-
implementation(compose.material)
43+
implementation(compose.material3)
4444
implementation(compose.ui)
4545
implementation(compose.components.resources)
4646
implementation(compose.components.uiToolingPreview)

composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/App.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package com.jetbrains.kmpapp
22

33
import androidx.compose.foundation.isSystemInDarkTheme
4-
import androidx.compose.material.MaterialTheme
5-
import androidx.compose.material.Surface
6-
import androidx.compose.material.darkColors
7-
import androidx.compose.material.lightColors
4+
import androidx.compose.material3.MaterialTheme
5+
import androidx.compose.material3.Surface
6+
import androidx.compose.material3.darkColorScheme
7+
import androidx.compose.material3.lightColorScheme
88
import androidx.compose.runtime.Composable
99
import androidx.navigation.NavHostController
1010
import androidx.navigation.compose.NavHost
@@ -24,7 +24,7 @@ data class DetailDestination(val objectId: Int)
2424
@Composable
2525
fun App() {
2626
MaterialTheme(
27-
colors = if (isSystemInDarkTheme()) darkColors() else lightColors()
27+
colorScheme = if (isSystemInDarkTheme()) darkColorScheme() else lightColorScheme()
2828
) {
2929
Surface {
3030
val navController: NavHostController = rememberNavController()

composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/EmptyScreenContent.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.jetbrains.kmpapp.screens
22

33
import androidx.compose.foundation.layout.Box
4-
import androidx.compose.material.Text
4+
import androidx.compose.material3.Text
55
import androidx.compose.runtime.Composable
66
import androidx.compose.ui.Alignment
77
import androidx.compose.ui.Modifier

composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/detail/DetailScreen.kt

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,15 @@ import androidx.compose.foundation.layout.windowInsetsPadding
1414
import androidx.compose.foundation.rememberScrollState
1515
import androidx.compose.foundation.text.selection.SelectionContainer
1616
import androidx.compose.foundation.verticalScroll
17-
import androidx.compose.material.Icon
18-
import androidx.compose.material.IconButton
19-
import androidx.compose.material.MaterialTheme
20-
import androidx.compose.material.Scaffold
21-
import androidx.compose.material.Text
22-
import androidx.compose.material.TopAppBar
2317
import androidx.compose.material.icons.Icons
2418
import androidx.compose.material.icons.automirrored.filled.ArrowBack
19+
import androidx.compose.material3.ExperimentalMaterial3Api
20+
import androidx.compose.material3.Icon
21+
import androidx.compose.material3.IconButton
22+
import androidx.compose.material3.MaterialTheme
23+
import androidx.compose.material3.Scaffold
24+
import androidx.compose.material3.Text
25+
import androidx.compose.material3.TopAppBar
2526
import androidx.compose.runtime.Composable
2627
import androidx.compose.runtime.collectAsState
2728
import androidx.compose.runtime.getValue
@@ -74,11 +75,15 @@ private fun ObjectDetails(
7475
) {
7576
Scaffold(
7677
topBar = {
77-
TopAppBar(backgroundColor = MaterialTheme.colors.background) {
78-
IconButton(onClick = onBackClick) {
79-
Icon(Icons.AutoMirrored.Filled.ArrowBack, stringResource(Res.string.back))
78+
@OptIn(ExperimentalMaterial3Api::class)
79+
TopAppBar(
80+
title = {},
81+
navigationIcon = {
82+
IconButton(onClick = onBackClick) {
83+
Icon(Icons.AutoMirrored.Filled.ArrowBack, stringResource(Res.string.back))
84+
}
8085
}
81-
}
86+
)
8287
},
8388
modifier = modifier.windowInsetsPadding(WindowInsets.systemBars),
8489
) { paddingValues ->
@@ -98,7 +103,7 @@ private fun ObjectDetails(
98103

99104
SelectionContainer {
100105
Column(Modifier.padding(12.dp)) {
101-
Text(obj.title, style = MaterialTheme.typography.h6.copy(fontWeight = FontWeight.Bold))
106+
Text(obj.title, style = MaterialTheme.typography.headlineMedium)
102107
Spacer(Modifier.height(6.dp))
103108
LabeledInfo(stringResource(Res.string.label_title), obj.title)
104109
LabeledInfo(stringResource(Res.string.label_artist), obj.artistDisplayName)

composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/list/ListScreen.kt

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,14 @@ import androidx.compose.foundation.layout.safeDrawing
1818
import androidx.compose.foundation.lazy.grid.GridCells
1919
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
2020
import androidx.compose.foundation.lazy.grid.items
21-
import androidx.compose.material.MaterialTheme
22-
import androidx.compose.material.Text
21+
import androidx.compose.material3.MaterialTheme
22+
import androidx.compose.material3.Text
2323
import androidx.compose.runtime.Composable
2424
import androidx.compose.runtime.collectAsState
2525
import androidx.compose.runtime.getValue
2626
import androidx.compose.ui.Modifier
2727
import androidx.compose.ui.graphics.Color
2828
import androidx.compose.ui.layout.ContentScale
29-
import androidx.compose.ui.text.font.FontWeight
3029
import androidx.compose.ui.unit.dp
3130
import coil3.compose.AsyncImage
3231
import com.jetbrains.kmpapp.data.MuseumObject
@@ -99,11 +98,8 @@ private fun ObjectFrame(
9998

10099
Spacer(Modifier.height(2.dp))
101100

102-
Text(
103-
obj.title,
104-
style = MaterialTheme.typography.subtitle1.copy(fontWeight = FontWeight.Bold)
105-
)
106-
Text(obj.artistDisplayName, style = MaterialTheme.typography.body2)
107-
Text(obj.objectDate, style = MaterialTheme.typography.caption)
101+
Text(obj.title, style = MaterialTheme.typography.titleMedium)
102+
Text(obj.artistDisplayName, style = MaterialTheme.typography.bodyMedium)
103+
Text(obj.objectDate, style = MaterialTheme.typography.bodySmall)
108104
}
109105
}

0 commit comments

Comments
 (0)