Main moved the shape options bar and paint swatch out of vector_ui.rs into
shape_options.rs and shape_paint_ui.rs (#5452). Carry the PR's gradient paint
over: PaintChange::Gradient, paint_param and the swatch's Gradient tab live in
shape_paint_ui.rs, the tool gradients and set_tool_paint in shape_options.rs,
and shape_gradient_ui.rs is its own module. Both sides' new tests are kept.
Co-authored-by: Denis <179751626+deniskhud@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The shape Fill / Stroke swatches (options bar and Properties) offer No Color, Solid and
Gradient, as Photoshop's popover does, for the next shape and the selected one. The
Gradient tab (shape_gradient_ui.rs) has a Recent row, the preset library, a stops strip
(click to add a colour or opacity stop, drag to move, drag off to delete, midpoints) with
the selected stop's colour, opacity, location and Delete, and style, angle, scale,
Reverse and Align with layer. Stop edits reuse the Gradient Editor's apply_stop.
shape.create / shape.edit take and report every gradient field (opacityStops,
midpoints, offset, dither, align), so editing an imported gradient keeps the rest.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keep the selected shape's stroke when width reaches zero so subsequent
width edits retain its paint and geometry settings in both UI controls.
Preserve explicit No Color removal and gesture-scoped undo behavior.
Add real-widget regressions for style retention, native persistence,
rendering, undo/redo, and deliberate stroke activation.
Fixes#6191.
* Expose native shape stroke controls with staged previews
* Document shape stroke defaults in MCP control schema
* Regenerate docs/scorecard.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: optimalbytee <optimalbytee@users.noreply.github.com>
Co-authored-by: Brandon Thomas <echelon@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>