dotCooCoo
bbbce4318f
Add Enclosing Lasso as an optional tool
...
Squashed from #5362 onto main.
2026-11-03 23:30:06 +07:00
dotCooCoo
63ac1395fd
Type: control Kashidas for selected characters
2026-11-03 23:29:52 +07:00
Dylan M. Taylor
5f31ea5c9d
fix(testkit): temp dir must belong to this user
2026-11-03 23:29:49 +07:00
Dylan M. Taylor
460a4f7a91
fix(ui): carry automation scope through opening, file picks and the render worker
2026-11-03 23:29:47 +07:00
Dylan M. Taylor
73f5ea573d
fix(ui): automation hand-offs refused, preview page named inside its folder, graph grid bounded
2026-11-03 23:29:45 +07:00
Dylan M. Taylor
c9d73ece85
fix(fonts): confine craft-fonts manifest paths and publish licences as text
2026-11-03 23:29:43 +07:00
Dylan M. Taylor
05bdd182b8
fix(render): charge fx symbol instances, admit CMYK decodes, checked Targa size
2026-11-03 23:29:41 +07:00
Dylan M. Taylor
670968f60a
perf(text): look only at a paragraph's own runs
2026-11-03 23:29:39 +07:00
Dylan M. Taylor
8f8d04e5b5
fix(trace): empty and mismatched rasters, swatch dedupe by set
2026-11-03 23:29:37 +07:00
Dylan M. Taylor
ca1c317644
fix(tools): clippy-friendly scanline bound
2026-11-03 23:29:35 +07:00
Dylan M. Taylor
1597bc378b
fix(tools): count hatch scanlines; compact liquify simplification
2026-11-03 23:29:35 +07:00
Dylan M. Taylor
c3f1a17ad1
test(pdf): keep the offsets for the trailer
2026-11-03 23:29:32 +07:00
Dylan M. Taylor
bcc26d28a6
fix(pdf): bound marked-content lookup, ASCII85, editing hash, image decodes and ink warnings
2026-11-03 23:29:32 +07:00
Dylan M. Taylor
cfd31b5010
CSS export: line breaks and angle brackets in names can't end a CSS string
...
Squashed from #5408 onto main.
2026-11-03 23:29:31 +07:00
Dylan M. Taylor
0086c85bc7
fix(svg): glyphs keep only typed raster data URLs and no links
2026-11-03 23:29:09 +07:00
Dylan M. Taylor
c972c15d0f
fix(svg): entity expansion estimate counts every declaration and refuses long names
2026-11-03 23:29:08 +07:00
Dylan M. Taylor
6b0a434c32
perf(svg): CSS class and imported symbol names go on from the last suffix
2026-11-03 23:29:06 +07:00
bflatastic
28b87faeee
Type on a Path Options: docs say where the Preview checkbox comes from
2026-11-03 22:54:12 +07:00
ruchirguitar and Claude Opus 5.5
f53ebdf7c0
Fix #5360 : Type on a Path Options has a Preview checkbox
...
With Preview on, the selected type on a path follows Effect, Flip, Align
to Path and Spacing while the dialog is open. Cancel puts it back with no
history step; OK keeps the previewed values as one undo step. Preview
starts off. The public pages list no Preview for this dialog, so this is
a VectorCraft choice, recorded as such in the parity docs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-03 22:53:39 +07:00
bflatastic
9f6c7d621f
Copy: the too-large-for-PNG status message in every catalog
2026-11-03 22:53:39 +07:00
Dylan M. Taylor
ce5d99c363
Copy: a PNG too large to make is not offered, and the status bar says why
...
Follow-up to #5301 . flavour_types (and clipboard.flavours) still listed PNG for art too large to render at the smallest scale, and the omission was only logged. PNG eligibility is now shared, and flavours_with_warnings returns a warning the status bar shows.
2026-11-03 22:52:31 +07:00
Dylan M. Taylor
1ce015de86
Export for Screens: settings saved without their PDF passwords don't export unprotected
...
Follow-up to #5305 . Stripping passwords from remembered settings made the next export of a password-protected PDF row write an unencrypted file without a word. The stripped settings now keep a non-secret passwordRequired flag, and an export refuses them until a password is given again (or security without the flag is given).
2026-11-03 22:52:30 +07:00
Dylan M. Taylor
ac391b0f85
DXF import: charge every dash copy and symbol name, name the block-work limit
...
Follow-up to #5288 . A dashed compound path keeps its dash pattern on the compound node and on each loop, so the dash budget is charged for every copy. A symbol's name is charged against the text budget before the symbol is kept. Running out of block work now says so instead of reporting more than 2,000,000 objects.
2026-11-03 22:52:28 +07:00
Dylan M. Taylor
30ce0e3a42
Threads: a frame left alone by a dropped repeat is flowed again
...
Follow-up to #5303 . When deduplication shortens a thread ([[a, b], [b, c]] -> [[a, b], [c]]) and no frame changed, the fast path dropped [c] without clearing its threaded continuation. A thread that lost a listing now counts as changed and is flowed again.
2026-11-03 22:52:27 +07:00
Dylan M. Taylor
f0f3320d39
Brushes: a brush name the library lacks doesn't make art draw a brushed stroke
...
Follow-up to #5293 . draws_brushed rejected masks, symbol instances and pattern paints whose art names a brush the library doesn't have, though such a stroke draws plain. It now counts only brush names that resolve.
2026-11-03 22:52:25 +07:00
Dylan M. Taylor
bc50fa782e
Place: a placement read again when it completes stays within the roots it was read in
...
Follow-up to #5306 . A DXF placed off the UI thread against an artboard that changed meanwhile is read again in finish(), on the UI thread, outside the automation roots captured when the read started. Pending now keeps that scope and poll runs finish inside it.
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
1574dfe729
fix: anchor positions and Simplify measure curves through the guarded arc length
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
1806da580c
fix(mcp): busy replies don't repeat a long request id
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
61d9a1c3e4
fix(engine): recovery writes and reads an image entry shared by several keys once
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
24e63b8b4f
fix(eps): Illustrator import looks swatch names up in a set
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
43e391918f
fix(engine): Create from Guides stops at one past the slice limit
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
dabb9ae380
fix(engine): Delete Design handles each listed name once
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
f854b7a2cf
fix(metafile): a full WMF object table is not rescanned for every creation
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
824310e611
fix: brush and library names number repeats without rescanning
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
ffe1ee62ac
fix: gradients drawn pixel by pixel find their stops by binary search
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
891e90bfee
fix(engine): preset imports number duplicate names in linear time
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
706c8f850e
fix(engine): refuse network paths outside the roots before resolving them
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
4bca3c15f1
fix(color): recolor clustering seeds each colour once
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
d68652a8f2
fix(format): a replacement takes no inherited ACL the old file lacked
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
9b10a40709
fix: Templates folder needs write access; portal saves keep exact file names
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
1c4162b2c9
fix(doc): a refused placed-document read shows the preview, not a cached full read
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
4d0ecb264c
fix(engine): link watch and Link Info read within the asking caller's roots
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
40b9fa4717
fix(engine): recovery reads only plain files in its own areas
2026-11-03 22:17:45 +07:00
bflatastic
9d3c45a7b5
.ai import: the nested-arrays refusal uses the translated nesting message
2026-11-03 22:17:45 +07:00
Dylan M. Taylor
e3ef19142f
fix(eps): refuse Illustrator arrays nested past the depth limit
2026-11-03 22:16:56 +07:00
Dylan M. Taylor
4aea3cc95c
fix(effects): a dash pattern whose period overflows draws solid
2026-11-03 22:16:55 +07:00
NetterSilver and Claude Opus 5.5
2264edd0c9
Lasso picks gradient mesh points instead of dropping the mesh
...
Fixes #5351
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-03 22:16:53 +07:00
dotCooCoo
2b63bf1b67
Type: keep composition spacing along the line when characters rotate
2026-11-03 21:38:02 +07:00
bflatastic
96330fb54e
SVG import: a style sheet too large to match opens with a warning; fuzz reaches the pass
2026-11-03 21:12:41 +07:00
dotCooCoo
b751dce8e3
SVG import preserves selector matches while retaining metadata
2026-11-03 21:09:57 +07:00