summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net
diff options
context:
space:
mode:
Diffstat (limited to 'wallet/src/main/java/net')
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt20
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt15
2 files changed, 26 insertions, 9 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt
index fa30f5c..e65a751 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt
@@ -127,11 +127,21 @@ internal class TransactionAdapter(
}
}
- private fun bindActionButton(transaction: Transaction) {
- actionButton.visibility = transaction.handleKyc({ GONE }) {
- actionButton.setOnClickListener { listener.onActionButtonClicked(transaction) }
- actionButton.setText(R.string.transaction_action_kyc)
- VISIBLE
+ private fun bindActionButton(t: Transaction) {
+ actionButton.setOnClickListener { listener.onActionButtonClicked(t) }
+ if (t.error != null) {
+ actionButton.visibility = t.handleKyc({ GONE }) {
+ actionButton.setText(R.string.transaction_action_kyc)
+ VISIBLE
+ }
+ } else if (t is TransactionWithdrawal && !t.confirmed) {
+ actionButton.setIconResource(R.drawable.ic_account_balance)
+ actionButton.visibility =
+ if (t.withdrawalDetails is WithdrawalDetails.TalerBankIntegrationApi &&
+ t.withdrawalDetails.bankConfirmationUrl != null) {
+ actionButton.setText(R.string.withdraw_button_confirm_bank)
+ VISIBLE
+ } else GONE
}
}
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
index 08281c4..d67d9b3 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
@@ -180,10 +180,17 @@ class TransactionsFragment : Fragment(), OnTransactionClickListener, ActionMode.
}
}
- override fun onActionButtonClicked(transaction: Transaction) {
- transaction.handleKyc({ error("Unhandled Action Button Event") }) { error ->
- error.kycUrl?.let {
- launchInAppBrowser(requireContext(), it)
+ override fun onActionButtonClicked(t: Transaction) {
+ if (t.error != null) {
+ t.handleKyc({ error("Unhandled Action Button Event") }) { error ->
+ error.kycUrl?.let {
+ launchInAppBrowser(requireContext(), it)
+ }
+ }
+ } else if (t is TransactionWithdrawal && !t.confirmed) {
+ if (t.withdrawalDetails is WithdrawalDetails.TalerBankIntegrationApi &&
+ t.withdrawalDetails.bankConfirmationUrl != null) {
+ launchInAppBrowser(requireContext(), t.withdrawalDetails.bankConfirmationUrl)
}
}
}