diff options
author | Iván Ávalos <avalos@disroot.org> | 2024-01-31 11:33:16 -0600 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2024-02-06 09:58:38 -0300 |
commit | 8062b84d95f759e435d6248c3523ac5c94dce743 (patch) | |
tree | 792b42fadf5e3e35afd4732eff848f24ee711c77 /wallet/src/main/java/net/taler/wallet/exchanges | |
parent | d604f8edd4a0bd75d25336c6b62ebbbb31cbef17 (diff) | |
download | taler-android-8062b84d95f759e435d6248c3523ac5c94dce743.tar.gz taler-android-8062b84d95f759e435d6248c3523ac5c94dce743.tar.bz2 taler-android-8062b84d95f759e435d6248c3523ac5c94dce743.zip |
[wallet] List possibleExchanges in exchange selection for withdrawals
bug 0008300
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/exchanges')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/exchanges/SelectExchangeFragment.kt | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/exchanges/SelectExchangeFragment.kt b/wallet/src/main/java/net/taler/wallet/exchanges/SelectExchangeFragment.kt index 61e0db5..732e0c5 100644 --- a/wallet/src/main/java/net/taler/wallet/exchanges/SelectExchangeFragment.kt +++ b/wallet/src/main/java/net/taler/wallet/exchanges/SelectExchangeFragment.kt @@ -18,6 +18,7 @@ package net.taler.wallet.exchanges import androidx.navigation.fragment.findNavController import net.taler.common.fadeOut +import net.taler.wallet.withdraw.WithdrawStatus.ReceivedDetails class SelectExchangeFragment : ExchangeListFragment() { @@ -30,17 +31,23 @@ class SelectExchangeFragment : ExchangeListFragment() { override fun onExchangeUpdate(exchanges: List<ExchangeItem>) { ui.progressBar.fadeOut() - super.onExchangeUpdate(exchanges.filter { exchangeItem -> - exchangeItem.currency == exchangeSelection.amount.currency - }) + val status = withdrawManager.withdrawStatus.value + if (status is ReceivedDetails) { + super.onExchangeUpdate(status.possibleExchanges) + } else { + findNavController().navigateUp() + } } override fun onExchangeSelected(item: ExchangeItem) { + val status = withdrawManager.withdrawStatus.value + val exchanges = (status as? ReceivedDetails)?.possibleExchanges ?: emptyList() withdrawManager.getWithdrawalDetails( exchangeBaseUrl = item.exchangeBaseUrl, amount = exchangeSelection.amount, showTosImmediately = true, uri = exchangeSelection.talerWithdrawUri, + possibleExchanges = exchanges, ) findNavController().navigateUp() } |