mirror of
https://github.com/pawelorzech/MacTorn.git
synced 2026-01-29 19:54:27 +00:00
fix: Resolve SwiftUI constraint update loop in MenuBarExtra
- Add .transaction { $0.animation = nil } to prevent constraint recalculation loops
- Add CreditsView.swift to Xcode project (was missing after git pull)
- Fixes NSGenericException for Update Constraints in Window passes
This commit is contained in:
parent
71db6d4db1
commit
0764a38bb8
4 changed files with 18 additions and 9 deletions
|
|
@ -29,6 +29,7 @@
|
|||
AAA00020 /* PropertiesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA10021 /* PropertiesView.swift */; };
|
||||
AAA00021 /* NetworkSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA10022 /* NetworkSession.swift */; };
|
||||
AAA00022 /* TravelView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA10023 /* TravelView.swift */; };
|
||||
AAA00023 /* CreditsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA10024 /* CreditsView.swift */; };
|
||||
/* Unit Tests */
|
||||
BBB00001 /* MockNetworkSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBB10001 /* MockNetworkSession.swift */; };
|
||||
BBB00002 /* TestHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBB10002 /* TestHelpers.swift */; };
|
||||
|
|
@ -87,6 +88,7 @@
|
|||
AAA10021 /* PropertiesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PropertiesView.swift; sourceTree = "<group>"; };
|
||||
AAA10022 /* NetworkSession.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkSession.swift; sourceTree = "<group>"; };
|
||||
AAA10023 /* TravelView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TravelView.swift; sourceTree = "<group>"; };
|
||||
AAA10024 /* CreditsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CreditsView.swift; sourceTree = "<group>"; };
|
||||
AAA10000 /* MacTorn.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacTorn.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* Unit Test Files */
|
||||
BBB10001 /* MockNetworkSession.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockNetworkSession.swift; sourceTree = "<group>"; };
|
||||
|
|
@ -190,6 +192,7 @@
|
|||
AAA10006 /* SettingsView.swift */,
|
||||
AAA10007 /* StatusView.swift */,
|
||||
AAA10023 /* TravelView.swift */,
|
||||
AAA10024 /* CreditsView.swift */,
|
||||
AAA10017 /* MoneyView.swift */,
|
||||
AAA10018 /* AttacksView.swift */,
|
||||
AAA10019 /* FactionView.swift */,
|
||||
|
|
@ -441,6 +444,7 @@
|
|||
AAA00020 /* PropertiesView.swift in Sources */,
|
||||
AAA00021 /* NetworkSession.swift in Sources */,
|
||||
AAA00022 /* TravelView.swift in Sources */,
|
||||
AAA00023 /* CreditsView.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ struct MenuBarLabel: View {
|
|||
|
||||
var body: some View {
|
||||
// Show airplane + flag + countdown when traveling
|
||||
Group {
|
||||
if let travel = appState.data?.travel,
|
||||
travel.isTraveling {
|
||||
let destination = travel.destination ?? "?"
|
||||
|
|
@ -31,6 +32,8 @@ struct MenuBarLabel: View {
|
|||
Image(systemName: menuBarIcon)
|
||||
}
|
||||
}
|
||||
.transaction { $0.animation = nil }
|
||||
}
|
||||
|
||||
private var menuBarIcon: String {
|
||||
// Error state
|
||||
|
|
|
|||
|
|
@ -152,6 +152,7 @@ struct StatusView: View {
|
|||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.background(Color.blue.opacity(0.1))
|
||||
.cornerRadius(8)
|
||||
.transaction { $0.animation = nil }
|
||||
}
|
||||
|
||||
// MARK: - Bars
|
||||
|
|
|
|||
|
|
@ -74,6 +74,7 @@ struct FlyingStatusView: View {
|
|||
.padding()
|
||||
.background(Color.blue.opacity(0.1))
|
||||
.cornerRadius(12)
|
||||
.transaction { $0.animation = nil }
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue