commit 31ade9a9a63b582ca71d12dcd78b0b6af22afc3c
parent 6b05151248e203e5548c148fc94ef5424629757f
Author: Marc Stibane <marc@taler.net>
Date: Mon, 3 Aug 2026 19:06:04 +0200
#11684: add Copy buttons (at the bottom)
Diffstat:
1 file changed, 20 insertions(+), 0 deletions(-)
diff --git a/TalerWallet1/Views/Transactions/TransactionTypeDetail.swift b/TalerWallet1/Views/Transactions/TransactionTypeDetail.swift
@@ -25,6 +25,11 @@ struct TransactionTypeDetail: View {
@Environment(\.colorScheme) private var colorScheme
@Environment(\.colorSchemeContrast) private var colorSchemeContrast
@AppStorage("minimalistic") var minimalistic: Bool = false
+#if DEBUG
+ @AppStorage("developerMode") var developerMode: Bool = true
+#else
+ @AppStorage("developerMode") var developerMode: Bool = false
+#endif
@State private var rotationEnabled = true
@State private var ignoreAccept: Bool = false // accept could be set by OIM to trigger accept
@@ -94,6 +99,21 @@ struct TransactionTypeDetail: View {
feeIsNegative: true,
large: false,
summary: nil)
+ if developerMode {
+ let withdrawalDetails = details.withdrawalDetails
+ if let validDetails = withdrawalDetails.validDetails {
+ let validCount = validDetails.count
+ if validCount > 0 {
+ ForEach(validDetails, id: \.self) { detail in
+ let label = detail.bankLabel ?? EMPTYSTRING
+ if let options = detail.transferOptions, !options.isEmpty {
+ ForEach(options, id: \.self) { option in
+ if let uri = option.uri {
+ CopyButton(uri, title: "Copy \(label) uri")
+ } else if let payto = option.paytoUri {
+ CopyButton(payto, title: "Copy \(label) payto")
+ }
+ } } } } } }
}
case .deposit(let depositTransaction): Group {
if transaction.common.isPendingKYCauth {