Commit Graph
3932 Commits
Author SHA1 Message Date
ruchirguitar f18fb4e92d PDF import: Indic type that would not draw as the file does keeps the file's glyphs (#5235)
Gujarati text from a PDF came in jumbled even with its fonts installed:

- A glyph with no advance (a vowel sign or anusvara set over its letter)
  was taken for vertical type and opened as an object of its own, which
  type then drew on a dotted circle. In a font the file writes
  horizontally it now stays on its line.
- A line read glyph by glyph is not always the text that was set: the
  file draws a vowel sign before the consonant it follows, and may not
  name a conjunct. A line with characters of U+0900 to U+0DFF is now set
  again and its glyphs compared with the ink the file drew; when they
  differ the line keeps the file's glyphs as outlines, with a note.

Tests: crates/pdf/src/tests/reshaped.rs (two fail without the change).
2026-11-12 20:56:16 +05:30
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
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
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
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
BFlat 1a7aa834db Merge pull request #6786 from dotCooCoo/fix/save-export-show-every-note
Save and Export: the status bar's hover lists every note
2026-11-12 15:13:51 +07:00
BFlat dcab893acd Merge pull request #6791 from dotCooCoo/feat/styles-painted-sketched-library
Graphic Styles: a built-in Painted and Sketched library adds watercolor, charcoal and ink styles
2026-11-12 15:13:39 +07:00
BFlat 0d550c6e6d Merge pull request #6796 from dotCooCoo/feat/patterns-grit-textures
Swatch libraries: Patterns › Grit Textures adds seamless grain, speckle and stipple patterns
2026-11-12 15:13:22 +07:00
BFlat 0ad57dc872 Merge pull request #6811 from dotCooCoo/fix/effect-refresh-deferred-nested
MCP: effect.refreshDeferred takes objects in symbol, pattern, brush and mask art
2026-11-12 15:13:13 +07:00
BFlat c8f31dd8a9 Merge pull request #6804 from dotCooCoo/fix/script-checker-name-escapes
Script checker: names with escaped characters are read as names
2026-11-12 15:13:04 +07:00
BFlat ba2aefb5dd Merge pull request #6815 from dotCooCoo/feat/para-style-options-tabs
Paragraph Styles: Style Options edits a style's tab stops
2026-11-12 15:12:55 +07:00
dotCooCoo 2c9f5a6a11 HP-GL export: an HP-GL plot past 16-bit coordinates gets a warning
Coordinates outside -32,768 to 32,767 plotter units (about 82 cm from the origin) are written as they are, with a warning that older devices may not read them. HP-GL/2 plots are not checked against this range.
2026-11-12 00:12:54 -08:00