dotCooCoo
0083587131
Threaded text: Convert To Point Type on a frame no longer duplicates its text
...
Converting a frame of threaded text to point type left the frame's
text in the point type, and the re-flow also added that text to the
story, as it does for a frame that was deleted. The other frames then
held it a second time.
A frame that is still in the document as point type now leaves its
thread with the text it holds. The story flows through the other
frames without that text, so each character is held once. A thread
left with one frame is no longer a thread, and undo restores the
thread.
Docs: docs/mcp.md, docs/target-app-parity.md.
2026-10-24 02:05:18 +07:00
Marco Arnulfo
777930fcd2
Panels: a double-click on the strip of a group beside another does nothing
...
Such a group can't collapse, so the strip queued window.panel.collapse only for the command to refuse it and leave an error in the status bar.
2026-10-24 02:05:18 +07:00
Marco Arnulfo
0666e8e978
Panels: a double-click on the tab strip right of the tabs collapses the group ( fixes #3620 )
2026-10-24 02:05:18 +07:00
Marco Arnulfo
35104e10ed
Panels: a double-click on a tab of a group beside another no longer reports an error
2026-10-24 02:05:18 +07:00
Marco Arnulfo
78396465a5
Type: a Ctrl/Cmd click away from the type being edited ends its edit ( fixes #3779 )
2026-10-24 02:05:18 +07:00
MarekSpodBiedry
df2a350c41
Bring the window forward when Finder opens a file ( #3769 )
2026-10-24 02:05:18 +07:00
BFlat
6b27afd8eb
Merge pull request #3776 from Silvertree2010/fix/3581-audit-rendering-nested-blending
...
Bound offscreen pixels kept alive by nested blending groups
2026-10-24 02:02:54 +07:00
BFlat
5dfa070f71
Merge pull request #3777 from Silvertree2010/fix/3580-audit-rendering-each-opacity-mas
...
Render opacity masks over the masked object's bounds
2026-10-24 02:02:37 +07:00
BFlat
bd09003700
Merge pull request #3801 from Silvertree2010/fix/3574-audit-native-format-image-entrie
...
Share native-format entries naming the same bytes; cap copies at data
2026-10-24 02:02:18 +07:00
BFlat
16eb0e9c9a
Merge pull request #3806 from Silvertree2010/fix/3570-audit-pdf-import-page-hash-decod
...
Hash PDF page contents without caching a decoded copy per page
2026-10-24 02:02:02 +07:00
BFlat
a055646d7b
Merge pull request #3800 from Silvertree2010/fix/3571-audit-dxf-import-anonymous-block
...
Cap path elements in DXF import across the whole file
2026-10-24 02:01:45 +07:00
BFlat
5d899aebfd
Merge pull request #3794 from Silvertree2010/fix/3572-audit-dxf-import-nested-inserts
...
Bound DXF import work for nested inserts that produce no nodes
2026-10-24 02:01:28 +07:00
BFlat
54407b8139
Merge pull request #3789 from Silvertree2010/fix/3573-audit-dxf-import-each-minsert-re
...
Cap the total array insert copies in a DXF import
2026-10-24 02:01:12 +07:00
BFlat
124b50c667
Merge pull request #3754 from Silvertree2010/fix/3595-audit-dxf-import-paper-layouts-a
...
Fix quadratic paper layout de-duplication in DXF import
2026-10-24 02:00:53 +07:00
BFlat
2c0e11ceba
Merge pull request #3822 from Silvertree2010/fix/3593-audit-eps-import-gstate-currentg
...
Charge gstate and currentgstate path copies to the memory budget
2026-10-24 02:00:40 +07:00
BFlat
00d7e6ca91
Merge pull request #3821 from Silvertree2010/fix/3568-audit-eps-import-image-sample-pl
...
Charge and bound EPS image sample planes on import
2026-10-24 02:00:25 +07:00
BFlat
05adda98ee
Merge pull request #3810 from Silvertree2010/fix/3567-audit-eps-import-postscript-filt
...
Charge PostScript filter output to the EPS interpreter budget
2026-10-24 02:00:08 +07:00
BFlat
a3a12f2ce7
Merge pull request #3816 from Silvertree2010/fix/3582-audit-eps-import-postscript-sear
...
Fix quadratic PostScript search in the EPS importer
2026-10-24 01:59:47 +07:00
BFlat
6f3269149d
Merge pull request #3858 from Silvertree2010/fix/h1827-ascii85-encoder-can-start-its-fi
...
Keep ASCII85 output from starting its first line with '%'
2026-10-24 01:59:36 +07:00
BFlat
e1da78fa75
Merge pull request #3771 from Silvertree2010/fix/3585-audit-eps-import-nan-reaches-f64
...
Raise undefinedresult for non-finite EPS arithmetic instead of panicking
2026-10-24 01:59:20 +07:00
BFlat
d5f1557e98
Merge pull request #3847 from Taha-Mahmoodi/fix/pdf-security-message-i18n
...
i18n: every catalog translates "PDF security settings are not an object"
2026-10-24 01:59:02 +07:00
bflatastic
e2713842c4
Bound offscreen pixels kept alive by nested blending groups
...
Squashed from #3776 onto main.
2026-10-24 01:44:01 +07:00
NetterSilver and Claude Opus 5.5
4331eba12e
Render opacity masks over the masked object's bounds
...
Fixes #3580
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-24 01:44:00 +07:00
NetterSilver and Claude Opus 5.5
22057c973e
Share native-format entries naming the same bytes; cap copies at data
...
Fixes #3574
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-24 01:44:00 +07:00
NetterSilver and Claude Haiku 5.5
58d94f6122
Hash PDF page contents without caching a decoded copy per page
...
Fixes #3570
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 01:43:59 +07:00
bflatastic
07762956d2
Cap path elements in DXF import across the whole file
...
Squashed from #3800 onto main.
2026-10-24 01:43:58 +07:00
NetterSilver and Claude Haiku 5.5
609132987b
Bound DXF import work for nested inserts that produce no nodes
...
Fixes #3572
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 01:43:58 +07:00
bflatastic
5455e9be07
Cap the total array insert copies in a DXF import
...
Squashed from #3789 onto main.
2026-10-24 01:43:57 +07:00
NetterSilver and Claude Haiku 5.5
23bc1c0027
Fix quadratic paper layout de-duplication in DXF import
...
Fixes #3595
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 01:43:56 +07:00
bflatastic
fd7c2eb977
Charge gstate and currentgstate path copies to the memory budget
...
Squashed from #3822 onto main.
2026-10-24 01:43:56 +07:00
bflatastic
246750c147
Charge and bound EPS image sample planes on import
...
Squashed from #3821 onto main.
2026-10-24 01:43:55 +07:00
NetterSilver and Claude Haiku 5.5
0b6097e572
Charge PostScript filter output to the EPS interpreter budget
...
Fixes #3567
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 01:43:54 +07:00
NetterSilver and Claude Haiku 5.5
3867e87036
Fix quadratic PostScript search in the EPS importer
...
Fixes #3582
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 01:43:54 +07:00
NetterSilver and Claude Haiku 5.5
abe277462b
Keep ASCII85 output from starting its first line with '%'
...
Found while testing crates/eps/src/ps.rs:190-197 (ascii85)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 01:43:53 +07:00
NetterSilver and Claude Opus 5.5
b3df3d2069
Raise undefinedresult for non-finite EPS arithmetic instead of panicking
...
Fixes #3585
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-24 01:43:52 +07:00
Taha-Mahmoodi
b9819ebd89
i18n: every catalog translates "PDF security settings are not an object"
...
#3836 added the message without @msg rows, so
complete_languages_translate_every_message fails on main (cs first, then
every language in COMPLETE_MESSAGES). Each row follows the catalog's own
"PDF settings are not an object" row and its word for Security.
2026-10-24 01:43:51 +07:00
aiongg
6757720bba
Packaging: pin the signing client and appimagetool, and check their hashes ( #3268 )
...
* Packaging: pin the Windows signing client and check its hash
* Packaging: pin appimagetool and check its hash
* Packaging: pin the AppImage runtime, and stop clearly without a pinned hash
appimagetool otherwise embeds the unpinned type2-runtime continuous build. An
architecture with no pinned tool or runtime now exits with a message instead of
failing the hash check on an empty hash.
2026-10-23 14:06:11 -04:00
Dylan M. Taylor
c6e6c23b99
packaging: use [[ for bash conditional tests (SonarCloud S7688) ( #3853 )
...
SonarCloud flags every bare [ conditional in bash scripts under packaging/ as a reliability smell (rule S7688). Convert the flagged [ ... ] tests to [[ ... ]]: safer word-splitting and no glob surprises, same semantics for these string and file tests.
2026-10-23 13:21:42 -04:00
125df6d8ec
G9: Preserve supplied passwords when confirming the Save PDF dialog ( #3836 )
...
Co-authored-by: Dylan M. Taylor <277927+dylanmtaylor@users.noreply.github.com >
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-10-23 10:15:23 -04:00
BFlat
4a7cba0dd3
Merge pull request #3763 from Silvertree2010/fix/3588-audit-dxf-import-degenerate-spli
...
Stop tiny DXF spline weights from splitting every span to the cap
2026-10-23 12:00:01 +07:00
NetterSilver and Claude Opus 5.5
fb53e53eaf
Stop tiny DXF spline weights from splitting every span to the cap
...
Fixes #3588
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-23 11:59:46 +07:00
BFlat
8906073438
Merge pull request #3762 from Silvertree2010/fix/3590-audit-dxf-import-hatch-source-ha
...
Stop DXF hatch source-handle loop at first missing handle
2026-10-23 11:50:04 +07:00
NetterSilver and Claude Haiku 5.5
77d1f8901f
Stop DXF hatch source-handle loop at first missing handle
...
Fixes #3590
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-23 11:38:06 +07:00
BFlat
4c656c585c
Merge pull request #3761 from dotCooCoo/feat/linux-pen-pressure
...
Linux: a tablet pen's pressure reaches the tools under X11 and XWayland
2026-10-23 11:31:32 +07:00
dotCooCoo
44b1310f49
Linux: a tablet pen's pressure reaches the tools under X11 and XWayland
...
On Linux under X11, and under XWayland, winit 0.30 hands a drawing
tablet's pen to the window as a mouse without its pressure. Every pen
stroke reached the tools at full pressure: a Calligraphic brush with
Size on Pressure drew one width, and the Liquify tools' Use Pressure
Pen applied full intensity.
When the window is on X11, the desktop app now reads XInput2 raw
events on a second X connection (x11rb's RustConnection, without
unsafe). A device with an "Abs Pressure" valuator is a pen, unless
its XInput type is TOUCHPAD or TOUCHSCREEN. Its pressure, scaled from
the valuator's range to 0..1, goes into Services::stylus, and another
pointer moving clears it. The canvas uses that pressure when a frame
has no touch force. A press takes the highest pressure of the pen's
latest touch since the canvas last read the feed, and waits up to
5 ms for the touch of a hovering pen. The moves and the release of a
held press keep the pressure the pen last touched with when its lift
has already arrived. Native Wayland is unchanged.
The valuator mapping and the reader come from PhotoCraft's tablet
crate (storytold/photocraft#255 ), with the pressure axis only.
Docs: README.md, docs/development.md, docs/hardware-parity.md,
docs/target-app-parity.md.
2026-10-23 11:31:17 +07:00
BFlat
0dbb67c1ff
Merge pull request #3760 from Silvertree2010/fix/3589-audit-dxf-import-symbol-name-uni
...
Make DXF import symbol-name uniquing linear
2026-10-23 11:20:42 +07:00
NetterSilver and Claude Haiku 5.5
b16f44d87f
Make DXF import symbol-name uniquing linear
...
Fixes #3589
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-23 11:20:15 +07:00
BFlat
6e1db2acd7
Merge pull request #3757 from Silvertree2010/fix/3591-audit-live-pathfinder-effects-ha
...
Cap the input of live Pathfinder effects
2026-10-23 11:08:22 +07:00
bflatastic
c27ff0d96b
Live Pathfinder budget: allow the manual lowest-bit form clippy flags, for rust-version 1.95
2026-10-23 11:08:06 +07:00
bflatastic
d50afbcc1d
Live Pathfinder budget: lowest set bit without the unstable isolate_lowest_one (rust-version 1.95)
2026-10-23 11:08:06 +07:00