@@ -44,6 +44,7 @@ import androidx.compose.ui.res.stringResource
44
44
import androidx.compose.ui.tooling.preview.Preview
45
45
import androidx.lifecycle.Lifecycle
46
46
import androidx.lifecycle.compose.collectAsStateWithLifecycle
47
+ import androidx.lifecycle.compose.dropUnlessResumed
47
48
import com.ramcosta.composedestinations.annotation.Destination
48
49
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
49
50
import com.ramcosta.composedestinations.navigation.popUpTo
@@ -143,12 +144,12 @@ fun Connect(
143
144
openAccountPage(sideEffect.token)
144
145
}
145
146
is ConnectViewModel .UiSideEffect .OutOfTime ->
146
- navigator.navigate(OutOfTimeDestination , true ) {
147
+ navigator.navigate(OutOfTimeDestination ) {
147
148
launchSingleTop = true
148
149
popUpTo(NavGraphs .root) { inclusive = true }
149
150
}
150
151
ConnectViewModel .UiSideEffect .RevokedDevice ->
151
- navigator.navigate(DeviceRevokedDestination , true ) {
152
+ navigator.navigate(DeviceRevokedDestination ) {
152
153
launchSingleTop = true
153
154
popUpTo(NavGraphs .root) { inclusive = true }
154
155
}
@@ -175,9 +176,7 @@ fun Connect(
175
176
onReconnectClick = connectViewModel::onReconnectClick,
176
177
onConnectClick = connectViewModel::onConnectClick,
177
178
onCancelClick = connectViewModel::onCancelClick,
178
- onSwitchLocationClick = {
179
- navigator.navigate(SelectLocationDestination , true ) { launchSingleTop = true }
180
- },
179
+ onSwitchLocationClick = dropUnlessResumed { navigator.navigate(SelectLocationDestination ) },
181
180
onUpdateVersionClick = {
182
181
val intent =
183
182
Intent (
@@ -192,12 +191,8 @@ fun Connect(
192
191
context.startActivity(intent)
193
192
},
194
193
onManageAccountClick = connectViewModel::onManageAccountClick,
195
- onSettingsClick = {
196
- navigator.navigate(SettingsDestination , true ) { launchSingleTop = true }
197
- },
198
- onAccountClick = {
199
- navigator.navigate(AccountDestination , true ) { launchSingleTop = true }
200
- },
194
+ onSettingsClick = dropUnlessResumed { navigator.navigate(SettingsDestination ) },
195
+ onAccountClick = dropUnlessResumed { navigator.navigate(AccountDestination ) },
201
196
onDismissNewDeviceClick = connectViewModel::dismissNewDeviceNotification,
202
197
)
203
198
}
0 commit comments