Limit gallery folders to the six Photoshop-style sets and edit stack params via the existing effect dialog body before apply.
Co-authored-by: Cursor <[email protected]>
Adds Effect → Effect Gallery with category browsing, procedural thumbnails, and a reorderable stack applied via command.batch as separate appearance effects.
Co-authored-by: Cursor <[email protected]>
Illustrator documents Unite as a single compound path; use shape_node_styled and compoundPath.release in tests instead of wrapping islands in groups.
Co-authored-by: Cursor <[email protected]>
After Unite, split the result with draw2::components so each island (outer
contour plus its holes) becomes one group child instead of one compound path.
Co-authored-by: Cursor <[email protected]>
Switch to the Touch built-in workspace when the preference is on and a touch
screen is present; restore the prior workspace when it is turned off.
Co-authored-by: Cursor <[email protected]>
After scaling groups, type.scaleTextAttributes matches panel sizes to what draws on canvas without leaving scale in the affine.
Co-authored-by: Cursor <[email protected]>
Mixed left/right/first-line indents and space before/after now follow the same shared-value rules as alignment buttons.
Co-authored-by: Cursor <[email protected]>
Star corners with a large uniform radius kept None in the panel because fitted draw radii differ per tip; tests and UI expect the value the user set.
Co-authored-by: Cursor <[email protected]>
Store corner radii as fractions of each corner's max so rounding scales with the shape; expose via Corners dialog and object.setLiveShape relativeRadii.
Co-authored-by: Cursor <[email protected]>
Hue Shift colorization can sample key color from canvas art via the
eyedropper next to the swatches, matching Illustrator's brush workflow.
Co-authored-by: Cursor <[email protected]>
Pen Cmd-borrow keeps Direct Selection when Alt is held so guide copy and other Alt modifiers on the lent tool still work.
Co-authored-by: Cursor <[email protected]>
Route dock and floating strip reorders through shared logic, sync layout.floating order, and assert reorder via window.panel.move in the harness test.
Co-authored-by: Cursor <[email protected]>
Users can pick an image in the Texturizer dialog; it is stored as relief heights and survives save/open like Glass textures.
Co-authored-by: Cursor <[email protected]>
Overlapping faces take the highest of each CMYK channel from every covering shape and drop strokes, matching Illustrator's Hard Mix effect.
Co-authored-by: Cursor <[email protected]>
When Direct Selection was last used or is active, Cmd+Alt borrows Group Selection for pointer presses, matching the documented modifier chord.
Co-authored-by: Cursor <[email protected]>
Route floating strip drags through the same command path as the dock strip and centralize group tab index moves in one helper.
Co-authored-by: Cursor <[email protected]>
Reuse catalogued window.panel.move errors, keep legacy dock drags from clearing docking on Escape, reorder floating tabs locally without reconcile re-entry, and fix dock_tab_order test setup.
Co-authored-by: Cursor <[email protected]>
Legacy and floating strip drags update order via the panel.move command; partial saved orders append missing tabs, with command-level tests and Illustrator workspace doc link.
Co-authored-by: Cursor <[email protected]>
Horizontal drags on dock and native floating tab strips now reorder tabs
instead of only tearing off; storytold/vectorcraft#2995.
Co-authored-by: Cursor <[email protected]>
testutil: :cx defaults measurement_labels on, so the aspect-ratio drag assertion must not expect a lone Marquee overlay.
Co-authored-by: Cursor <[email protected]>
Honor Show Measurement Labels on the file Place cursor so sizing drags get W/H readouts like other draw tools.
Co-authored-by: Cursor <[email protected]>
Match the Selection tool: Shift on an already selected hit removes it on
release without a drag, including one path of a compound path.
Co-authored-by: Cursor <[email protected]>
Store the click as __anchorX/__anchorY and recompute x/y when the locator opens or changes so the chosen point stays on the click like Illustrator.
Co-authored-by: Cursor <[email protected]>
Rectangular and Polar Grid click dialogs show the nine-point locator and resize width/height about it using the same artboard_rect logic as Artboard Options.
Co-authored-by: Cursor <[email protected]>
Drop the undocumented orientation-swap on moved guides; Alt again previews guide.move with copy, matching new-guide Alt orientation only.
Co-authored-by: Cursor <[email protected]>
Adds sketch.chalkCharcoal to the pixel-effect pipeline so Effect › Sketch exposes chalk highlights and charcoal strokes with public-doc-style parameters and tests.
Co-authored-by: Cursor <[email protected]>
Honor Measurement Labels while moving gradient-mesh and mesh-envelope
points with the Mesh tool or Direct Selection.
Co-authored-by: Cursor <[email protected]>
Reuse the Character panel's Variable Font popover in Properties so axis
sliders are available without opening Character.
Co-authored-by: Cursor <[email protected]>
New warp effect dialogs seed bend, distortion and orientation from the
previous OK instead of catalog defaults; editing an applied warp is unchanged.
Co-authored-by: Cursor <[email protected]>
Wire the View menu toggle and add glyph baselines and bounds to drawing snap targets so point type placement lines up with existing text when Smart Guides are on.
Co-authored-by: Cursor <[email protected]>
Tools that showed distance or angle overlays during drags now respect the
Units preference, consistent with shape and selection tools.
Co-authored-by: Cursor <[email protected]>
Match corner-radius and pie-widget drags: the Selection tool reports a transforming drag so the canvas drops the sharp selection box during bracket moves.
Co-authored-by: Cursor <[email protected]>
Hide the preview line and readout when Smart Guides › Measurement Labels is off; options still report the last drag.
Co-authored-by: Cursor <[email protected]>
Tool canvas drags no longer require a non-zero pointer delta, so smooth-point previews update as the pointer moves when the compositor coalesces motion events.
Co-authored-by: Cursor <[email protected]>
Keyboard increment (Shift ×10) moves the active glyph through text.touchType, with vertical type remapping like the Type tool.
Co-authored-by: Cursor <[email protected]>
Smart Guides spacing now applies when scaling with the Selection and Free Transform tools, not only on moves.
Co-authored-by: Cursor <[email protected]>
Mark object.isolate id as optional so runs_without_params includes it in the shortcut editor; engine already isolates the first selected object when id is omitted.
Co-authored-by: Cursor <[email protected]>
Use a font-script i18n context so Simplified and Traditional Chinese label the Japanese-trait filter as Han characters without changing other locales.
Co-authored-by: Cursor <[email protected]>
Join can set the surviving junction point to a corner or smooth anchor via `to`, matching Illustrator's join choice without a combined Average+Join command.
Co-authored-by: Cursor <[email protected]>
Illustrator stores General ruler units in %AI5_RulerUnits; apply them on EPS/.ai import so rulers and length fields match the saved file.
Co-authored-by: Cursor <[email protected]>
The icon column used overlapping squares for both panels; Appearance now
reads as a stacked list so it is not confused with Pathfinder (storytold/vectorcraft#2681).
Co-authored-by: Cursor <[email protected]>
When copying a loaded .acb into the user library, use the parsed book
title instead of a macOS sandbox temporary name (storytold/vectorcraft#2996).
Co-authored-by: Cursor <[email protected]>
Match the public shortcut reference: Alt while dragging converts horizontal and vertical, with snapping on the new axis; guide.move accepts vertical on the index form.
Co-authored-by: Cursor <[email protected]>
Floating groups on the canvas now always get a panel-colour backdrop from layout geometry when egui has not registered the area yet, and panel bodies paint their own fill so empty regions do not show through.
Co-authored-by: Cursor <[email protected]>
Font services (NexusFont, Adobe Fonts) register faces with the OS without
touching font-folder mtimes; only re-asking the platform lister sees them.
Check every two seconds as well as on window focus, and test that path churn
is detected on the system font scan.
Co-authored-by: Cursor <[email protected]>