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:
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 -->