Improve Card hit-testing and border rendering in SUCard #100
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes
Problem: Border clipping
Prevents half the border from being clipped by drawing the line inside the shape:
.strokeBorder()
instead of.stroke()
Problem: Taps don’t register on transparent areas
Adding
.contentShape(.rect)
makes transparent regions tappable.Problem: Taps on child views trigger the card’s tap handler
With isTappable enabled, any touch inside the card, including taps on buttons or checkboxes, still fires the card’s own tap action. Subviews should handle their taps independently.
SwiftUI fix:
Replaced the
.simultaneousGesture()
with.gesture(DragGesture(minimumDistance: 0.0)...)