Previous fix flattened rx to 0 for every rotated subtree clip — but that's only necessary at off-axis angles. At rotations that are right- angle multiples (0°, 90°, 180°, 270° — and any 90° period), a rotated rrect remains an rrect with w/h possibly swapped, and the AABB of the rotated corners equals the rotated shape exactly. The rounded corner survives the projection and should be preserved. Compute `angleMod90 = ((angleDelta % 90) + 90) % 90` and keep the original rx when the result is within tolerance of 0 or 90 (true right-angle rotation). Otherwise (45°, 30°, etc) the AABB of the rotated rrect is strictly larger than any rrect we can encode, so we fall back to rx=0 as before. Real-world impact: 99% of in-app rotation gestures (and any snap-to-15° ergonomic shortcut applied to a 90° pivot point) keep the rounded corners visible during preview instead of squaring off. |
||
|---|---|---|
| .. | ||
| cli | ||
| desktop | ||
| web | ||