Commit Graph
3939 Commits
Author SHA1 Message Date
BFlat cebc0b6f6c Merge pull request #6872 from dotCooCoo/docs/plugins-safe-mode-wrap
Docs: docs/plugins.md paragraphs wrap at the file's width
2026-11-12 21:03:53 +07:00
BFlat 6961a96f89 Merge pull request #6842 from dotCooCoo/fix/legacy-ai-vertical-roman-tcy
Legacy .ai: type keeps Standard Vertical Roman Alignment and Tate-chu-yoko
2026-11-12 21:03:45 +07:00
BFlat 032770e046 Merge pull request #6848 from dotCooCoo/test/direct-group-selection
Tests: Direct Selection marquee and hover and Group Selection pass through raster effects
2026-11-12 21:03:35 +07:00
dotCooCoo 6849bd5422 Docs: docs/plugins.md paragraphs wrap at the file's width
Rewrap the prose in docs/plugins.md whose lines broke well short of
the file's 120-column width or ran past it, including the Safe Mode
sentence, the permission-name and install-confirmation sentences, and
the grants.json paragraph. Each rewrapped line is at most 120 columns.
No words, punctuation, code blocks or tables change.
2026-11-12 05:12:10 -08:00
BFlat 89fba4ebfd Merge pull request #5446 from Taha-Mahmoodi/fix/import-document-title
Fix #3626: an imported document takes the title the file carries
2026-11-12 20:09:15 +07:00
dotCooCoo 337bc90d25 Merge main into test/direct-group-selection 2026-11-12 04:59:36 -08:00
BFlat 81247fdae9 Merge pull request #6666 from dotCooCoo/fix/malformed-id-not-missing
MCP: a malformed object id is refused as such, not reported as missing
2026-11-12 19:14:06 +07:00
BFlat 7f9866f42a Merge pull request #6818 from dotCooCoo/feat/korean-line-break-anywhere
Type: Korean words break at spaces unless Korean Line Break Anywhere is on
2026-11-12 19:13:57 +07:00
BFlat 0b4ccdfb5d Merge pull request #6830 from dotCooCoo/fix/artboard-files-ask-before-replacing
Save and Export: files written beside the picked one ask before replacing a file there
2026-11-12 19:13:47 +07:00
BFlat 36e51c2be5 Merge pull request #6812 from dotCooCoo/feat/cut-order
HP-GL export: insideFirst cuts the paths inside a shape before the shape
2026-11-12 19:13:37 +07:00
BFlat 79ef41b50b Merge pull request #6858 from storytold/feat/remove-background-quick-action
Images: Remove Background in the task bar, Properties and the Control bar
2026-11-12 19:06:53 +07:00
Taha-Mahmoodi 3628ad98e9 Merge commit '5a9c297608fc5456bb682c71cbd441339d4504e7' into fix/import-document-title 2026-11-12 16:19:03 +04:30
bflatastic e399ac3290 Images: Remove Background in the task bar, Properties and the Control bar
A selected image offers Remove Background in the Contextual Task Bar, Properties'
Quick Actions and the Control bar, as the reference app does. A click runs it at
once with its defaults, as one undo step; Object > Plug-ins > Image Tools keeps
the dialog with Preview.
2026-11-12 18:25:12 +07:00
Taha-Mahmoodi 93e40537bc Merge remote-tracking branch 'origin/main' into fix/import-document-title 2026-11-12 15:54:47 +04:30
Taha-Mahmoodi ae2800f159 Merge remote-tracking branch 'origin/main' into fix/import-document-title
# Conflicts:
#	docs/target-app-parity.md
2026-11-12 15:52:02 +04:30
BFlat 4306a1d1fb Merge pull request #6808 from dotCooCoo/feat/stencil-bridges
Cutting Tools: Stencil Bridges keeps the islands of a stencil attached
2026-11-12 18:19:57 +07:00
BFlat a8879b9fb8 Merge pull request #6760 from dotCooCoo/feat/brushes-bristle-library
Brushes: built-in Bristle Brushes library with one bristle brush for each tip shape
2026-11-12 18:19:32 +07:00
BFlat f4df78ef4a Merge pull request #6790 from dotCooCoo/feat/hpgl-export
File formats: HP-GL (.plt) plots export for pen plotters and cutters
2026-11-12 18:19:22 +07:00
BFlat 65fb71fff5 Merge pull request #6836 from dotCooCoo/fix/symbol-redefine-drops-undrawn-paints
Symbols: redefining a dynamic symbol drops paints its new objects do not draw
2026-11-12 18:19:10 +07:00
BFlat aa990cf58e Merge pull request #6817 from dotCooCoo/feat/revolve-classic
3D (Classic): Revolve (Classic) sweeps a profile with Angle, Cap and Offset and the classic surfaces
2026-11-12 18:18:59 +07:00
BFlat bdea9ac39a Merge pull request #6822 from dotCooCoo/feat/gradients-holographic
Swatch libraries: Gradients › Holographic adds iridescent foil and glow gradients
2026-11-12 18:18:50 +07:00
BFlat 8e71a11551 Merge pull request #6831 from dotCooCoo/perf/deferrals-refresh-sets
Plug-ins: refreshing deferred effects no longer takes time in the square of the number of stages
2026-11-12 18:18:40 +07:00
BFlat 24905d721c Merge pull request #6839 from dotCooCoo/fix/script-targetengine-error-site
Scripts: an error in a function from an earlier #targetengine run names that run's file and line
2026-11-12 18:18:31 +07:00
BFlat 14c764218f Merge pull request #6840 from dotCooCoo/fix/tab-stops-limit
Tabs: the ruler and Repeat Tab stop at 256 tab stops, and a paragraph with more can lose them
2026-11-12 18:18:21 +07:00
BFlat b6e58f728e Merge pull request #6667 from slafebre/fix/5111-kern-paragraph-start
Fix #5111: kerning at the caret before a line's first character moves it
2026-11-12 18:18:10 +07:00
Taha-Mahmoodi 3eb9e0271c Merge remote-tracking branch 'origin/main' into fix/import-document-title
# Conflicts:
#	docs/file-format-parity.md
#	docs/gaps.md
#	docs/target-app-parity.md
2026-11-12 15:18:59 +04:30
dotCooCoo 63a8efc1f3 Merge main into fix/legacy-ai-vertical-roman-tcy 2026-11-12 02:28:16 -08:00
bflatastic 0f65f6d3f4 Revert "Merge pull request #6656 from dotCooCoo/fix/inspect-library-ids-whole"
This reverts commit 3ed0dc64a8, reversing
changes made to 70ba41bb2b.
2026-11-12 16:35:41 +07:00
dotCooCoo 98d6cedf25 Tests: Direct Selection marquee and hover and Group Selection pass through raster effects
Six tests cover the Direct Selection marquee (anchors and crossed segments), its pointer and anchor highlight, and the Group Selection click, repeated click, marquee (default and E for enclosed objects) and hover over a drop shadow: they reach the object under the shadow or nothing. The selection passes-through line in docs/target-app-parity.md names these gestures.
2026-11-12 01:27:01 -08:00
dotCooCoo cdcac345a9 Legacy .ai: type keeps Standard Vertical Roman Alignment and Tate-chu-yoko
Horizontal type keeps both marks, and the legacy .ai writer writes such
type as text, but the marks were dropped without a warning. Version 7
text has operators for both (section 15.3.4 of the published format
specification): Tv for Roman characters upright in vertical writing,
and TY for a Kumi block in horizontal text recorded for later vertical
use. The writer now writes 1 Tv and 0 Tv, and 1 TY and 0 TY, where a
run's mark changes, closes an open Kumi block before the text object
ends, and writes neither operator for type without the marks. The
legacy .ai reader reads both back onto the same characters. The prolog
defines Tv and TY so the file still runs as PostScript.
2026-11-12 01:08:24 -08:00
BFlat 61650e44a2 Merge pull request #6814 from dotCooCoo/feat/brush-replace-art
Brushes: Alt-drag art onto a brush to replace its art
2026-11-12 16:02:52 +07:00
BFlat 87c0d5cb5e Merge pull request #6826 from dotCooCoo/feat/3d-classic-rotate
3D (Classic): Rotate (Classic) turns flat art in 3D with the No Shading and Diffuse surfaces
2026-11-12 16:02:41 +07:00
BFlat 744c37d12f Merge pull request #6669 from dotCooCoo/feat/dynamic-text-release-path
Type: Release Type on a Path keeps the size Dynamic Text drew the type at
2026-11-12 16:02:25 +07:00
BFlat 183b2ed7e4 Merge pull request #6770 from dotCooCoo/feat/learn-panel
Learn: a Learn panel lists tutorials by skill, opened from Explore tutorials on the app bar
2026-11-12 16:02:15 +07:00
BFlat 3ed0dc64a8 Merge pull request #6656 from dotCooCoo/fix/inspect-library-ids-whole
MCP: a hidden library's shown id names it in requests, and replies hide its path wherever it appears
2026-11-12 16:01:54 +07:00
BFlat 8448e5c18f Merge pull request #6788 from dotCooCoo/feat/e4x-xml-xpath
JS: XML and XMLList xpath evaluates XPath 1.0 expressions
2026-11-12 16:01:37 +07:00
dotCooCoo 843443aecc Merge main into perf/deferrals-refresh-sets 2026-11-12 00:41:09 -08:00
dotCooCoo cc2d090335 Merge main into fix/artboard-files-ask-before-replacing 2026-11-12 00:41:07 -08:00
dotCooCoo f4384486ca Merge main into feat/gradients-holographic 2026-11-12 00:41:03 -08:00
dotCooCoo fdbf49d73a Merge main into feat/korean-line-break-anywhere 2026-11-12 00:40:59 -08:00
dotCooCoo aba45b7249 Merge main into feat/brushes-bristle-library 2026-11-12 00:40:51 -08:00
dotCooCoo 044c8047f6 Scripts: an error in code an earlier #targetengine run compiled names that run's file and line
A function an earlier run of a named engine defined was reported without
a line, column or file when it threw in a later run. The realm now gives
each source a tag that stays the same from run to run (Realm::error_tag,
Realm::script_tag), and no two sources share one once the tags run out.
Each named engine keeps the source maps of its runs' scripts, included
files and $.evalFile files, within 8 MiB, dropping the oldest first, and
an error in kept code is reported at that file, line and column. The
report's name and the console line keep the calling run's name. For an
earlier script given as source, file is that run's name.

