0.8.0
This release adds support for more SwiftUI types and modifiers, and fixes bugs. Including, but not limited to:
Toolbar
type andtoolbar
modifierProgressView
typeAnimation
and related types and modifiersopacity
,scaleEffect
,aspectRatio
, andcontrolSize
modifiersMaterial
andGradient
typesHierarchicalShapeStyle
(.primary
/.secondary
/.tertiary
/.quaternary
) typeContainerRelativeShape
typespacing
argument support for initializers ofHStack
andVStack
- support for standard Foundation types, such as
CGRect
,CGSize
(we previously used our own implementation of those, which weren't fully compatible with Foundation) - ability to sort HTML attributes when generating static HTML, which is essential for end-to-end tests that cover generated output.
Many thanks to @carson-katri, @ezraberch, and @yonihemi for their contributions to this release!
Closed issues:
- Is there anyway to compile this from Xcode? (#406)
- Xcode doesn't compile — gtk/gtk.h not found (#405)
- Use
NSGeometry
types from Foundation (#404) - Adding padding to a view contained in a Button causes the Button to disappear (#403)
- .background modifier with contained shape causes view to expand to full vertical size of the screen (#402)
- Multi-line string handling in Text views (#400)
- Content with spacer jumps when blurring and focusing the page (#395)
- Frame sizes do not match expected behavior. (#387)
- URL hash change demo crashes (#369)
- Infinite loops w/ 100% CPU usage caused by stack overflows (#367)
- TokamakDemo breaks after use of
_domRef
(#326) - Add support for
toolbar
modifier and related types (#316)
Merged pull requests:
- Revise
ShapeStyle
and addGradient
s (#435) via @carson-katri - Add
Toolbar
implementation for HTML renderer (#169) via @carson-katri - Fix SwiftLint action (#434) via @ezraberch
- Add View Traits and transitions (#426) via @carson-katri
- Add
ToolbarItem
and its builder functions (#430) via @MaxDesiatov - Add
controlSize
/controlProminence
modifiers (#431) via @carson-katri - Fix background/overlay layout in DOM/HTML renderers (#429) via @carson-katri
- Add
ProgressView
(#425) via @carson-katri - Add support for custom fonts (#421) via @carson-katri
- Animation implementation using the Web Animations API (#427) via @carson-katri
- Add
scaleEffect
modifier (#424) via @carson-katri - Add
aspectRatio
modifier (#422) via @carson-katri - Check minWidth/Height == nil (#420) via @carson-katri
- Add Primary/Secondary/Tertiary/QuaternaryContentStyle (#419) via @carson-katri
- Add
Material
to the HTML renderer (#418) via @carson-katri - Improve ShapeStyles to match iOS 15+ (#417) via @carson-katri
- Add ContainerRelativeShape (#416) via @carson-katri
- Add HTML implementation for
opacity
modifier (#415) via @MaxDesiatov - Support
spacing
property onHStack
/VStack
(#273) via @MaxDesiatov - Explicitly import CoreFoundation (#413) via @yonihemi
- Fix handling of stroked shapes (#414) via @ezraberch
- Add a snapshot test for
Path
SVG layout (#412) via @MaxDesiatov - Attempt
padding
modifier fusion to avoid nesteddiv
s (#253) via @MaxDesiatov - Use
CGFloat
,CGPoint
,CGRect
from Foundation (#411) via @MaxDesiatov - Add reconciler stress tests for elaborate testing (#381) via @MaxDesiatov
- Fix spacers after
DOMRenderer.update
(#410) via @ezraberch - Replace
ViewDeferredToRenderer
, fix renderer tests (#408) via @MaxDesiatov - Allow DOMRenderer to render buttons with non-Text labels (#403) (#409) via @ezraberch
- Sort attributes in HTML nodes when rendering (#346) via @MaxDesiatov