summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Stibane <marc@taler.net>2024-02-09 11:48:39 +0100
committerMarc Stibane <marc@taler.net>2024-02-09 11:48:39 +0100
commit19d17ba425ae9eca5ef2ad55f7806dad52a59607 (patch)
tree9b695d490bc59c81e8dd21a1c7f59ec534b97a2f
parent8bcbb7d81f5144fe499b39ab115e76496a6ca199 (diff)
downloadtaler-ios-19d17ba425ae9eca5ef2ad55f7806dad52a59607.tar.gz
taler-ios-19d17ba425ae9eca5ef2ad55f7806dad52a59607.tar.bz2
taler-ios-19d17ba425ae9eca5ef2ad55f7806dad52a59607.zip
RotatingTaler while waiting for tx to finish
-rw-r--r--TalerWallet1/Views/Transactions/TransactionSummaryV.swift36
1 files changed, 17 insertions, 19 deletions
diff --git a/TalerWallet1/Views/Transactions/TransactionSummaryV.swift b/TalerWallet1/Views/Transactions/TransactionSummaryV.swift
index f31cc99..c6291b0 100644
--- a/TalerWallet1/Views/Transactions/TransactionSummaryV.swift
+++ b/TalerWallet1/Views/Transactions/TransactionSummaryV.swift
@@ -140,6 +140,7 @@ struct TransactionSummaryV: View {
TypeDetail(stack: stack.push(),
transaction: $transaction, hasDone: doneAction != nil)
+ // TODO: Retry Countdown, Retry Now button
// if transaction.isRetryable { if let retryAction {
// TransactionButton(transactionId: common.transactionId, command: .retry,
// warning: nil, action: abortAction)
@@ -242,6 +243,7 @@ struct TransactionSummaryV: View {
let stack: CallStack
@Binding var transaction: Transaction
let hasDone: Bool
+ @State private var rotationEnabled = true
var body: some View {
let common = transaction.common
@@ -252,6 +254,11 @@ struct TransactionSummaryV: View {
let title = EMPTYSTRING
Text(title)
.accessibilityFont(.body)
+ HStack {
+ Spacer()
+ RotatingTaler(size: 100, rotationEnabled: $rotationEnabled)
+ Spacer()
+ }
case .withdrawal(let withdrawalTransaction): Group {
let details = withdrawalTransaction.details
if pending {
@@ -329,14 +336,16 @@ struct TransactionSummaryV: View {
}
case .peer2peer(let p2pTransaction): Group {
let details = p2pTransaction.details
- let expiration = details.info.expiration
- let (dateString, date) = TalerDater.dateString(from: expiration)
- let accessibilityDate = TalerDater.accessibilityDate(date) ?? dateString
- let accessibilityLabel = String(localized: "Expires: \(accessibilityDate)")
- Text("Expires: \(dateString)")
- .accessibilityFont(.body)
- .accessibilityLabel(accessibilityLabel)
-// .foregroundColor(colorSchemeContrast == .increased ? .primary : .secondary)
+ if !transaction.isDone {
+ let expiration = details.info.expiration
+ let (dateString, date) = TalerDater.dateString(from: expiration)
+ let accessibilityDate = TalerDater.accessibilityDate(date) ?? dateString
+ let accessibilityLabel = String(localized: "Expires: \(accessibilityDate)")
+ Text("Expires: \(dateString)")
+ .accessibilityFont(.body)
+ .accessibilityLabel(accessibilityLabel)
+ // .foregroundColor(colorSchemeContrast == .increased ? .primary : .secondary)
+ }
// TODO: isSendCoins should show QR only while not yet expired - either set timer or wallet-core should do so and send a state-changed notification
if pending {
if transaction.isPendingReady {
@@ -391,17 +400,6 @@ struct TransactionSummaryV: View {
}
}
}
- struct DoneButton: View {
- var doneAction: () -> Void
-
- var body: some View {
- Button("Done") {
- doneAction()
- }
- .buttonStyle(TalerButtonStyle(type: .prominent))
- .padding(.horizontal)
- }
- }
}
// MARK: -
#if DEBUG