-
Notifications
You must be signed in to change notification settings - Fork 32
Add badge, symbolVariant, blendMode, drawingGroup, luminanceToAlpha, and allowsHitTesting modifiers #303
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…odifiers - blendMode: Maps SwiftUI blend modes to Compose BlendMode via graphicsLayer - drawingGroup: Forces offscreen rendering using CompositingStrategy.Offscreen - luminanceToAlpha: Converts RGB luminance to alpha using ColorMatrix filter - allowsHitTesting: Disables touch interaction via clickable(enabled: false) Also added raw value Int conformance to BlendMode enum for bridging support and updated README
- compositingGroup: Uses CompositingStrategy.Offscreen for blend mode isolation - flipsForRightToLeftLayoutDirection: Flips content horizontally when RTL layout is active
SwiftUI composites the group first, then applies opacity to the flattened result. Compose applies each graphicsLayer independently. Fix would require: The opacity modifier to detect when a parent has compositingGroup and use saveLayer with Paint.alpha instead of a separate graphicsLayer.
- Implement badge(_:) and badgeProminence(_:) modifiers for List items - Add symbolVariant(_:) modifier with combinable variants (fill, circle, square, rectangle, slash) - Add environment values for badge and symbolVariants - Update Image to apply symbol variants from environment
|
This is looking great! I'll do a more complete review later this weekend, but if you get a chance, can you mention |
|
yes I will. also - is it fine if I keep pushing my updates in this ongoing PR? or do you prefer a new branch to keep fewer changes per PR? for example here I needed the blendmode which wasn't yet merged. but I can also open new branches instead for unrelated changes. |
Sure, that would be great. It is preferred, actually, since I need to cut a new release every time we need to sync testing changes between the dependent repositories. Just convert this PR to a Draft (along with the associated PRs in skip-fuse-ui and skipapp-showcase-ui), and then when it is ready to go, take them out of draft ("Ready for Review") so I know that it is time to review, merge, and release. |
|
Alright, good to know. This PR is ready to review, but I'll keep it in mind for the future. |
Also added raw value Int conformance to BlendMode enum for bridging support and updated README
swift test