commit c435770450be207a1c598404115c3784a45a7b96
parent 508a12b8f7957dcf817fb2f29a6b924b22ebdc55
Author: Torsten Grote <t@grobox.de>
Date: Wed, 13 May 2020 10:11:11 -0300
[wallet] switch to multi-currency mode when a new currency gets added
Diffstat:
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/wallet/src/main/java/net/taler/wallet/MainFragment.kt b/wallet/src/main/java/net/taler/wallet/MainFragment.kt
@@ -30,6 +30,7 @@ import net.taler.wallet.transactions.TransactionsFragment
class MainFragment : Fragment() {
private val model: MainViewModel by activityViewModels()
+ private var currentTag: String? = null
override fun onCreateView(
inflater: LayoutInflater,
@@ -55,15 +56,17 @@ class MainFragment : Fragment() {
}
private fun onBalancesChanged(balances: List<BalanceItem>) {
- if (childFragmentManager.fragments.isEmpty()) {
- val f = if (balances.size == 1) {
+ val tag = if (balances.size == 1) "single" else "multi"
+ if (currentTag != tag) {
+ val f = if (tag == "single") {
model.transactionManager.selectedCurrency = balances[0].available.currency
TransactionsFragment()
} else {
BalancesFragment()
}
+ currentTag = tag
childFragmentManager.beginTransaction()
- .add(R.id.mainFragmentContainer, f)
+ .replace(R.id.mainFragmentContainer, f, tag)
.commitNow()
}
}