Skip to content

Commit a057562

Browse files
authored
Update PreferenceKey and List (#129)
1 parent e9cfeef commit a057562

16 files changed

+383
-285
lines changed

Sources/OpenSwiftUI/Core/Graph/GraphHost.swift

+2-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
internal import COpenSwiftUICore
1010
internal import OpenGraphShims
1111
@_spi(ForOpenSwiftUIOnly) import OpenSwiftUICore
12+
@_spi(Private) import OpenSwiftUICore
1213

1314
private let waitingForPreviewThunks = EnvironmentHelper.bool(for: "XCODE_RUNNING_FOR_PREVIEWS")
1415
private var blockedGraphHosts: [Unmanaged<GraphHost>] = []
@@ -170,7 +171,7 @@ class GraphHost {
170171
}
171172

172173
final func updatePreferences() -> Bool {
173-
let seed = hostPreferenceValues.value?.mergedSeed ?? .empty
174+
let seed = hostPreferenceValues.value?.seed ?? .empty
174175
let lastSeed = lastHostPreferencesSeed
175176
let didUpdate = seed.isInvalid || lastSeed.isInvalid /*|| (seed != lastSeed)*/
176177
lastHostPreferencesSeed = seed

Sources/OpenSwiftUI/Data/Preference/AnyPreferenceKey.swift

-19
This file was deleted.

Sources/OpenSwiftUI/Data/Preference/HostPreferencesKey.swift

-45
This file was deleted.

Sources/OpenSwiftUI/Data/Preference/PreferenceBridge.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ private struct MergePreferenceKeys: Rule, AsyncAttribute {
195195
guard let rhs else {
196196
return result
197197
}
198-
result.merge(rhs)
198+
// result.merge(rhs)
199199
return result
200200
}
201201
}

Sources/OpenSwiftUI/Data/Preference/PreferenceKey.swift

-56
This file was deleted.

Sources/OpenSwiftUI/Data/Preference/PreferenceKeyVisitor.swift

-10
This file was deleted.

Sources/OpenSwiftUI/Data/Preference/PreferenceKeys.swift

-85
This file was deleted.

Sources/OpenSwiftUI/Data/Preference/PreferencesCombiner.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ struct HostPreferencesCombiner: Rule, AsyncAttribute {
7878
continue
7979
}
8080
guard let values = child.$values,
81-
let listValue = values.value.valueIfPresent(key) else {
81+
let listValue = values.value.valueIfPresent(for: key) else {
8282
continue
8383
}
8484
if initialValue {

Sources/OpenSwiftUI/Data/Preference/PreferencesInputs.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ struct PreferencesInputs {
3131

3232
@inline(__always)
3333
mutating func merge(_ preferenceKeys: PreferenceKeys) {
34-
keys.merge(preferenceKeys)
34+
// keys.merge(preferenceKeys)
3535
}
3636
}

Sources/OpenSwiftUI/Data/Preference/PreferencesOutputs.swift

+16
Original file line numberDiff line numberDiff line change
@@ -95,3 +95,19 @@ extension PreferencesOutputs {
9595
#endif
9696
}
9797
}
98+
99+
extension _ViewOutputs {
100+
@inline(__always)
101+
var hostPreferences: Attribute<PreferenceList>? {
102+
get { self[HostPreferencesKey.self] }
103+
set { self[HostPreferencesKey.self] = newValue }
104+
}
105+
}
106+
107+
extension PreferencesOutputs {
108+
@inline(__always)
109+
var hostPreferences: Attribute<PreferenceList>? {
110+
get { self[HostPreferencesKey.self] }
111+
set { self[HostPreferencesKey.self] = newValue }
112+
}
113+
}

Sources/OpenSwiftUI/Data/Preference/View_Preference.swift

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
// Status: Complete
77
// ID: 6C396F98EFDD04A6B58F2F9112448013
88

9+
@_spi(ForOpenSwiftUIOnly) import OpenSwiftUICore
10+
@_spi(Private) import OpenSwiftUICore
11+
912
extension View {
1013
/// Sets a value for the given preference.
1114
@inlinable

0 commit comments

Comments
 (0)