Commit Graph
7475 Commits
Author SHA1 Message Date
BFlat 28116b90e4 Merge pull request #5097 from dotCooCoo/fix/pattern-brush-original-restores
Brushes: Pattern Brush Options keeps Original after a swatch is chosen
2026-11-02 12:29:48 +07:00
BFlat 87f192a475 Merge pull request #5095 from dotCooCoo/fix/mesh-create-outside
Mesh: Create Gradient Mesh at a point outside the object keeps the path
2026-11-02 12:29:35 +07:00
BFlat e7feddedbc Merge pull request #5087 from dotCooCoo/fix/effect-move-reply
Appearance: effect.move reports the effect's index in the object whose row it names
2026-11-02 12:29:23 +07:00
BFlat 4491eb1c72 Merge pull request #5091 from dotCooCoo/fix/simplify-backdrop-tab
Accessibility: Tab no longer stops on the Simplify and Smooth sliders' backdrop
2026-11-02 12:29:09 +07:00
BFlat 2c00ed0780 Merge pull request #5093 from dotCooCoo/fix/screens-dotless-i
Export for Screens: a folder named with dotless ı is not merged into i
2026-11-02 12:28:54 +07:00
BFlat c9d8b15a4d Merge pull request #5086 from dotCooCoo/fix/ai-os17-vertical
.ai import: vertical type keeps its orientation and Tate-chu-yoko runs
2026-11-02 12:28:37 +07:00
BFlat 59d792186e Merge pull request #5081 from dotCooCoo/feat/objects-on-path-rotate-all
Objects on Path: the Rotate All widget turns every attached object about its attachment point
2026-11-02 12:28:24 +07:00
BFlat ff0de216a7 Merge pull request #5069 from dotCooCoo/fix/ai-os17-area
.ai import: area type keeps its rows, columns, gutters and first baseline
2026-11-02 12:28:07 +07:00
BFlat d2cd4ba218 Merge pull request #5082 from dotCooCoo/fix/ai-os17-wrap
.ai import: area type flows around its text wrap objects
2026-11-02 12:27:55 +07:00
BFlat a2677d9b78 Merge pull request #5051 from dotCooCoo/fix/ai-os6
.ai import: a file whose PDF part can't be read opens from its editing data
2026-11-02 12:27:37 +07:00
BFlat 67b445d4f0 Merge pull request #5084 from dotCooCoo/fix/status-messages-plural-counts-2
i18n: open, save and recovery messages name their counts in the singular or the plural
2026-11-02 12:27:26 +07:00
BFlat b724438757 Merge pull request #5049 from dotCooCoo/feat/pattern-library-geometric
Swatch libraries: Patterns › Geometric Patterns adds a pattern with its swatch
2026-11-02 12:27:08 +07:00
BFlat b322e2d1a5 Merge pull request #5068 from dotCooCoo/feat/actions-duplicate
Actions: the panel menu's Duplicate copies the selected action or set
2026-11-02 12:26:57 +07:00
BFlat 4368d99ee5 Merge pull request #5052 from dotCooCoo/fix/live-paint-bucket-edge-highlight
Live Paint: the Live Paint Bucket highlights an edge thinner than a face
2026-11-02 12:26:41 +07:00
BFlat 9667f5d7ba Merge pull request #5073 from dotCooCoo/fix/doc-place-limits
Place: the Word .doc reader resolves each style once and refuses damaged property tables
2026-11-02 12:26:26 +07:00
BFlat 3fc6115a44 Merge pull request #5077 from dotCooCoo/fix/ai-on-path-checks-first
.ai import: Objects on Path records measure each group once
2026-11-02 12:26:11 +07:00
BFlat e514c43b7b Merge pull request #5076 from dotCooCoo/fix/ai-page-art-moves-patterns
.ai import: page art moved to its artboard takes its pattern tiles along
2026-11-02 12:26:00 +07:00
BFlat f793c98195 Merge pull request #5074 from dotCooCoo/chore/ai-unread-fallback-cases
Docs: list every case where an unread .ai object still sends the file to its page
2026-11-02 12:25:47 +07:00
BFlat 5e10f35d2e Merge pull request #5071 from dotCooCoo/fix/ai-guides-docs
Docs: .ai guides are no longer listed as lost
2026-11-02 12:25:36 +07:00
BFlat fbfe475691 Merge pull request #5142 from dotCooCoo/fix/ai-os10-shape
.ai import: Convert to Shape opens live on paths and type
2026-11-02 12:25:20 +07:00
BFlat fa2e15b740 Merge pull request #5140 from dotCooCoo/fix/ai-os10-stylize
.ai import: Stylize effects open with their saved settings
2026-11-02 12:25:05 +07:00
BFlat f32e891e20 Merge pull request #5141 from dotCooCoo/fix/vars-p10
Variables: Export Data Sets marks visibility and image columns with # and @
2026-11-02 12:24:50 +07:00
BFlat 6a8b976ae2 Merge pull request #5145 from dotCooCoo/fix/vars-noop-import-undo
Variables: an import or library load that changes nothing adds no undo step
2026-11-02 12:24:33 +07:00
BFlat ae1a850e06 Merge pull request #5126 from dotCooCoo/fix/vars-p2
Variables: Update Data Set keeps a row's values when every bound object is locked
2026-11-02 12:24:15 +07:00
BFlat 6ee880bf6a Merge pull request #5130 from dotCooCoo/fix/vars-p3
Variables: a command that changes nothing adds no undo step
2026-11-02 12:23:57 +07:00
BFlat 32760fafa2 Merge pull request #5128 from dotCooCoo/fix/vars-p12
Variables: a CSV header that names one variable twice is refused
2026-11-02 12:23:40 +07:00
BFlat f903867cc9 Merge pull request #5133 from dotCooCoo/fix/vars-p13
Variables: Import Data Sets reports why a cell was refused
2026-11-02 12:23:23 +07:00
BFlat 0dfa17aea4 Merge pull request #5124 from dotCooCoo/fix/vars-p11
Variables: Export Data Sets refuses more data sets or variables than Import Data Sets reads
2026-11-02 12:23:10 +07:00
BFlat cb0922ec21 Merge pull request #5131 from dotCooCoo/fix/vars-p4
Variables: Undo and Redo clear a highlight that names no variable
2026-11-02 12:22:58 +07:00
BFlat a1b4363386 Merge pull request #5129 from dotCooCoo/fix/ai-os22-g15
.ai import: paths keep their notes and Show Center
2026-11-02 12:22:48 +07:00
BFlat bf074ac8e9 Merge pull request #5125 from dotCooCoo/fix/ai-os22-g11
.ai import: legacy type keeps its spacing, hanging punctuation and hyphenation
2026-11-02 12:22:35 +07:00
BFlat 6be807c5d0 Merge pull request #5132 from dotCooCoo/fix/ai-os23-2422
.ai import: a clipping path keeps its stroke
2026-11-02 12:22:19 +07:00
BFlat 5f1c6cb5c3 Merge pull request #5134 from dotCooCoo/fix/ai-os23-3797
Fix #3797: documents open in Preview, and Outline is a setting of each document
2026-11-02 12:22:04 +07:00
BFlat 906f9872d0 Merge pull request #5127 from dotCooCoo/fix/vars-p8
Variables: Edit Data Set keeps an empty text value when OK changes nothing
2026-11-02 12:21:52 +07:00
bflatastic 645757448f .ai import: the layer-end operator gets its own method 2026-11-02 12:04:26 +07:00
dotCooCoo ccc7e44078 .ai import: multi-layer masks open as a clipping group in each layer
Squashed from #5117 onto main.
2026-11-02 12:04:26 +07:00
bflatastic f6e262c92e .ai import: translate the note for a graph whose records don't end 2026-11-02 12:04:25 +07:00
dotCooCoo 69e5eecde0 .ai import: artboard display options, raster effects settings and the header's author come in
Squashed from #5102 onto main.
2026-11-02 12:04:24 +07:00
dotCooCoo 795cbc060d .ai import: graphs open as their drawn art, with a note
A graph in a legacy .ai, or in a current file's editing data, is written
as `%_Gs`, its data and settings on `%_` lines, its drawn art in a group
with a `%_... Go` tag after each object, and `%_GS`. The reader stopped
on the graph operators as ones it doesn't know, so such a file did not
open through its layers.

