@@ -46,6 +46,7 @@ import androidx.compose.ui.res.stringResource
46
46
import androidx.compose.ui.text.style.TextAlign
47
47
import androidx.compose.ui.tooling.preview.Preview
48
48
import androidx.lifecycle.compose.collectAsStateWithLifecycle
49
+ import androidx.lifecycle.compose.dropUnlessResumed
49
50
import com.ramcosta.composedestinations.annotation.Destination
50
51
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
51
52
import com.ramcosta.composedestinations.result.NavResult
@@ -149,9 +150,10 @@ fun SelectLocation(
149
150
val snackbarHostState = remember { SnackbarHostState () }
150
151
val context = LocalContext .current
151
152
153
+ val navigateBack = dropUnlessResumed { backNavigator.navigateBack(result = true )}
152
154
LaunchedEffectCollect (vm.uiSideEffect) {
153
155
when (it) {
154
- SelectLocationSideEffect .CloseScreen -> backNavigator. navigateBack(result = true , true )
156
+ SelectLocationSideEffect .CloseScreen -> navigateBack()
155
157
is SelectLocationSideEffect .LocationAddedToCustomList ->
156
158
launch {
157
159
snackbarHostState.showResultSnackbar(
@@ -200,8 +202,8 @@ fun SelectLocation(
200
202
snackbarHostState = snackbarHostState,
201
203
onSelectRelay = vm::selectRelay,
202
204
onSearchTermInput = vm::onSearchTermInput,
203
- onBackClick = { backNavigator.navigateBack(true ) },
204
- onFilterClick = { navigator.navigate(FilterScreenDestination , true ) },
205
+ onBackClick = dropUnlessResumed { backNavigator.navigateBack() },
206
+ onFilterClick = dropUnlessResumed { navigator.navigate(FilterScreenDestination ) },
205
207
onCreateCustomList = { relayItem ->
206
208
navigator.navigate(CreateCustomListDestination (locationCode = relayItem?.id)) {
207
209
launchSingleTop = true
0 commit comments