taler-ios

iOS apps for GNU Taler (wallet)
Log | Files | Refs | README | LICENSE

commit 5818b56a13812229dd6031087edb76dbfd0de369
parent 252a53c528c5f717ab694d23ab4c731ff7805d97
Author: Marc Stibane <marc@taler.net>
Date:   Tue, 22 Apr 2025 11:16:11 +0200

actionType.animationDisabled

Diffstat:
MTalerWallet1/Controllers/PublicConstants.swift | 1+
MTalerWallet1/Views/Main/MainView.swift | 16+++++++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/TalerWallet1/Controllers/PublicConstants.swift b/TalerWallet1/Controllers/PublicConstants.swift @@ -131,6 +131,7 @@ public let TRANSACTIONTRANSITION = "transactionTransition" public let TRANSACTIONID = "transactionID" public let NOTIFICATIONERROR = "error" +public let NOTIFICATIONANIMATION = "animation" /// Notifications sent by wallet-core extension Notification.Name { diff --git a/TalerWallet1/Views/Main/MainView.swift b/TalerWallet1/Views/Main/MainView.swift @@ -234,6 +234,10 @@ extension Label where Title == Text, Icon == Image { } } // MARK: - Content +struct ActionType: Hashable { + let animationDisabled: Bool +} +// MARK: - Content extension MainView { struct MainContent: View { @@ -422,7 +426,17 @@ extension MainView { .accessibilityHidden(true) // for a11y we use the original tabBar, not our custom one } // ZStack .frame(maxWidth: .infinity, maxHeight: .infinity) - .onNotification(.SendAction) { triggerAction(1) } + .onNotification(.SendAction) { notification in + if let actionType = notification.userInfo?[NOTIFICATIONANIMATION] as? ActionType { + if actionType.animationDisabled { + var transaction = Transaction() + transaction.disablesAnimations = true + withTransaction(transaction) { + triggerAction(1) + } + } else { triggerAction(1) } + } else { triggerAction(1) } + } .onNotification(.RequestAction) { triggerAction(2) } .onNotification(.DepositAction) { triggerAction(3) } .onNotification(.WithdrawAction){ triggerAction(4) }