diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt index dab3f9be92..65ca30c4ff 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/viewmodels/WalletViewModel.kt @@ -177,14 +177,8 @@ internal class WalletViewModel @Inject constructor( is WalletsUpdateActionResolver.Action.UpdateWalletName -> { stateHolder.update(transformer = RenameWalletTransformer(action.selectedWalletId, action.name)) } - is WalletsUpdateActionResolver.Action.NoAccessibleWallets -> { - stateHolder.clear() - router.popBackStack(screen = AppScreen.Welcome) - } - is WalletsUpdateActionResolver.Action.NoWallets -> { - stateHolder.clear() - router.popBackStack(screen = AppScreen.Home) - } + is WalletsUpdateActionResolver.Action.NoAccessibleWallets -> closeScreen(screen = AppScreen.Welcome) + is WalletsUpdateActionResolver.Action.NoWallets -> closeScreen(screen = AppScreen.Home) is WalletsUpdateActionResolver.Action.Unknown -> Unit } } @@ -295,6 +289,13 @@ internal class WalletViewModel @Inject constructor( ) } + private fun closeScreen(screen: AppScreen) { + if (!screenLifecycleProvider.isBackground) { + stateHolder.clear() + router.popBackStack(screen = screen) + } + } + private fun scrollToWallet(index: Int, onConsume: () -> Unit = {}) { stateHolder.update( ScrollToWalletTransformer(