cashless2ecash

cashless2ecash: pay with cards for digital cash (experimental)
Log | Files | Refs | README

commit 8de55e43ef80da3b64da85befb63849479e885ec
parent f073d5bc767a63524f3c07e810e1db221a162290
Author: fsb2 <benjamin.fehrensen@bfh.ch>
Date:   Tue,  8 Apr 2025 16:52:15 +0200

Fixed error handling and Toast on "Backend not available"

Diffstat:
Mwallee-c2ec/app/src/main/java/ch/bfh/habej2/wallee_c2ec/withdrawal/AmountScreen.kt | 2+-
Mwallee-c2ec/app/src/main/java/ch/bfh/habej2/wallee_c2ec/withdrawal/WithdrawalViewModel.kt | 10+++++++---
Mwallee-c2ec/app/src/main/res/values/strings.xml | 1+
3 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/wallee-c2ec/app/src/main/java/ch/bfh/habej2/wallee_c2ec/withdrawal/AmountScreen.kt b/wallee-c2ec/app/src/main/java/ch/bfh/habej2/wallee_c2ec/withdrawal/AmountScreen.kt @@ -81,7 +81,7 @@ fun AmountScreen( text = "withdraw", onClick = { println("clicked 'pay'") - model.setupWithdrawal(activity, navigateToWhenAmountEntered) + model.setupWithdrawal(activity) }, enableExpr = {model.validAmount(uiState.amountStr) && uiState.withdrawalFees.currency != ""} ) diff --git a/wallee-c2ec/app/src/main/java/ch/bfh/habej2/wallee_c2ec/withdrawal/WithdrawalViewModel.kt b/wallee-c2ec/app/src/main/java/ch/bfh/habej2/wallee_c2ec/withdrawal/WithdrawalViewModel.kt @@ -20,6 +20,9 @@ package ch.bfh.habej2.wallee_c2ec.withdrawal import android.app.Activity import android.content.Intent +import android.os.Handler +import android.os.Looper +import android.widget.Toast import androidx.compose.runtime.Stable import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue @@ -28,6 +31,7 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.setValue import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope +import ch.bfh.habej2.wallee_c2ec.R import ch.bfh.habej2.wallee_c2ec.client.taler.TerminalClient import ch.bfh.habej2.wallee_c2ec.client.taler.TerminalClientImplementation import ch.bfh.habej2.wallee_c2ec.client.taler.config.TalerTerminalConfig @@ -169,6 +173,7 @@ class WithdrawalViewModel( terminalClient!!.terminalsConfig { println("terminal config request result present: ${it.isPresent}") if (!it.isPresent) { + Handler(Looper.getMainLooper()).post {Toast.makeText(activity.baseContext, activity.getText(R.string.not_connected), Toast.LENGTH_SHORT).show()} activity.finish() } else { _uiState.value.terminalsApiBasePath = @@ -178,13 +183,12 @@ class WithdrawalViewModel( activity.finish() } } + exchangeSelected = true } - exchangeSelected = true } fun setupWithdrawal( - activity: Activity, - navigateToWhenAmountEntered: () -> Unit + activity: Activity ) { val setupReq = TerminalWithdrawalSetup( diff --git a/wallee-c2ec/app/src/main/res/values/strings.xml b/wallee-c2ec/app/src/main/res/values/strings.xml @@ -3,4 +3,5 @@ <string name="title_activity_exchange">ExchangeActivity</string> <string name="title_activity_withdrawal_creation">WithdrawalCreationActivity</string> <string name="title_activity_payment">PaymentActivity</string> + <string name="not_connected">Backend not available. Retry later.</string> </resources> \ No newline at end of file