Commit Graph
7353 Commits
Author SHA1 Message Date
BFlat 09a143bf0b Merge pull request #5094 from dotCooCoo/feat/char-style-options-advanced
Character Styles: Style Options sets scale, baseline shift, rotation and language
2026-11-02 12:31:02 +07:00
BFlat 42473c9aeb Merge pull request #5098 from dotCooCoo/feat/opentype-panel-position
OpenType: the panel's Position menu sets superscript, subscript, numerator or denominator glyphs
2026-11-02 12:30:46 +07:00
BFlat b1ff0dc237 Merge pull request #5101 from dotCooCoo/fix/kerning-optical-clears-manual
Type: choosing Optical kerning clears manual pair values, as Auto does
2026-11-02 12:30:29 +07:00
BFlat 15d88941f1 Merge pull request #5105 from dotCooCoo/fix/jp2-display-resolution-first
File formats: JPEG 2000 prefers the display resolution box over the capture box in either order
2026-11-02 12:30:18 +07:00
BFlat 780926bfac Merge pull request #5104 from dotCooCoo/fix/opacity-mask-editable-ids
Transparency: makeOpacityMask refuses objects in ids that cannot be edited
2026-11-02 12:30:05 +07:00
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
dotCooCoo 10235563ae Character Style Options: the dialog test sets Vertical Scale and checks it on the style and its text 2026-11-02 12:04:17 +07:00
dotCooCoo 94a6917c68 Character Styles: Advanced Character Formats takes scales and baseline shift up to the document limit
Horizontal Scale and Vertical Scale accept any number above 0 and at most 4000000 %, and Baseline Shift accepts -4000000 to 4000000 pt, the limits the document model keeps a character style in. Character Rotation is stored from -180 to 180 degrees, as text.setFormat stores it. A scale outside its limit shows the new message "{label} must be a number above 0 and at most {max}", translated in every catalog that has Basic Character Formats.
2026-11-02 12:04:17 +07:00
dotCooCoo 7a527fce64 Character Styles: New Character Style keeps a language tag the selected text holds
charStyle.new now validates attrs against the target text's attributes, so a
language tag that is not in the list but that the selected run already holds
(a native file can store any tag) is kept. Any other unlisted tag is still an
error.
2026-11-02 12:04:16 +07:00
dotCooCoo 6e7945773e Character Styles: Style Options sets Advanced Character Formats
Character Style Options and New Character Style get an Advanced
Character Formats section with Horizontal Scale, Vertical Scale,
Baseline Shift, Character Rotation and Language. Empty fields stay
unset, an explicit 100%, 0 degrees or English: USA stays distinct from
unset, and Reset Panel on the section clears only these five. Scales
take 1% to 10000% and baseline shift -1296 pt to 1296 pt, as
text.setRangeStyle does; rotation is stored from -180 to 180 degrees.
Language sets the language the characters are shaped in; hyphenation
and spelling do not change.

A field still as it opened keeps its stored value without the range
check, so a style captured from a scaled type object can be renamed.
The same applies to Basic's Size and Leading minimum.

charStyle.edit keeps a language tag that is not in the list when the
style already has it, so a style read from a file with such a tag can
be edited.
2026-11-02 12:04:16 +07:00
dotCooCoo 3cb252198a OpenType: the panel's Position menu sets superscript, subscript, numerator or denominator glyphs
The OpenType panel gets a Position menu after Figure, with Default
Position, Superscript, Subscript, Numerator and Denominator. `numr` and
`dnom` join the extra features (the existing bits keep their indices),
so they round-trip through the stored tags and reach the shaper.

text.setStyle and text.setRangeStyle take `featureChanges`, which turns
features on or off on top of each character's own features in one
command and keeps every tag the list does not name. The Figure menu,
the Position menu and the checkboxes send it, so on a selection whose
characters have different features each character keeps its other
features. Reset OpenType Features still sends `features`.

Catalog rows for Position:, Default Position, Numerator and
Denominator; one line each in docs/type-parity.md and
docs/target-app-parity.md.
2026-11-02 12:04:15 +07:00
dotCooCoo a6c64e2cf2 Type: choosing Optical kerning clears manual pair values, as Auto does 2026-11-02 12:04:15 +07:00
dotCooCoo d8d0602c64 File formats: JPEG 2000 prefers the display resolution box over the capture box in either order 2026-11-02 12:04:14 +07:00
dotCooCoo 3dad9dbbfc Transparency: makeOpacityMask refuses objects in ids that cannot be edited
A layer among the targets already stood only for its art that can be
edited. An object named in ids is now checked the same way: a hidden or
locked object, or one on a locked artboard, is refused with an error
instead of becoming the mask, being masked or getting an empty mask.
2026-11-02 12:04:14 +07:00
dotCooCoo 6788b9f85d Brushes: test Original in the corner tile menus of Pattern Brush Options 2026-11-02 12:04:13 +07:00
dotCooCoo 6045f100cd Brushes: Pattern Brush Options keeps Original after a swatch is chosen 2026-11-02 12:04:13 +07:00
dotCooCoo 8a5ea9488e Gradient mesh: test Create Gradient Mesh at a point inside one of two selected objects 2026-11-02 12:04:12 +07:00