BFlat
0222da8e6f
Merge pull request #7522 from dotCooCoo/fix/graph-data-utf16-no-bom
...
Graphs: Import Data reads UTF-16 text files without a byte-order mark
2026-11-15 03:21:22 +07:00
BFlat
2986979149
Merge pull request #7432 from dotCooCoo/fix/wireframe-transform-measures-shadow
...
3D: Expand as Wireframes measures later effects with the cast shadow
2026-11-15 03:21:13 +07:00
BFlat
6ee761e327
Merge pull request #7639 from dotCooCoo/feat/global-edit-rotated-copies
...
Global Edit: rotated copies are matched and take each edit turned by their angle
2026-11-15 03:21:03 +07:00
BFlat
bac95f9902
Merge pull request #7631 from dotCooCoo/fix/composite-font-lent-document-only
...
Type: a document draws only its own composite font definitions
2026-11-15 03:20:55 +07:00
BFlat
e8a65c97ef
Merge pull request #7409 from dotCooCoo/fix/rtl-tab-end-trim
...
Type: right-to-left tabbed lines are measured with their line-end trim where it is drawn
2026-11-15 03:20:46 +07:00
BFlat
3a76cd89ac
Merge pull request #7620 from dotCooCoo/fix/live-paint-info-every-row
...
MCP: livePaint.info lists every appearance row of a face or edge
2026-11-15 03:20:38 +07:00
BFlat
2d9793d6f1
Merge pull request #7637 from dotCooCoo/perf/remove-breaks-thread-frames-once
...
Remove Breaks: a partly selected story's frames are gone through once
2026-11-15 03:20:29 +07:00
BFlat
ab913e84ad
Merge pull request #7628 from dotCooCoo/fix/clipping-members-drawn-budget
...
Effects: a clipping path's members count toward the member limit of a group's effects
2026-11-15 03:20:21 +07:00
BFlat
46a7dd24f6
Merge pull request #7646 from dotCooCoo/fix/nine-slice-symbol-lookups
...
Symbols: measuring and picking in 9-slice instances reuse one set of symbol boxes
2026-11-15 03:20:12 +07:00
BFlat
2eb5894748
Merge pull request #7619 from dotCooCoo/fix/learn-reset-progress-doc
...
Docs: only learn.markStep checks a tutorial id, not learn.resetProgress
2026-11-15 03:20:03 +07:00
BFlat
e9aea2bfea
Merge pull request #7612 from dotCooCoo/perf/trace-quantize-parallel
...
Image Trace: finding and settling blend pixels runs on all cores
2026-11-15 03:19:55 +07:00
BFlat
013ee019e3
Merge pull request #7607 from dotCooCoo/fix/paste-copied-file-size-limit
...
Paste: a copied file over 64 MiB is skipped before it is read
2026-11-15 03:19:47 +07:00
BFlat
c6c06b2c68
Merge pull request #7442 from dotCooCoo/fix/eps-ryumin-light-h
...
EPS import: Ryumin-Light-H and GothicBBB-Medium-V read as Japanese type without their CIDFont
2026-11-15 03:19:37 +07:00
BFlat
280cc9a488
Merge pull request #7455 from dotCooCoo/fix/followup-7303
...
Area type: contours whose crossings round to one x keep the gap between them
2026-11-15 03:19:29 +07:00
BFlat
19db13cfac
Merge pull request #7611 from dotCooCoo/perf/flatten-held-guides-one-walk
...
Flatten: held ruler guides are gathered in one walk
2026-11-15 03:19:16 +07:00
BFlat
a33a296ccc
Merge pull request #7530 from dotCooCoo/fix/vi-missing-message-rows
...
i18n: Vietnamese translates 115 status and error messages it lacked
2026-11-15 03:19:06 +07:00
BFlat
8b351d475b
Merge pull request #7613 from dotCooCoo/docs/localization-indonesian-bosnian
...
Docs: the localization page lists Indonesian once and marks Bosnian by what it translates
2026-11-15 03:18:47 +07:00
BFlat
eb6f230d1a
Merge pull request #7453 from datatimp/fix/7340-guide-row-clicks
...
Layers: a plain click on another row lets go of the selected guide (#…
2026-11-15 03:18:36 +07:00
BFlat
14f12130e7
Merge pull request #7656 from storytold/revert/7638
...
Revert #7638 (craft-libs codec cutover) to get main green
2026-11-15 03:09:07 +07:00
bflatastic
79572cbf6c
Revert "Cut over roxmltree, png, tiff, psd, and trace codecs to craft-libs ( #7638 )"
...
This reverts commit bada8e1710 . #7638 merged with its gate failing: besides six unformatted
files, render and trace don't compile against craft-libs e2dc681 (u64::from(usize) in
render/src/paint.rs, a private craft-libs function, and a call with one argument too many in
trace/src/opaque.rs), so main's CI fails. The tree is that of 0adbdce6cb , whose CI passed.
2026-11-15 02:26:07 +07:00
Dylan M. Taylor
bada8e1710
Cut over roxmltree, png, tiff, psd, and trace codecs to craft-libs ( #7638 )
2026-11-14 13:49:50 -05:00
datatimp
8d3f8d1ce5
Merge branch 'main' of https://github.com/storytold/vectorcraft into fix/7340-guide-row-clicks
2026-11-14 13:36:34 -05:00
dotCooCoo
3534dd7343
Symbols: measuring and picking in 9-slice instances reuse one set of symbol boxes
...
Measuring an instance of a symbol with 9-slice guides looked its map up
through Document::symbol_slice_map, which scanned the symbol list and
measured the art box again in new quick boxes, and NineSliceMap::place
and most_placed made new quick boxes of their own. Each of those boxes
built the symbol name index over the whole list on its first lookup, so
every 9-slice instance measured read every symbol once or more. Picking
an object inside a 9-slice instance's art with Direct Selection did the
same for each object of the art that holds a symbol instance.
- SymbolBoxes cuts the guides through the art box it has measured
(SymbolBoxes::slice_map), and places and counts the art with itself as
the boxes, in the mode quick boxes use. Art with no 9-slice map is
moved by the instance's transform without looking the map up again.
- Document::symbol_slice_map, place_symbol_art,
place_symbol_art_unclipped and edited_nine_slice use one set of quick
boxes for each call.
- symbol_part_at and symbol_part_outline keep one set of quick boxes
for the instance's art.
The new tests count the symbols read. Measuring 200 instances of a
symbol with guides and 200 of a symbol with guides holding it, among
2,002 symbols, read 1,205,204 symbols before; now each set of boxes
reads the list once. Picking in a 9-slice instance whose art holds 20
instances read 84,042 symbols among 2,001; now it reads the list at
most twice.
2026-11-14 10:32:20 -08:00
BFlat
0adbdce6cb
Merge pull request #7621 from ruchirguitar/feat/symbols-item-context-menu
2026-11-15 01:14:51 +07:00
dotCooCoo
66f989c27b
Effects: the member limit's doc comment says a compound path with fill or stroke effects becomes a group of pieces
2026-11-14 10:09:26 -08:00
dotCooCoo
b554fc3b10
Merge main into perf/flatten-held-guides-one-walk
2026-11-14 09:45:47 -08:00
dotCooCoo
f43d16268a
Global Edit: rotated copies are matched and take each edit turned by their angle
...
Select > Start Global Edit now also takes rotated copies of the selected
object or group, in the highlights before the start, in the Global Edit
Options' Results count and in the started edit. An edit reaches each copy
turned by that copy's angle, so an anchor moved to the right on the
selected object moves downward on a copy turned a quarter turn clockwise.
The copy's angle is the one that lays the selected object's anchors and
handles on the copy's in order (a least-squares fit in the unit box),
and the copy is the same shape when each point then lies within a
millionth of the larger side of the copy's box. Reflected copies and
copies stretched along one direction stay unmatched. With Size, a rotated
copy matches when it is the object rotated without scaling. The no-match
message now names only reflected copies, in every catalog that has it.
Docs: docs/mcp.md, docs/gaps.md, docs/ui-parity.md and the evidence list
in docs/target-app-parity.md.
2026-11-14 09:43:51 -08:00
dotCooCoo
c51d14262f
Merge main into fix/composite-font-lent-document-only
2026-11-14 09:42:51 -08:00
BFlat
67f6d3a50f
Merge pull request #7593 from dotCooCoo/fix/ai-writer-wrap-comment
...
PDF/.ai export: the comment gives the present reason area type with wrap shapes is written as outlines
2026-11-15 00:42:14 +07:00
BFlat
78131ae11c
Merge pull request #7419 from dotCooCoo/fix/type-dialogs-story-wide
...
Type: Justification, OpenType, text styles and Convert to Text change every frame of a selected story
2026-11-15 00:42:04 +07:00
BFlat
fcfad959ff
Merge pull request #7588 from dotCooCoo/fix/mesh-point-color-panel
...
Color: the panels show the color and opacity of picked gradient mesh points
2026-11-15 00:41:54 +07:00
BFlat
e76f8d2c88
Merge pull request #7501 from dotCooCoo/fix/export-bakes-symbol-art-effects
...
Export: live effects in symbol art apply in PDF, EPS, print and DXF
2026-11-15 00:41:46 +07:00
BFlat
0342616e15
Merge pull request #7459 from dotCooCoo/fix/followup-7304
...
Sort Objects: an opacity sort that gives marks their own opacities changes nothing
2026-11-15 00:41:36 +07:00
BFlat
63129de08a
Merge pull request #7595 from dotCooCoo/fix/image-scaling-alpha
...
Images: scaled-down images keep their color beside clear pixels
2026-11-15 00:41:27 +07:00
BFlat
a3b81947ff
Merge pull request #7413 from dotCooCoo/fix/line-break-latest-fitting
...
Type: a tabbed line that steps back ends at the latest break that fits as drawn
2026-11-15 00:41:19 +07:00
BFlat
53cc597fbd
Merge pull request #7554 from dotCooCoo/fix/place-text-utf16-no-bom
...
Place: text files in UTF-16 without a byte-order mark place as UTF-16
2026-11-15 00:41:11 +07:00
BFlat
12b09b921c
Merge pull request #7439 from dotCooCoo/fix/single-line-composer-remeasure
...
Type: the Single-line Composer measures a line's room across its tallest character
2026-11-15 00:41:01 +07:00
BFlat
9735165c40
Merge pull request #7556 from dotCooCoo/fix/rasterfilters-deterministic
...
Tests: raster effects draw the same twice while another test assigns a document profile
2026-11-15 00:40:50 +07:00
BFlat
8c5494bccc
Merge pull request #7342 from dotCooCoo/feat/live-paint-selection-double-click
...
Live Paint: a Live Paint Selection double-click selects the connected faces or edges
2026-11-15 00:40:41 +07:00
BFlat
7ee5f499f4
Merge pull request #7547 from dotCooCoo/fix/ai-large-canvas-symbol-art
...
.ai and EPS import: large canvas symbols come in at the file's size
2026-11-15 00:40:30 +07:00
BFlat
d0b37826c0
Merge pull request #7338 from dotCooCoo/fix/colored-light-seams
...
3D: colored-light facets close their shared edges over an underlay
2026-11-15 00:40:19 +07:00
BFlat
3d895d9ac7
Merge pull request #7448 from dotCooCoo/fix/reverse-path-profiles
...
Paths: Reverse Path Direction turns the stroke's width profile and pen records with the path
2026-11-15 00:40:08 +07:00
BFlat
1b2a4b39d5
Merge pull request #7557 from dotCooCoo/fix/eps-kshow-composite
...
EPS import: kshow runs its procedure between the characters of a composite font
2026-11-15 00:39:59 +07:00
BFlat
e76692b0f1
Merge pull request #7475 from dotCooCoo/fix/colr-radial-negative-start-radius
...
Type: COLR radial gradients with a negative radius draw from their circle of radius 0
2026-11-15 00:39:49 +07:00
BFlat
e5a99a5284
Merge pull request #7561 from dotCooCoo/fix/invert-wrap-offset-band-exact
...
Text wrap: Invert Wrap with an offset lets a line use all the room the grown shape holds
2026-11-15 00:39:39 +07:00
BFlat
01e66f0a19
Merge pull request #7477 from dotCooCoo/fix/dimension-second-point-guides
...
Dimension tool: no construction guides through a first point off the anchors
2026-11-15 00:39:29 +07:00
BFlat
23accce757
Merge pull request #7467 from dotCooCoo/fix/inflate-lazy-puffs
...
3D: Inflate with no volume solves each puff only when its solid is taken
2026-11-15 00:39:20 +07:00
BFlat
73839f615a
Merge pull request #7558 from dotCooCoo/fix/trace-downscale-alpha
...
Image Trace: scaling a large image down keeps the color of pixels next to clear ones
2026-11-15 00:39:10 +07:00
BFlat
b6b7dda2fd
Merge pull request #7603 from dotCooCoo/docs/menu-stub-list
...
Docs: the menu-stub list names only menus that are not wired up
2026-11-15 00:39:02 +07:00
BFlat
15c054ff2a
Merge pull request #7426 from dotCooCoo/fix/it-missing-message-rows
...
i18n: Italian translates the messages no catalog had a row for
2026-11-15 00:38:53 +07:00