[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-taler-android] 07/13: [wallet] remove workarounds for fixed core
From: |
gnunet |
Subject: |
[taler-taler-android] 07/13: [wallet] remove workarounds for fixed core bugs |
Date: |
Mon, 18 May 2020 14:47:24 +0200 |
This is an automated email from the git hooks/post-receive script.
torsten-grote pushed a commit to branch master
in repository taler-android.
commit 3565fc05bca6e55896ff7b5115e6b8021f2a9d4e
Author: Torsten Grote <address@hidden>
AuthorDate: Fri May 15 10:10:43 2020 -0300
[wallet] remove workarounds for fixed core bugs
---
wallet/build.gradle | 4 +--
.../main/java/net/taler/wallet/MainViewModel.kt | 8 -----
.../wallet/transactions/TransactionAdapter.kt | 38 +++++++++-------------
.../transactions/TransactionDetailFragment.kt | 11 ++-----
.../net/taler/wallet/transactions/Transactions.kt | 19 +++++------
5 files changed, 28 insertions(+), 52 deletions(-)
diff --git a/wallet/build.gradle b/wallet/build.gradle
index 91eb324..8e807d1 100644
--- a/wallet/build.gradle
+++ b/wallet/build.gradle
@@ -23,7 +23,7 @@ plugins {
id "de.undercouch.download"
}
-def walletCoreVersion = "v0.7.1-dev.4"
+def walletCoreVersion = "v0.7.1-dev.5"
android {
compileSdkVersion 29
@@ -35,7 +35,7 @@ android {
minSdkVersion 24
targetSdkVersion 29
versionCode 6
- versionName "0.7.1.dev.4"
+ versionName "0.7.1.dev.5"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
buildConfigField "String", "WALLET_CORE_VERSION",
"\"$walletCoreVersion\""
}
diff --git a/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
b/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
index 485df73..8276823 100644
--- a/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
+++ b/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
@@ -122,14 +122,6 @@ class MainViewModel(val app: Application) :
AndroidViewModel(app) {
val amountIncoming = Amount.fromJsonObject(jsonAmountIncoming)
balanceMap[currency] = BalanceItem(amount, amountIncoming)
}
- // TODO remove when wallet-core supports 0 balance for pending
transactions
- if (balanceMap.isEmpty()) {
- val transactionsResult = transactionManager.transactions.value
- if (transactionsResult is TransactionsResult.Success &&
transactionsResult.transactions.isNotEmpty()) {
- val currency =
transactionsResult.transactions[0].amountRaw.currency
- balanceMap[currency] = BalanceItem(Amount.zero(currency),
Amount.zero(currency))
- }
- }
mBalances.postValue(balanceMap)
showProgressBar.postValue(false)
}
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 f93dd66..e6dad6f 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionAdapter.kt
@@ -104,30 +104,22 @@ internal class TransactionAdapter(
}
private fun bindAmount(transaction: Transaction) {
- val amountEffective = transaction.amountEffective
- if (amountEffective == null) {
- amount.visibility = GONE
- } else {
- amount.visibility = VISIBLE
- when (transaction.amountType) {
- AmountType.Positive -> {
- amount.text =
- context.getString(R.string.amount_positive,
amountEffective.amountStr)
- amount.setTextColor(if (transaction.pending)
amountColor else green)
- }
- AmountType.Negative -> {
- amount.text =
- context.getString(R.string.amount_negative,
amountEffective.amountStr)
- amount.setTextColor(if (transaction.pending)
amountColor else red)
- }
- AmountType.Neutral -> {
- amount.text = amountEffective.amountStr
- amount.setTextColor(amountColor)
- }
- }.exhaustive
- }
+ val amountStr = transaction.amountEffective.amountStr
+ when (transaction.amountType) {
+ AmountType.Positive -> {
+ amount.text = context.getString(R.string.amount_positive,
amountStr)
+ amount.setTextColor(if (transaction.pending) amountColor
else green)
+ }
+ AmountType.Negative -> {
+ amount.text = context.getString(R.string.amount_negative,
amountStr)
+ amount.setTextColor(if (transaction.pending) amountColor
else red)
+ }
+ AmountType.Neutral -> {
+ amount.text = amountStr
+ amount.setTextColor(amountColor)
+ }
+ }.exhaustive
}
-
}
internal inner class TransactionKeyProvider :
ItemKeyProvider<String>(SCOPE_MAPPED) {
diff --git
a/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
b/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
index 9893852..fdb074d 100644
---
a/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
+++
b/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
@@ -36,7 +36,6 @@ import
kotlinx.android.synthetic.main.fragment_transaction_withdrawal.*
import kotlinx.android.synthetic.main.fragment_transaction_withdrawal.feeView
import kotlinx.android.synthetic.main.fragment_transaction_withdrawal.timeView
import net.taler.common.Amount
-import net.taler.common.AmountOverflowException
import net.taler.common.isSafe
import net.taler.common.toAbsoluteTime
import net.taler.wallet.MainViewModel
@@ -106,18 +105,14 @@ class TransactionDetailFragment : Fragment() {
chosenAmountLabel.text = getString(R.string.amount_chosen)
chosenAmountView.text =
getString(R.string.amount_positive, t.amountRaw.toString())
- val fee = try { // TODO remove when fixed in wallet-core
- t.amountRaw - (t.amountEffective ?: t.amountRaw)
- } catch (e: AmountOverflowException) {
- (t.amountEffective ?: t.amountRaw) - t.amountRaw
- }
+ val fee = t.amountRaw - t.amountEffective
feeView.text = getString(R.string.amount_negative, fee.toString())
exchangeView.text = cleanExchange(t.exchangeBaseUrl)
}
private fun bind(t: TransactionPayment) {
amountPaidWithFeesView.text = t.amountEffective.toString()
- val fee = (t.amountEffective ?: t.amountRaw) - t.amountRaw
+ val fee = t.amountEffective - t.amountRaw
bindOrderAndFee(t.info, t.amountRaw, fee)
}
@@ -126,7 +121,7 @@ class TransactionDetailFragment : Fragment() {
amountPaidWithFeesView.setTextColor(getColor(requireContext(),
R.color.green))
amountPaidWithFeesView.text =
getString(R.string.amount_positive, t.amountEffective.toString())
- val fee = t.amountRaw - (t.amountEffective ?: t.amountRaw)
+ val fee = t.amountRaw - t.amountEffective
bindOrderAndFee(t.info, t.amountRaw, fee)
}
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/Transactions.kt
b/wallet/src/main/java/net/taler/wallet/transactions/Transactions.kt
index cff742f..c3a0c08 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/Transactions.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/Transactions.kt
@@ -46,7 +46,7 @@ abstract class Transaction(
val timestamp: Timestamp,
val pending: Boolean,
val amountRaw: Amount,
- val amountEffective: Amount?
+ val amountEffective: Amount
) {
@get:DrawableRes
abstract val icon: Int
@@ -70,11 +70,11 @@ class TransactionWithdrawal(
transactionId: String,
timestamp: Timestamp,
pending: Boolean,
- val exchangeBaseUrl: String = "unknown", // TODO fix in wallet-core
+ val exchangeBaseUrl: String,
val confirmed: Boolean,
val bankConfirmationUrl: String?,
amountRaw: Amount,
- amountEffective: Amount?
+ amountEffective: Amount
) : Transaction(transactionId, timestamp, pending, amountRaw, amountEffective)
{
override val icon = R.drawable.transaction_withdrawal
override val detailPageLayout = R.layout.fragment_transaction_withdrawal
@@ -90,7 +90,7 @@ class TransactionPayment(
val info: TransactionInfo,
val status: PaymentStatus,
amountRaw: Amount,
- amountEffective: Amount?
+ amountEffective: Amount
) : Transaction(transactionId, timestamp, pending, amountRaw, amountEffective)
{
override val icon = R.drawable.ic_cash_usd_outline
override val detailPageLayout = R.layout.fragment_transaction_payment
@@ -102,7 +102,7 @@ class TransactionInfo(
val orderId: String,
val merchant: ContractMerchant,
val summary: String,
- @get:JsonProperty("description_i18n")
+ @get:JsonProperty("summary_i18n")
val summaryI18n: Map<String, String>?,
val products: List<ContractProduct>,
val fulfillmentUrl: String
@@ -118,9 +118,6 @@ enum class PaymentStatus {
@JsonProperty("paid")
Paid,
- @JsonProperty("offered")
- Offered,
-
@JsonProperty("accepted")
Accepted
}
@@ -134,7 +131,7 @@ class TransactionRefund(
val info: TransactionInfo,
val amountInvalid: Amount,
amountRaw: Amount,
- amountEffective: Amount?
+ amountEffective: Amount
) : Transaction(transactionId, timestamp, pending, amountRaw, amountEffective)
{
override val icon = R.drawable.transaction_refund
override val detailPageLayout = R.layout.fragment_transaction_payment
@@ -157,7 +154,7 @@ class TransactionTip(
val exchangeBaseUrl: String,
val merchant: ContractMerchant,
amountRaw: Amount,
- amountEffective: Amount?
+ amountEffective: Amount
) : Transaction(transactionId, timestamp, pending, amountRaw, amountEffective)
{
override val icon = R.drawable.transaction_tip_accepted // TODO different
when declined
override val detailPageLayout = R.layout.fragment_transaction_payment
@@ -174,7 +171,7 @@ class TransactionRefresh(
pending: Boolean,
val exchangeBaseUrl: String,
amountRaw: Amount,
- amountEffective: Amount?
+ amountEffective: Amount
) : Transaction(transactionId, timestamp, pending, amountRaw, amountEffective)
{
override val icon = R.drawable.transaction_refresh
override val detailPageLayout = R.layout.fragment_transaction_payment
--
To stop receiving notification emails like this one, please contact
address@hidden.
- [taler-taler-android] 02/13: [wallet] render transaction list from new transactions API, (continued)
- [taler-taler-android] 02/13: [wallet] render transaction list from new transactions API, gnunet, 2020/05/18
- [taler-taler-android] 04/13: [wallet] Remove success pages for withdrawal and payment, gnunet, 2020/05/18
- [taler-taler-android] 06/13: [wallet] provide extra info in transactions when withdrawal requires confirmation, gnunet, 2020/05/18
- [taler-taler-android] 03/13: [wallet] clean up old history code that not needed anymore, gnunet, 2020/05/18
- [taler-taler-android] 05/13: [wallet] add clickable actions to transaction details screen, gnunet, 2020/05/18
- [taler-taler-android] 08/13: [wallet] cache transactions per currency, gnunet, 2020/05/18
- [taler-taler-android] 11/13: [wallet] remove unused strings after moving to new transaction API, gnunet, 2020/05/18
- [taler-taler-android] 12/13: [wallet] show generic transaction titles in detail action bar, gnunet, 2020/05/18
- [taler-taler-android] 10/13: [wallet] show a pending badge next to balances with pending transactions, gnunet, 2020/05/18
- [taler-taler-android] 13/13: [wallet] upgrade to latest core and fix sorting bug, gnunet, 2020/05/18
- [taler-taler-android] 07/13: [wallet] remove workarounds for fixed core bugs,
gnunet <=
- [taler-taler-android] 01/13: [wallet] separate history and transactions UI, gnunet, 2020/05/18
- [taler-taler-android] 09/13: [wallet] show currency's transaction list after successful operations, gnunet, 2020/05/18