From d32de071db66e9c0d06d5468bd938e37e2606a46 Mon Sep 17 00:00:00 2001 From: Acclorite <140836141+Acclorite@users.noreply.github.com> Date: Tue, 18 Feb 2025 10:09:09 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9B=A0=EF=B8=8F=20Collect=20Navigator=20w?= =?UTF-8?q?ith=20Dispatchers.Main.immediate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * May prevent issues with not up-to-date Navigator --- .../book_story/presentation/navigator/Navigator.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/navigator/Navigator.kt b/app/src/main/java/ua/acclorite/book_story/presentation/navigator/Navigator.kt index 4beb7752..af7a5f67 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/navigator/Navigator.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/navigator/Navigator.kt @@ -19,6 +19,7 @@ import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.ui.Modifier import androidx.lifecycle.compose.collectAsStateWithLifecycle import dagger.hilt.android.lifecycle.withCreationCallback +import kotlinx.coroutines.Dispatchers import ua.acclorite.book_story.domain.navigator.Navigator import ua.acclorite.book_story.domain.navigator.Screen import ua.acclorite.book_story.domain.navigator.StackEvent @@ -47,8 +48,12 @@ fun Navigator( content: @Composable (currentScreen: Screen) -> Unit ) { val navigator = rememberNavigator(initialScreen = initialScreen) - val currentScreen = navigator.lastItem.collectAsStateWithLifecycle() - val lastEvent = navigator.lastEvent.collectAsStateWithLifecycle() + val currentScreen = navigator.lastItem.collectAsStateWithLifecycle( + context = Dispatchers.Main.immediate + ) + val lastEvent = navigator.lastEvent.collectAsStateWithLifecycle( + context = Dispatchers.Main.immediate + ) CompositionLocalProvider(LocalNavigator provides navigator) { AnimatedContent(