taler-android

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

commit bf617bda2d1144b2f60bb8d339cda2da7a197d40
parent b0c96e94375f0727ea2ddf400a6301df16c5b58f
Author: Iván Ávalos <avalos@disroot.org>
Date:   Tue, 23 Jul 2024 14:48:03 -0600

[wallet] Produce error when scanned QR does not contain taler:// action

Diffstat:
Mwallet/src/main/java/net/taler/wallet/HandleUriFragment.kt | 14+++++++++++++-
Mwallet/src/main/res/values/strings.xml | 3++-
2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/wallet/src/main/java/net/taler/wallet/HandleUriFragment.kt b/wallet/src/main/java/net/taler/wallet/HandleUriFragment.kt @@ -176,6 +176,9 @@ class HandleUriFragment: Fragment() { } catch (e: IOException) { Log.e(TAG, "Error connecting to $uri ", e) showError(R.string.error_broken_uri, "$uri") + activity?.runOnUiThread { + findNavController().popBackStack() + } return@launch } val status = conn.responseCode @@ -186,6 +189,12 @@ class HandleUriFragment: Fragment() { Log.v(TAG, "taler header: ${talerHeader[0]}") val talerHeaderUri = Uri.parse(talerHeader[0]) getTalerAction(talerHeaderUri, 0, actionFound) + } else { + showError(R.string.error_no_uri, "$uri") + activity?.runOnUiThread { + findNavController().popBackStack() + } + return@launch } } else if (status == HttpURLConnection.HTTP_MOVED_TEMP || status == HttpURLConnection.HTTP_MOVED_PERM @@ -199,7 +208,10 @@ class HandleUriFragment: Fragment() { } } else { showError(R.string.error_broken_uri, "$uri") - findNavController().popBackStack() + activity?.runOnUiThread { + findNavController().popBackStack() + } + return@launch } } } else { diff --git a/wallet/src/main/res/values/strings.xml b/wallet/src/main/res/values/strings.xml @@ -80,8 +80,9 @@ GNU Taler is immune against many types of fraud, such as phishing of credit card <!-- Errors --> - <string name="error_unsupported_uri">Error: This Taler URI is not supported.</string> + <string name="error_no_uri">Error: No Taler URI was found</string> <string name="error_broken_uri">Error: This Taler URI is (currently) not working.</string> + <string name="error_unsupported_uri">Error: This Taler URI is not supported.</string> <!-- Amounts -->