sample: use collectAsStateWithLifecycle()
authorDa Risk <da_risk@geekorum.com>
Wed, 07 May 2025 14:35:10 -0400
changeset 99 d2a4e0ffd8e9
parent 98 3dc5efd1855d
child 100 2d2243ac089e
sample: use collectAsStateWithLifecycle()
sample/src/commonMain/kotlin/CustomViewer.kt
--- a/sample/src/commonMain/kotlin/CustomViewer.kt	Tue May 06 18:40:23 2025 -0400
+++ b/sample/src/commonMain/kotlin/CustomViewer.kt	Wed May 07 14:35:10 2025 -0400
@@ -30,6 +30,7 @@
 import androidx.compose.ui.Alignment
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.unit.dp
+import androidx.lifecycle.compose.collectAsStateWithLifecycle
 import androidx.lifecycle.viewmodel.compose.viewModel
 import com.geekorum.aboutoss.ui.common.OpenSourceLicensesViewModel
 
@@ -53,7 +54,7 @@
     viewModel: OpenSourceLicensesViewModel,
     modifier: Modifier = Modifier
 ) {
-    val dependencies by viewModel.dependenciesList.collectAsState(initial = emptyList())
+    val dependencies by viewModel.dependenciesList.collectAsStateWithLifecycle(emptyList())
     var selected by remember { mutableStateOf(-1) }
     LazyVerticalGrid(
         GridCells.Adaptive(150.dp),
@@ -64,7 +65,7 @@
         itemsIndexed(dependencies) { idx, dependency ->
             if (idx == selected) {
                 val license by viewModel.getLicenseDependency(dependency)
-                    .collectAsState(initial = "")
+                    .collectAsStateWithLifecycle("")
                 LicenseCard(license, onClick = {
                     selected = -1
                 })