Repository navigation
A bug-fix release that also builds for watchOS and prepares for OS 26. This is the last release supporting iOS 16, macOS 13, tvOS 16, watchOS 9 and visionOS 1: the upcoming 3.0.0 raises the minimum versions, so stay on 2.1.0 if your app still supports older OS versions.
Added
Color.rgbo(in:)— returns the components a view actually displays, resolved against its environment (light/dark, contrast).- watchOS support — the package now builds for watchOS; CI builds iOS, tvOS, visionOS and watchOS.
Changed
rgbo/hsboon macOS — convert to extended sRGB instead of device RGB, matching iOS. Wide-gamut colors can now return components outside 0…1, so clamp beforeUInt8(value * 255).Color.toHex— returns a value for dynamic, system and grayscale colors instead ofnil, and converts Display P3 colors to sRGB.- Localizations — address people the way Apple does in each language;
SearchableGridPicker's "None" and the macOS "Done" button of the multi-selector are now translated; an empty search shows the system'sContentUnavailableView.search.
Deprecated
WebView— deprecated starting iOS, macOS and visionOS 26 in favor of WebKit's SwiftUIWebView/WebPage. WriteHandySwiftUI.WebViewin files that import both.
Fixed
highlightMatchingTokenizedPrefixes— highlights the right characters when folding changes the length (é, ü, full-width characters).WebView— loads only when the URL changes instead of reloading and re-scrolling on every update.CachedAsyncImage— shows a failed download as a failure instead of spinning forever.- Negated
Boolbinding,HPicker/VPicker(no force-cast ofallCases),Image/Label(convertible:)(symbol metadata stripped),NSImage.jpegData(JPEG instead of JPEG 2000),HorizontalLabeledContentStyle(respectsmuteContent). - Fewer warnings —
Text(format:)uses Swift Regex and the internalonChangeno longer triggers deprecation warnings on visionOS;Color.change(.opacity…)no longer round-trips through HLC.
Full Changelog: 2.0.1...2.1.0