From 691a284ed6424ac8765394c8e0a38341e06814f0 Mon Sep 17 00:00:00 2001 From: TM Date: Mon, 20 May 2024 15:45:51 -0700 Subject: [PATCH] ErrorHandler implementation --- .../google/samples/apps/nowinandroid/navigation/NiaNavHost.kt | 3 +++ .../kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/navigation/NiaNavHost.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/navigation/NiaNavHost.kt index 39bc03de7..c4e294d19 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/navigation/NiaNavHost.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/navigation/NiaNavHost.kt @@ -19,6 +19,7 @@ package com.google.samples.apps.nowinandroid.navigation import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.navigation.compose.NavHost +import com.google.samples.apps.nowinandroid.core.ui.ErrorHandler import com.google.samples.apps.nowinandroid.feature.bookmarks.navigation.bookmarksScreen import com.google.samples.apps.nowinandroid.feature.foryou.navigation.FOR_YOU_ROUTE import com.google.samples.apps.nowinandroid.feature.foryou.navigation.forYouScreen @@ -39,6 +40,7 @@ import com.google.samples.apps.nowinandroid.ui.interests2pane.interestsListDetai fun NiaNavHost( appState: NiaAppState, onShowSnackbar: suspend (String, String?) -> Boolean, + errorHandler: ErrorHandler, modifier: Modifier = Modifier, startDestination: String = FOR_YOU_ROUTE, ) { @@ -52,6 +54,7 @@ fun NiaNavHost( bookmarksScreen( onTopicClick = navController::navigateToInterests, onShowSnackbar = onShowSnackbar, + errorHandler = errorHandler, ) searchScreen( onBackClick = navController::popBackStack, diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt index 4c8232a26..dea1ce211 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt @@ -71,6 +71,7 @@ import com.google.samples.apps.nowinandroid.core.designsystem.component.NiaTopAp import com.google.samples.apps.nowinandroid.core.designsystem.icon.NiaIcons import com.google.samples.apps.nowinandroid.core.designsystem.theme.GradientColors import com.google.samples.apps.nowinandroid.core.designsystem.theme.LocalGradientColors +import com.google.samples.apps.nowinandroid.core.ui.ErrorHandler import com.google.samples.apps.nowinandroid.feature.settings.SettingsDialog import com.google.samples.apps.nowinandroid.navigation.NiaNavHost import com.google.samples.apps.nowinandroid.navigation.TopLevelDestination @@ -129,6 +130,8 @@ internal fun NiaApp( val unreadDestinations by appState.topLevelDestinationsWithUnreadResources .collectAsStateWithLifecycle() + val errorHandler = ErrorHandler(snackbarHostState) + if (showSettingsDialog) { SettingsDialog( onDismiss = { onSettingsDismissed() }, @@ -218,6 +221,7 @@ internal fun NiaApp( duration = Short, ) == ActionPerformed }, + errorHandler = errorHandler, ) } }