The reader now leaves the graph's records out with their operands and
reads the drawn art as usual: the bars, lines and labels come in as the
groups, paths and type they are written as. Paint operators on `%_`
lines between `Gt` and `GT` set nothing. One note per file says the
graphs came in as plain art without their data or settings. A graph
that starts inside another, or doesn't end before its layer does, keeps
the art read so far with a second note. Graph operators outside a graph
stay unknown.
2026-11-02 12:04:24 +07:00
dotCooCoo 4f6358ac74 Docs: move the anchor smooth or corner line next to the placed files line 2026-11-02 12:04:23 +07:00
dotCooCoo 13db3cd602 .ai import: anchors are smooth or corners by the case of their segment operators
In editing data and legacy .ai files, a lower-case l, c, v or y makes the
anchor the segment ends on smooth and an upper-case L, C, V or Y makes it a
corner. The reader used to guess each anchor's kind from whether its
handles are in line, so a lower-case l always read as a corner and an
upper-case C with handles in line read as smooth. A closed path's first
anchor takes the case of the segment back to it. Points and handles do not
move. Paths, compound paths, clipping paths, guide paths, area type frames
and type-on-a-path paths all keep the kinds.
2026-11-02 12:04:23 +07:00
bflatastic ae46139b20 Variables: Edit Data Set's rename test undoes the one step it adds 2026-11-02 12:04:22 +07:00
dotCooCoo ab0072a39e Variables: Edit Data Set's Name field renames the data set
Squashed from #5121 onto main.
2026-11-02 12:04:22 +07:00
dotCooCoo 899a4c2bcb Variables: Import Data Sets reads CSV files that are not UTF-8 as Windows-1252
Squashed from #5116 onto main.
2026-11-02 12:04:21 +07:00
dotCooCoo 4dd97bc850 Docs: symbol editing mode keeps every instance in step
Add the progress line for the symbol editing follow-ups next to the Symbol
editing mode entry in docs/target-app-parity.md, with the tests that cover
them.
2026-11-02 12:04:21 +07:00
dotCooCoo 2b7b12df33 Symbols: the edited symbol takes the text wrap its area type gets after a wrap object moves
Symbol editing copies the editing layer's art into the symbol before Text Wrap, list numbering and threaded re-flow update that layer, so moving a wrap object in the edit left the symbol, its other instances and the saved file with the old wrap. The edit now syncs the symbol again after those passes, and when that changes the symbol, inline graphics of it are refreshed and the threads holding them re-flow.
2026-11-02 12:04:20 +07:00
dotCooCoo 294d13d857 Symbols: an instance in an opacity mask follows an edit of its dynamic symbol
The appearance changes of the instances on the layers now follow the edited objects through the same pass as the instances in other symbols, graph designs, pattern tiles and brushes. That pass also reaches instances used as opacity-mask art, which keep their changes on the same objects when an edit reorders them and drop the change to an object the edit deletes.
2026-11-02 12:04:20 +07:00
dotCooCoo 5c678ed52c Symbols: instances in pattern tiles, graph designs and brushes follow an edit of their dynamic symbol 2026-11-02 12:04:20 +07:00
dotCooCoo 52f6adfa3b Symbols: the instance a symbol is edited from is not drawn in the view while it is edited
Entering symbol editing mode from an instance puts a copy of the symbol's art on the editing layer in the instance's place, and the instance stays in the document. The view drew the instance dimmed under the copy, so art with transparency showed darker, and its edges showed a dimmed fringe.

The renderer now leaves that instance out of the screen view while the editing layer is isolated, with its masks and effects, and in Outline view inside a clip group. Exports and thumbnails draw it as before.
2026-11-02 12:04:19 +07:00
dotCooCoo 87dea538ae Symbols: instances inside other symbols' art follow an edit of their dynamic symbol
Editing a dynamic symbol moved each placed instance's appearance changes with the objects they
name, but an instance stored in the art of another symbol kept its changes at the old paths, so
placing that symbol showed a change on the wrong object. Those instances, opacity masks included,
now follow the edit too and keep only the changes to objects the art still has.
2026-11-02 12:04:19 +07:00