Repository navigation
0.24.0: Rendering Effects and Controls
Highlights
- Add label views, button styles, and toggle styles for iOS and macOS
- Add compositing groups, blend modes, opacity APIs, and visual, geometry, and color effects
- Add DragGesture, PanGesture, physical button press gestures, and allowsHitTesting
- Add visionOS Simulator and device builds, binary distribution, and native Xcode Previews
- Add PreviewProvider APIs
What's Changed
- feat(label): add label views and style support by @Kyle-Ye in #1123
- fix(packaging): link OpenRenderBoxShimsCxx statically by @Kyle-Ye in #1124
- feat(render): complete opacity effects by @Kyle-Ye in #1129
- feat(style): add default foreground and material helpers by @Kyle-Ye in #1125
- feat(render): add compositing groups by @Kyle-Ye in #1126
- feat(render): add view blend modes by @Kyle-Ye in #1127
- feat(event): add spring loading behavior by @Kyle-Ye in #1130
- feat(layout): add coordinate space modifiers by @Kyle-Ye in #1131
- feat(focus): implement focus event proxy by @Kyle-Ye in #1132
- feat(environment): update control size support by @Kyle-Ye in #1133
- feat(gesture): implement physical button press gesture by @Kyle-Ye in #1134
- feat(opacity): add opacity APIs and appearance animations by @Kyle-Ye in #1135
- feat(effects): implement visual and custom hover effects by @Kyle-Ye in #1136
- feat(effects): add geometry and color effect APIs by @Kyle-Ye in #1139
- feat(button): implement button styles and interactions by @Kyle-Ye in #1138
- fix(text): preserve macOS font smoothing in keyed text masks by @Kyle-Ye in #1141
- test(effects): add shared examples and UI snapshots by @Kyle-Ye in #1142
- test(example): add extendedBlendMode example and UI snapshot test by @Kyle-Ye in #1143
- ci(uitests): tolerate xcodebuild crash after SwiftUI recording by @Kyle-Ye in #1144
- fix(uitests): stabilize macOS snapshot host lifetime by @Kyle-Ye in #1146
- chore(example): restore Text and Button in examples by @Kyle-Ye in #1147
- fix(example): remove project generation warnings by @Kyle-Ye in #1149
- feat(toggle): implement toggle styles for iOS and macOS by @Kyle-Ye in #1148
- feat(gesture): add hitTestingLayoutGesture SPI by @Kyle-Ye in #1150
- feat(hit-testing): add allowsHitTesting modifier by @Kyle-Ye in #1151
- fix(layout): update JindoTripleVStack impl by @Kyle-Ye in #1152
- feat(gesture): implement DragGesture by @Kyle-Ye in #1168
- feat(gesture): implement PanGesture by @Kyle-Ye in #1170
- build(visionos): build for the visionOS Simulator with the public SDK by @Kyle-Ye in #1172
- fix(material): fall back to system colors for foreground material style by @Kyle-Ye in #1174
- build(visionos): support visionOS device builds by @Kyle-Ye in #1177
- feat(preview): implement PreviewProvider APIs by @Kyle-Ye in #1175
- fix(preview): add native visionOS Preview support by @Kyle-Ye in #1179
- build: include visionOS in binary distributions by @Kyle-Ye in #1181
- fix: complete release checks and stabilize snapshot tests by @Kyle-Ye in #1184
- feat(focus): connect keyboard actions and platform focus by @Kyle-Ye in #1183
- ci: isolate iOS snapshot test simulators by @Kyle-Ye in #1185
- fix(uitests): stabilize animation snapshot timing by @Kyle-Ye in #1182
- ci(release): request interface coverage after publishing by @Kyle-Ye in #1186
- fix(release): normalize and verify binary interfaces by @Kyle-Ye in #1188
- fix: restore toggle interaction on iOS by @Kyle-Ye in #1189
Full Changelog: 0.23.0...0.24.0
Binary Integration
.package(url: "https://github.com/OpenSwiftUIProject/OpenSwiftUI-spm.git", from: "0.24.0")See INTEGRATION.md for more details.
Interface Coverage
Full report: OpenSwiftUI 0.24.0
| Baseline | SwiftUI + SwiftUICore | SwiftUI | SwiftUICore |
|---|---|---|---|
| iOS 18.5 | 50.12% | 24.82% | 77.92% |
| macOS 15.5 | 48.93% | 23.60% | 77.94% |