[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-android] 03/06: Automatically abort payment proposals when
From: |
gnunet |
Subject: |
[taler-wallet-android] 03/06: Automatically abort payment proposals when backing out of payment |
Date: |
Fri, 21 Feb 2020 19:01:52 +0100 |
This is an automated email from the git hooks/post-receive script.
torsten-grote pushed a commit to branch master
in repository wallet-android.
commit 497af85f4ccd40aaba29cf1fa3ed230a4d43159c
Author: Torsten Grote <address@hidden>
AuthorDate: Fri Feb 14 12:24:51 2020 -0300
Automatically abort payment proposals when backing out of payment
---
app/src/main/java/net/taler/wallet/ShowBalance.kt | 7 ++-----
.../main/java/net/taler/wallet/payment/PaymentManager.kt | 11 ++++++++++-
.../java/net/taler/wallet/payment/PromptPaymentFragment.kt | 14 ++++++++------
app/src/main/res/layout/fragment_payment_successful.xml | 2 +-
app/src/main/res/layout/fragment_prompt_payment.xml | 2 +-
app/src/main/res/values/strings.xml | 3 ++-
6 files changed, 24 insertions(+), 15 deletions(-)
diff --git a/app/src/main/java/net/taler/wallet/ShowBalance.kt
b/app/src/main/java/net/taler/wallet/ShowBalance.kt
index 1a31b86..6bc8854 100644
--- a/app/src/main/java/net/taler/wallet/ShowBalance.kt
+++ b/app/src/main/java/net/taler/wallet/ShowBalance.kt
@@ -321,11 +321,8 @@ class ShowBalance : Fragment(),
PendingOperationClickListener {
when (type) {
"proposal-choice" -> {
Log.v(TAG, "got action click on proposal-choice")
- val proposalId = detail.optString("proposalId", "")
- if (proposalId == "") {
- return
- }
- model.paymentManager.abortProposal(proposalId)
+ val json = detail.toString(4)
+ throw IllegalStateException("proposal-choice wasn't aborted
automatically: $json")
}
}
}
diff --git a/app/src/main/java/net/taler/wallet/payment/PaymentManager.kt
b/app/src/main/java/net/taler/wallet/payment/PaymentManager.kt
index 489940f..ea9ca75 100644
--- a/app/src/main/java/net/taler/wallet/payment/PaymentManager.kt
+++ b/app/src/main/java/net/taler/wallet/payment/PaymentManager.kt
@@ -81,7 +81,16 @@ class PaymentManager(
}
}
- fun abortProposal(proposalId: String) {
+ @UiThread
+ fun abortPay() {
+ val ps = payStatus.value
+ if (ps is PayStatus.Prepared) {
+ abortProposal(ps.proposalId)
+ }
+ resetPayStatus()
+ }
+
+ private fun abortProposal(proposalId: String) {
val args = JSONObject(mapOf("proposalId" to proposalId))
Log.i(TAG, "aborting proposal")
diff --git
a/app/src/main/java/net/taler/wallet/payment/PromptPaymentFragment.kt
b/app/src/main/java/net/taler/wallet/payment/PromptPaymentFragment.kt
index d623788..e8fe6db 100644
--- a/app/src/main/java/net/taler/wallet/payment/PromptPaymentFragment.kt
+++ b/app/src/main/java/net/taler/wallet/payment/PromptPaymentFragment.kt
@@ -70,16 +70,18 @@ class PromptPaymentFragment : Fragment() {
}
button_abort_payment.setOnClickListener {
- when (val ps = paymentManager.payStatus.value) {
- is PayStatus.Prepared -> {
- paymentManager.abortProposal(ps.proposalId)
- }
- }
- paymentManager.resetPayStatus()
+ paymentManager.abortPay()
findNavController().navigateUp()
}
}
+ override fun onDestroy() {
+ super.onDestroy()
+ if (!requireActivity().isChangingConfigurations) {
+ paymentManager.abortPay()
+ }
+ }
+
private fun showLoading(show: Boolean) {
model.showProgressBar.value = show
}
diff --git a/app/src/main/res/layout/fragment_payment_successful.xml
b/app/src/main/res/layout/fragment_payment_successful.xml
index af8bed2..414efc9 100644
--- a/app/src/main/res/layout/fragment_payment_successful.xml
+++ b/app/src/main/res/layout/fragment_payment_successful.xml
@@ -20,7 +20,7 @@
android:layout_width="match_parent"
android:textAlignment="center"
android:layout_height="50dp"
- android:text="Payment was Successful"
+ android:text="@string/payment_successful"
android:autoSizeTextType="uniform"
android:textColor="@android:color/holo_green_dark"/>
diff --git a/app/src/main/res/layout/fragment_prompt_payment.xml
b/app/src/main/res/layout/fragment_prompt_payment.xml
index 78d477f..a701653 100644
--- a/app/src/main/res/layout/fragment_prompt_payment.xml
+++ b/app/src/main/res/layout/fragment_prompt_payment.xml
@@ -98,7 +98,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/activity_horizontal_margin"
- android:text="@string/payment_label_amount"
+ android:text="@string/payment_label_amount_total"
android:visibility="invisible"
app:layout_constraintBottom_toTopOf="@+id/order_amount"
app:layout_constraintEnd_toEndOf="parent"
diff --git a/app/src/main/res/values/strings.xml
b/app/src/main/res/values/strings.xml
index cd1ad54..1e18fe5 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -39,11 +39,12 @@
<string name="payment_fee">(plus an additional %s payment fee)</string>
<string name="payment_button_confirm">Confirm Payment</string>
<string name="payment_button_abort">Abort Payment</string>
- <string name="payment_label_amount">Amount</string>
+ <string name="payment_label_amount_total">Total Amount</string>
<string name="payment_label_order_summary">Order Summary</string>
<string name="payment_error">Error: %s</string>
<string name="payment_balance_insufficient">Balance Insufficient!</string>
<string name="payment_show_details">Show Details</string>
<string name="payment_hide_details">Hide Details</string>
+ <string name="payment_successful">Payment was successful</string>
</resources>
--
To stop receiving notification emails like this one, please contact
address@hidden.
- [taler-wallet-android] branch master updated (c20a794 -> 9b07cda), gnunet, 2020/02/21
- [taler-wallet-android] 03/06: Automatically abort payment proposals when backing out of payment,
gnunet <=
- [taler-wallet-android] 06/06: Fix nav drawer item selection and other minor issues, gnunet, 2020/02/21
- [taler-wallet-android] 02/06: Show products included in contract terms when paying, gnunet, 2020/02/21
- [taler-wallet-android] 01/06: Refactor payment code to make it easier to extend, gnunet, 2020/02/21
- [taler-wallet-android] 05/06: Redesign payment screen, gnunet, 2020/02/21
- [taler-wallet-android] 04/06: Add updated copyright to all project files, gnunet, 2020/02/21