diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt index 4f28ce1f3f..884616d714 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt @@ -41,6 +41,7 @@ class MultiWalletMiddleware { currenciesRepository.saveAddedBlockchain(it, action.blockchain) } store.dispatch(WalletAction.LoadFiatRate(currency = action.blockchain.currency)) + store.dispatch(WalletAction.LoadWallet(currency = action.blockchain.currency)) } is WalletAction.MultiWallet.RemoveWallet -> { val cardId = globalState?.scanNoteResponse?.card?.cardId diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt index 6d27122a01..05993a08ef 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt @@ -207,7 +207,7 @@ class WalletMiddleware { val amountToSend = amounts?.find { it.currencySymbol == currency } ?: return WalletAction.Send.ChooseCurrency(amounts) if (amountToSend.type is AmountType.Token) { - prepareSendActionForToken(amount, state, selectedWalletData, wallet, walletManager) + prepareSendActionForToken(amountToSend, state, selectedWalletData, wallet, walletManager) } else { PrepareSendScreen(amountToSend, selectedWalletData.fiatRate, walletManager) } @@ -223,7 +223,7 @@ class WalletMiddleware { } private fun prepareSendActionForToken( - amount: Amount?, state: WalletState?, selectedWalletData: WalletData?, wallet: Wallet?, + amount: Amount, state: WalletState?, selectedWalletData: WalletData?, wallet: Wallet?, walletManager: WalletManager? ): PrepareSendScreen { val coinRate = state?.getWalletData(wallet?.blockchain?.currency)?.fiatRate diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/reducers/WalletReducer.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/reducers/WalletReducer.kt index da5b7d515e..59e50c8820 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/reducers/WalletReducer.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/reducers/WalletReducer.kt @@ -135,15 +135,14 @@ private fun internalReduce(action: Action, state: AppState): WalletState { ) ) val wallets = newState.replaceWalletInWallets(walletData) - val state = if (wallets.any { it.currencyData.status == BalanceStatus.Loading }) { + val progressState = if (wallets.any { it.currencyData.status == BalanceStatus.Loading }) { ProgressState.Loading } else { ProgressState.Done } newState = newState.copy( - state = state, + state = progressState, wallets = wallets - ) } is WalletAction.LoadWallet.Failure -> {