taler-ios

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

commit 0ca509f0fcfaae89e599483e45f7ef5cbcedd618
parent d9b0137ccfc630e308fbce520f04cf47033ca88c
Author: Marc Stibane <marc@taler.net>
Date:   Thu, 19 Dec 2024 14:31:29 +0100

NavigationModel tosView

Diffstat:
MTalerWallet.xcodeproj/project.pbxproj | 6++++++
MTalerWallet1/Views/Main/MainView.swift | 13-------------
ATalerWallet1/Views/Main/NavigationModel.swift | 35+++++++++++++++++++++++++++++++++++
3 files changed, 41 insertions(+), 13 deletions(-)

diff --git a/TalerWallet.xcodeproj/project.pbxproj b/TalerWallet.xcodeproj/project.pbxproj @@ -312,6 +312,8 @@ 4EEC157A29F9427F00D46A03 /* QRSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EEC157929F9427F00D46A03 /* QRSheet.swift */; }; 4EEC3A712B2285A200D05F9D /* WithdrawExchangeV.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EEC3A702B2285A200D05F9D /* WithdrawExchangeV.swift */; }; 4EEC3A722B2285A200D05F9D /* WithdrawExchangeV.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EEC3A702B2285A200D05F9D /* WithdrawExchangeV.swift */; }; + 4EED38552D140C1400F6C038 /* NavigationModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EED38542D140C1400F6C038 /* NavigationModel.swift */; }; + 4EED38562D140C1400F6C038 /* NavigationModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EED38542D140C1400F6C038 /* NavigationModel.swift */; }; 4EF840A72A0B85F400EE0D47 /* CopyShare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EF840A62A0B85F400EE0D47 /* CopyShare.swift */; }; 4EFA39602AA7946B00742548 /* ToSButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EFA395F2AA7946B00742548 /* ToSButtonView.swift */; }; 4EFA39612AA7946B00742548 /* ToSButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EFA395F2AA7946B00742548 /* ToSButtonView.swift */; }; @@ -520,6 +522,7 @@ 4EEC157729F9032900D46A03 /* Sheet.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Sheet.swift; sourceTree = "<group>"; }; 4EEC157929F9427F00D46A03 /* QRSheet.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QRSheet.swift; sourceTree = "<group>"; }; 4EEC3A702B2285A200D05F9D /* WithdrawExchangeV.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WithdrawExchangeV.swift; sourceTree = "<group>"; }; + 4EED38542D140C1400F6C038 /* NavigationModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationModel.swift; sourceTree = "<group>"; }; 4EF840A62A0B85F400EE0D47 /* CopyShare.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CopyShare.swift; sourceTree = "<group>"; }; 4EFA395F2AA7946B00742548 /* ToSButtonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ToSButtonView.swift; sourceTree = "<group>"; }; 4EFFDD6A2A501121000C1C6A /* Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; path = Localizable.xcstrings; sourceTree = "<group>"; }; @@ -861,6 +864,7 @@ isa = PBXGroup; children = ( 4EB095442989CBFE0043A8A1 /* MainView.swift */, + 4EED38542D140C1400F6C038 /* NavigationModel.swift */, 4EB095452989CBFE0043A8A1 /* ErrorView.swift */, 4EB095392989CBFE0043A8A1 /* WalletEmptyView.swift */, ); @@ -1333,6 +1337,7 @@ 4E3EAE5F2A990778009F1BE8 /* QRSheet.swift in Sources */, 4E3EAE602A990778009F1BE8 /* P2pReceiveURIView.swift in Sources */, 4E3EAE612A990778009F1BE8 /* ListStyle.swift in Sources */, + 4EED38552D140C1400F6C038 /* NavigationModel.swift in Sources */, 4E3EAE622A990778009F1BE8 /* TransactionSummaryV.swift in Sources */, 4E3EAE632A990778009F1BE8 /* WalletCore.swift in Sources */, 4E3EAE642A990778009F1BE8 /* LaunchAnimationView.swift in Sources */, @@ -1472,6 +1477,7 @@ 4EEC157A29F9427F00D46A03 /* QRSheet.swift in Sources */, 4E3B4BC12A41E6C200CC88B8 /* P2pReceiveURIView.swift in Sources */, 4E6EDD872A363D8D0031D520 /* ListStyle.swift in Sources */, + 4EED38562D140C1400F6C038 /* NavigationModel.swift in Sources */, 4EB095582989CBFE0043A8A1 /* TransactionSummaryV.swift in Sources */, 4EB095202989CBCB0043A8A1 /* WalletCore.swift in Sources */, 4EB095672989CBFE0043A8A1 /* LaunchAnimationView.swift in Sources */, diff --git a/TalerWallet1/Views/Main/MainView.swift b/TalerWallet1/Views/Main/MainView.swift @@ -201,19 +201,6 @@ extension Label where Title == Text, Icon == Image { // MARK: - Content extension MainView { - class NavigationModel: ObservableObject { - @Published var tabBarHidden = 0 - - @Published var actionSelected: Int? = nil { - didSet { - if actionSelected != nil { - tabBarHidden += 1 - } else { - tabBarHidden = 0 - } - } - } - } struct MainContent: View { let logger: Logger diff --git a/TalerWallet1/Views/Main/NavigationModel.swift b/TalerWallet1/Views/Main/NavigationModel.swift @@ -0,0 +1,35 @@ +/* + * This file is part of GNU Taler, ©2022-24 Taler Systems S.A. + * See LICENSE.md + */ +/** + * Controller + * + * @author Marc Stibane + */ +import Foundation +import SwiftUI + +class NavigationModel: ObservableObject { + @Published var tabBarHidden = 0 + + @Published var tosView: Int? = nil { + didSet { + if tosView != nil { + tabBarHidden += 1 + } else if actionSelected == nil { + tabBarHidden = 0 + } + } + } + + @Published var actionSelected: Int? = nil { + didSet { + if actionSelected != nil { + tabBarHidden += 1 + } else if tosView == nil { + tabBarHidden = 0 + } + } + } +}