From f9293f1c44ad75bdf4dfa68ade0b4aeebdecd083 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rton=20Braun?= Date: Wed, 13 Nov 2024 09:24:04 +0100 Subject: [PATCH] Use collectAsStateWithLifecycle --- .../com/jetbrains/kmpapp/screens/detail/DetailScreen.kt | 4 ++-- .../kotlin/com/jetbrains/kmpapp/screens/list/ListScreen.kt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/detail/DetailScreen.kt b/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/detail/DetailScreen.kt index 3ba9a1d..37ced47 100644 --- a/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/detail/DetailScreen.kt +++ b/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/detail/DetailScreen.kt @@ -24,7 +24,6 @@ import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.material3.TopAppBar import androidx.compose.runtime.Composable -import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color @@ -34,6 +33,7 @@ import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.withStyle import androidx.compose.ui.unit.dp +import androidx.lifecycle.compose.collectAsStateWithLifecycle import coil3.compose.AsyncImage import com.jetbrains.kmpapp.data.MuseumObject import com.jetbrains.kmpapp.screens.EmptyScreenContent @@ -57,7 +57,7 @@ fun DetailScreen( ) { val viewModel = koinViewModel() - val obj by viewModel.getObject(objectId).collectAsState(initial = null) + val obj by viewModel.getObject(objectId).collectAsStateWithLifecycle(initialValue = null) AnimatedContent(obj != null) { objectAvailable -> if (objectAvailable) { ObjectDetails(obj!!, onBackClick = navigateBack) diff --git a/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/list/ListScreen.kt b/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/list/ListScreen.kt index ef2d6e3..b87ff31 100644 --- a/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/list/ListScreen.kt +++ b/composeApp/src/commonMain/kotlin/com/jetbrains/kmpapp/screens/list/ListScreen.kt @@ -21,12 +21,12 @@ import androidx.compose.foundation.lazy.grid.items import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.unit.dp +import androidx.lifecycle.compose.collectAsStateWithLifecycle import coil3.compose.AsyncImage import com.jetbrains.kmpapp.data.MuseumObject import com.jetbrains.kmpapp.screens.EmptyScreenContent @@ -37,7 +37,7 @@ fun ListScreen( navigateToDetails: (objectId: Int) -> Unit ) { val viewModel = koinViewModel() - val objects by viewModel.objects.collectAsState() + val objects by viewModel.objects.collectAsStateWithLifecycle() AnimatedContent(objects.isNotEmpty()) { objectsAvailable -> if (objectsAvailable) {