Docs: docs/mcp.md (Script engines), script.run params text,
docs/target-app-parity.md.
2026-11-12 00:39:41 -08:00
dotCooCoo e68cbee162 3D (Classic): format the transparent-gradient test; list Revolve (Classic) as shipped
The 3D and Materials row of docs/target-app-parity.md names Revolve
(Classic) with its options and surfaces among what ships, and its
evidence names the tests that cover it.
2026-11-12 00:39:05 -08:00
dotCooCoo 2a55fff1a8 Merge feat/hpgl-export into feat/cut-order
# Conflicts:
#	docs/mcp.md
2026-11-12 00:34:03 -08:00
Sven Lafebre f757f9ef43 Merge remote-tracking branch 'origin/main' into fix/5111-kern-paragraph-start
# Conflicts:
#	docs/target-app-parity.md
2026-11-12 09:29:30 +01:00
Sven Lafebre ab17837cba Merge remote-tracking branch 'origin/main' into fix/5111-kern-paragraph-start
# Conflicts:
#	docs/target-app-parity.md
2026-11-12 09:24:22 +01:00
dotCooCoo ee524f06c9 Tabs: text.tabs.set can shrink a paragraph that holds more than 256 stops
text.tabs.set takes a list of more than 256 stops when every paragraph it
targets already holds at least that many, so a paragraph loaded with more
stops can lose them one at a time (the Tabs panel's Delete Tab). Any
other list of more than 256 stops is still refused, counted as supplied
before stops at one position merge.

Docs: docs/mcp.md.
2026-11-12 00:19:39 -08:00
dotCooCoo 175f51827d Symbols: redefining a dynamic symbol drops paints its new objects do not draw
When a dynamic symbol is redefined or edited, each instance kept every
appearance change whose path still named an object, even when that
object is now one that draws no fill or stroke of its own (an image, a
blend, a mesh) or a symbol instance given a gradient or pattern fill.
symbol.instance.setAppearance refuses such a paint, but the change stayed
on the instance and still counted as a color the document uses.

Fitting the changes to the new art now also clears a fill or stroke the
object at that path does not draw, and drops a change left empty.
2026-11-12 00:18:05 -08:00
BFlat eb608bb8b5 Merge pull request #6813 from dotCooCoo/feat/brush-place-art
Brushes: drag a brush onto the canvas to place a copy of its art
2026-11-12 15:14:18 +07:00
BFlat edeca27469 Merge pull request #6785 from dotCooCoo/fix/read-roots-save-export-results
MCP: save, export and package replies leave out paths outside a confined client's read roots
2026-11-12 15:14:09 +07:00