taler-android

Android apps for GNU Taler (wallet, PoS, cashier)
Log | Files | Refs | README | LICENSE

commit 7b3cfb48f7d53a1cacba16f53491a370003d171e
parent e2ba76a5bf18cd850acf7207ee205f8d9026cc4b
Author: Iván Ávalos <avalos@disroot.org>
Date:   Wed, 29 Apr 2026 12:48:32 +0200

[wallet] fix remembering selected balance on launch

Diffstat:
Mwallet/src/main/java/net/taler/wallet/main/MainActivity.kt | 8--------
Mwallet/src/main/java/net/taler/wallet/main/MainScreen.kt | 8+++++++-
2 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/wallet/src/main/java/net/taler/wallet/main/MainActivity.kt b/wallet/src/main/java/net/taler/wallet/main/MainActivity.kt @@ -194,14 +194,6 @@ class MainActivity : FragmentActivity() { } } - lifecycleScope.launch { - repeatOnLifecycle(Lifecycle.State.STARTED) { - model.viewMode.collect { tx -> - model.settingsManager.saveViewMode(this@MainActivity, tx) - } - } - } - model.scanCodeEvent.observe(this, EventObserver { val scanOptions = ScanOptions().apply { setPrompt("") diff --git a/wallet/src/main/java/net/taler/wallet/main/MainScreen.kt b/wallet/src/main/java/net/taler/wallet/main/MainScreen.kt @@ -112,7 +112,9 @@ fun MainScreen( val v = viewMode as? ViewMode.Transactions model.transactionManager.transactionsFlow(v?.selectedScope, stateFilter = v?.stateFilter) }.collectAsStateLifecycleAware() - val actionButtonUsed by remember { model.settingsManager.getActionButtonUsed(context) }.collectAsStateLifecycleAware(true) + val actionButtonUsed by remember { + model.settingsManager.getActionButtonUsed(context) + }.collectAsStateLifecycleAware(true) if (showUriInput) UriInputDialog( onDismiss = { showUriInput = false }, @@ -216,6 +218,10 @@ fun MainScreen( model.setViewMode(viewMode) } + LaunchedEffect(viewMode) { + model.settingsManager.saveViewMode(context, viewMode) + } + BackHandler(selectionMode || (tab == MainTab.ASSETS && viewMode !is ViewMode.Assets)) { if (selectionMode) { selectionMode = false