Commit Graph
9333 Commits
Author SHA1 Message Date
BFlat 95cf8a7dd8 Merge pull request #6105 from mockydevs/fix/alt-codes-numlock-off
Alt + keypad codes: with NumLock off the keypad keys count as digits and don't move the caret
2026-11-09 03:17:58 +08:00
BFlat 027db8cb20 Merge pull request #6096 from Silvertree2010/fix/h7987-psd-export-writes-a-lone-utf-16
Cut PSD Unicode layer names on a character boundary
2026-11-09 03:17:43 +08:00
BFlat 52605ed8ab Merge pull request #6093 from slafebre/fix/5960-gradient-along-crossings
Fix #5960: a narrow part of a variable-width stroke paints over a wide part only where they overlap
2026-11-09 03:17:26 +08:00
BFlat 2693ef631e Merge pull request #6062 from devius/ka-update-2026-11-07
i18n(ka): Georgian for 1 new string
2026-11-09 03:17:10 +08:00
BFlat 9d4a203da1 Merge pull request #6021 from magyarb/fix/ai-mask-art-inherits-paint
.ai import: opacity mask art without its own paint takes the paint before its dictionary
2026-11-09 03:16:55 +08:00
BFlat b0092f8ad9 Merge pull request #6010 from mockydevs/feat/ai-import-stroke-offset
EPS/.ai editing data: art-style strokes aligned inside or outside keep their alignment
2026-11-09 03:16:39 +08:00
BFlat 93c26e8bc0 Merge pull request #5578 from ruchirguitar/feat/5529-select-font-scope
Select Text by Font: limit it to artboards or layers (#5529)
2026-11-09 03:16:23 +08:00
BFlat ebfc6588a9 Merge pull request #5491 from storytold/fix/sec-affinity-shared-budget
Affinity import: one shared work and name budget across repeated links
2026-11-09 03:16:05 +08:00
BFlat c7593a25a7 Merge pull request #5459 from VladimirCeric/typed-curly-quotes
Typographer's Quotes: a lone typed ” opens like a straight quote
2026-11-09 03:15:50 +08:00
BFlat f85cea2363 Merge pull request #5423 from Silvertree2010/fix/5363-eps-import-of-a-large-valid-file
Scale the EPS operation budget with the program's length
2026-11-09 03:15:35 +08:00
Don Omondi d8074562d1 Alt + keypad codes: docs say the Windows path is unit-tested only; fix two comments
The type parity row no longer says the NumLock-on path was tried on
Windows: neither path has been run on a Windows machine yet. The comment
on the NumLock-off egui keys says Clear comes as the top-row 5, and the
test comment names the keys 0151 and 0234 actually use.
2026-11-09 02:03:04 +07:00
NetterSilverandClaude Haiku 5.5 b73a880b3c Cut PSD Unicode layer names on a character boundary
Found while testing crates/render/src/encode/psd.rs:225

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-09 02:03:03 +07:00
Sven Lafebre b2acf71764 Fix #5960: find how far gradient ribs reach in one pass along the path
Each rib of a dashed stroke with a width profile looked up to 256 points
either way along the path, asking the profile at every step, and reached
as wide as the stroke gets anywhere past that. A sliding maximum over the
points' precomputed cover now gives every rib's reach in time in
proportion to the points, with no bound and no fallback to the widest
width (review on #6093).
2026-11-09 02:03:03 +07:00
Don Omondi 8b6e358f0c Alt + keypad codes: with NumLock off the keypad keys count as digits and don't move the caret
Follow-up to #5939. With NumLock off the keypad sends Insert, End, arrows,
Clear, Home and Page Up/Down; Windows still composes the code from them,
but the app also moved the caret, so the character landed elsewhere. With
Alt held, those keys without the extended-key flag now count as digits and
are taken out of the frame; the separate navigation keys keep their meaning.
2026-11-09 02:03:03 +07:00
Sven Lafebre 6d18549edc Fix #5960: evidence entry in the parity document 2026-11-09 02:03:03 +07:00
Davit MatchakhelidzeandClaude Sonnet 5.5 82596bacc7 i18n(ka): Georgian for 1 new string
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-09 02:03:02 +07:00
M Balazs PC 7f7c4cf9ad .ai import: test every paint mask art takes, and that it stays in the mask
The mask test now checks the whole fill and stroke (colour, overprint,
width, cap, join, miter, dash) and the fill rule against the owner's,
and that an object after the mask's dictionary paints with the owner's
paint, not the paint the mask's art set. open_mask_object gets a doc
comment.
2026-11-09 02:03:02 +07:00
Sven Lafebre 8f975aa0c5 Fix #5960: a narrow part of a variable-width stroke paints over a wide part only where they overlap
With a width profile, every slice of a stroke gradient (along or across)
reached as far as the stroke is wide anywhere. Where the stroke crosses
or runs close by itself, the later, narrower part painted a square of
its colour over the wider part beside it, clipped only to the whole
outline. Each rib now reaches as far as the stroke is wide there and on
its way to the next points (each side of a profile stays between its
widths at a span's points); for a dashed stroke, as wide as it gets
within a cap's reach, since caps and dots reach along the path.
2026-11-09 02:03:02 +07:00
M Balazs PC 500ff6ed4c .ai import: opacity mask art without its own paint takes the paint before its dictionary
A dictionary's state starts afresh, with a black fill. Mask art is written
going on from the paint before the mask's dictionary, which the writer leaves
out when it doesn't change, so a mask rectangle with no colour of its own
came in black and hid the white letters it masks. Mask art now starts from
the paint (fill, stroke, line style, fill rule, overprint) before the
dictionaries it is in; lock, visibility and transparency still start afresh.
2026-11-09 02:03:02 +07:00
Don Omondi d4f6fa0744 EPS/.ai editing data: art-style strokes aligned inside or outside keep their alignment
Squashed from #6010 onto main.
2026-11-09 02:03:01 +07:00
ruchirguitar b1f52d1369 Select Text by Font: limit it to artboards or layers (#5529)
Squashed from #5578 onto main.
2026-11-09 02:03:01 +07:00
Dylan M. Taylor 2ead0afaa0 affinity import: share one work and name budget across repeated links of shared objects 2026-11-09 02:03:00 +07:00
VladimirCeric e3817d6b50 Typographer's Quotes: a lone typed ” opens like a straight quote
Squashed from #5459 onto main.
2026-11-09 02:03:00 +07:00
NetterSilverandClaude Opus 5.5 05a242ff77 Scale the EPS operation budget with the program's length
Fixes #5363

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-09 02:03:00 +07:00
BFlat c62a8d27e0 Merge pull request #6230 from dotCooCoo/fix/ai-defs-art-styles
.ai import: objects in pattern and brush art take the file's art styles
2026-11-09 02:06:49 +08:00
BFlat 5a2b81bc93 Merge pull request #6226 from dotCooCoo/fix/ai-save-vertical-roman
.ai save: the editing copy keeps Standard Vertical Roman Alignment
2026-11-09 02:06:34 +08:00
BFlat ec732076a4 Merge pull request #6222 from dotCooCoo/fix/swatch-new-gradient-link
Swatches: a new swatch holds no link or placement from the paint it is made from
2026-11-09 02:06:18 +08:00
BFlat 3355bdd100 Merge pull request #6219 from dotCooCoo/fix/ai-gradient-swatch-self-link
.ai import: a palette gradient swatch's paint is not linked to itself
2026-11-09 02:06:03 +08:00
BFlat 3d1a1ee0de Merge pull request #6218 from dotCooCoo/fix/workspace-dialog-test-gap-above
Tests: workspace and toolbar dialog test checks the gap above OK and Cancel's place
2026-11-09 02:05:46 +08:00
BFlat 5613b4d10e Merge pull request #6217 from dotCooCoo/fix/ai-ate-vertical-roman
.ai import: type keeps Standard Vertical Roman Alignment from its editing data
2026-11-09 02:05:30 +08:00
BFlat 42cc222ca2 Merge pull request #6216 from dotCooCoo/fix/symbols-reset-transformation-doc-entry
Docs: the Reset Transformation entry is listed once in the evidence list
2026-11-09 02:05:14 +08:00
BFlat 5c6d868e5a Merge pull request #6208 from dotCooCoo/fix/type-escape-doc-prior-tool
Type: docs say Escape returns to the tool that double-clicked into the type
2026-11-09 02:04:55 +08:00
BFlat 73e8a97c3c Merge pull request #6207 from dotCooCoo/fix/legacy-ai-align-to-path-lost
Legacy .ai: the type attributes warning covers kerning, margins, Align to Path and end brackets
2026-11-09 02:04:45 +08:00
BFlat fb17bf51c9 Merge pull request #6206 from dotCooCoo/fix/svg-textpath-effects
SVG export: type on a path with Skew, 3D Ribbon, Stair Step or Gravity keeps its look
2026-11-09 02:04:28 +08:00
BFlat 47aeadbdc1 Merge pull request #6203 from dotCooCoo/fix/flyout-panels-follow-up
Panels: tests pin the palette windows staying shown for torn-off strips and new toolbars
2026-11-09 02:04:13 +08:00
BFlat 0558f0fd25 Merge pull request #6202 from dotCooCoo/fix/ai-editing-copy-one-paragraph
.ai import: the editing-copy paragraph in the file-format doc appears once
2026-11-09 02:03:56 +08:00
BFlat e0155f3c28 Merge pull request #6200 from dotCooCoo/feat/svg-filters-effect
Effects: Effect › SVG Filters applies the document's SVG filters as live effects
2026-11-09 02:01:11 +08:00
BFlat 615aeb4361 Merge pull request #6199 from dotCooCoo/fix/placed-gradient-follows-transform
Effects: placed gradients move with Transform and Free Distort effects
2026-11-09 02:00:58 +08:00
BFlat b632e69e5f Merge pull request #6198 from dotCooCoo/fix/plugin-fuzz-bulk-memory
Plug-ins: the fuzz test generates bulk memory operations
2026-11-09 02:00:41 +08:00
BFlat cc2f9a3e3e Merge pull request #6195 from dotCooCoo/fix/envelope-top-object-sides
Envelopes: a top object's sides share the content by control polygon length
2026-11-09 02:00:22 +08:00
BFlat c036f56844 Merge pull request #6191 from dotCooCoo/fix/pathops-vc-merge-per-key
Path ops: Merge finds every fill's faces in a few contour passes instead of one per fill
2026-11-09 02:00:04 +08:00
BFlat 782f213e48 Merge pull request #6185 from dotCooCoo/feat/plugin-safe-mode
Plug-ins: Safe Mode starts without plug-ins, offered after a launch stops while one loads
2026-11-09 01:59:47 +08:00
BFlat 188316b092 Merge pull request #6178 from dotCooCoo/feat/js-interpreter
JavaScript: vectorcraft-js runs ES5 scripts with a garbage-collected heap and execution limits
2026-11-09 01:59:35 +08:00
BFlat c9b40ea58f Merge pull request #6169 from dotCooCoo/feat/pixel-align-property
Transform: Align to Pixel Grid keeps an object's horizontal and vertical edges on the pixel grid
2026-11-09 01:59:18 +08:00
BFlat 23c8b4c11a Merge pull request #6168 from dotCooCoo/feat/export-3d-mesh
Asset Export: 3D objects export as USDA, USDZ, glTF or OBJ meshes
2026-11-09 01:59:00 +08:00
BFlat 51c28f6e17 Merge pull request #6149 from dotCooCoo/feat/load-aia-actions-2
Actions: Load Actions… reads action sets saved as .aia files
2026-11-09 01:58:41 +08:00
BFlat f110a8d6d1 Merge pull request #6144 from dotCooCoo/perf/distinct-masks
Path ops: region building lists the shapes covering each region instead of a flag per shape
2026-11-09 01:58:25 +08:00
BFlat dbf7fb0045 Merge pull request #6136 from dotCooCoo/feat/ai-editing-data-symbols
.ai save: the editing copy keeps symbols and their instances
2026-11-09 01:58:07 +08:00
BFlat 9135c4bc57 Merge pull request #6111 from dotCooCoo/feat/artboard-edge-add
Artboard tool: buttons on the selected artboard's edges add an artboard beside it
2026-11-09 01:57:51 +08:00
BFlat 7dc2bfd378 Merge pull request #6101 from dotCooCoo/feat/app-title-bar-on-desktop-frames-r
Title bar: a Linux and BSD preference uses the app bar where the desktop draws the frame
2026-11-09 01:57:35 +08:00