585 Commits
Author SHA1 Message Date
Brandon ThomasandClaude Opus 5.5 e862e0a613 fix: integrate batched community PRs (#572 with #662's fallible spread_param; #524's test helper back in its module)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:28:50 -04:00
Brandon Thomas 777d8c3251 Merge branch 'pr/572' into batch1
# Conflicts:
#	crates/tools/src/tests.rs
#	crates/ui-egui/src/i18n.rs
#	crates/ui-egui/src/i18n/ar.rs
#	crates/ui-egui/src/i18n/it.rs
#	crates/ui-egui/src/i18n/ja.rs
#	crates/ui-egui/src/i18n/pt_br.rs
#	crates/ui-egui/src/i18n/uk.rs
2026-10-13 02:24:24 -04:00
Brandon Thomas d1452a3e3f Merge branch 'pr/524' into batch1
# Conflicts:
#	crates/ui-egui/src/panels/properties.rs
2026-10-13 02:23:58 -04:00
Brandon Thomas 99c229486d Merge branch 'pr/575' into batch1
# Conflicts:
#	crates/ui-egui/src/i18n.rs
#	crates/ui-egui/src/i18n/ar.rs
#	crates/ui-egui/src/i18n/it.rs
#	crates/ui-egui/src/i18n/ja.rs
#	crates/ui-egui/src/i18n/pt_br.rs
#	crates/ui-egui/src/i18n/uk.rs
2026-10-13 02:23:57 -04:00
Brandon Thomas 89e9abbc8d Merge branch 'pr/662' into batch1
# Conflicts:
#	crates/engine/src/cmd/object.rs
2026-10-13 02:23:56 -04:00
Brandon Thomas a390905beb Merge branch 'pr/647' into batch1
# Conflicts:
#	crates/tools/src/lib.rs
#	crates/tools/src/tests.rs
#	crates/ui-egui/src/canvas.rs
2026-10-13 02:23:33 -04:00
Brandon Thomas bd9974a420 Merge branch 'pr/552' into batch1 2026-10-13 02:23:12 -04:00
Brandon Thomas ea8dc959d1 Merge branch 'pr/573' into batch1 2026-10-13 02:23:12 -04:00
Brandon Thomas 41ce560ce3 Merge branch 'pr/541' into batch1 2026-10-13 02:23:12 -04:00
Brandon Thomas 0a14d9fb97 Merge branch 'pr/539' into batch1 2026-10-13 02:23:12 -04:00
Brandon Thomas 2103af784a Merge branch 'pr/537' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas 055da9f788 Merge branch 'pr/536' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas 160ae04b8b Merge branch 'pr/527' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas d5613411ca Merge branch 'pr/522' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas d6d26d2b38 Merge branch 'pr/519' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas 1f6ceea657 Merge branch 'pr/634' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas eddf681df1 Merge branch 'pr/677' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas 6e551af3e7 Merge branch 'pr/663' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas b758c6180a Merge branch 'pr/649' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas 9bd099c0ae Merge branch 'pr/639' into batch1 2026-10-13 02:23:11 -04:00
Brandon Thomas bff290c9bd Merge branch 'pr/607' into batch1 2026-10-13 02:23:11 -04:00
Brandon ThomasandClaude Opus 5.5 b70b586a16 fix(path-type): NaN-safe bracket clamping (f64::clamp panics on a NaN path length)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:22:34 -04:00
Brandon Thomas 878169130e Merge branch 'pr/600' into batch1 2026-10-13 02:21:53 -04:00
Brandon Thomas 8a36af3af8 Merge branch 'pr/630' into batch1 2026-10-13 02:21:53 -04:00
Brandon Thomas a0330b03a0 Merge branch 'pr/585' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas b095274498 Merge branch 'pr/680' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas 528f5138df Merge branch 'pr/678' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas eb855a1964 Merge branch 'pr/672' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas fc0a304750 Merge branch 'pr/671' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas aae8ff2138 Merge branch 'pr/670' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas f95d58c726 Merge branch 'pr/669' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas 392a5c7ab7 Merge branch 'pr/668' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas 8255d58c2e Merge branch 'pr/667' into batch1 2026-10-13 02:21:39 -04:00
Brandon Thomas e009a43d10 Merge branch 'pr/666' into batch1 2026-10-13 02:21:39 -04:00
sanyamsingh001andCodex 481b7d2f3b PARITY-EFFECTIVE-PPI: check transformed image resolution
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 13:17:58 +10:00
sanyamsingh001andCodex fa9c7b08b2 PARITY-DISTRIBUTE-LOCKS: preserve locked objects during distribution
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 12:43:50 +10:00
Marco Arnulfo 966b637796 fix(ui): open the dock's panel menu from its three-line button (part of #676) 2026-10-13 04:27:41 +02:00
sanyamsingh001andCodex 5ca6a474b9 PARITY-TABLE-SPLIT: split each original selected cell once
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:59:32 +10:00
sanyamsingh001andCodex 8f48869e58 PARITY-IDML-INDEX: retain index reference source sort keys
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:56:09 +10:00
sanyamsingh001andCodex b3ec8dc908 PARITY-EPUB-STYLE: match CSS to exported style mappings
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:53:54 +10:00
sanyamsingh001andCodex e507b98601 PARITY-TAB-LEADERS: draw right-indent tab leaders
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:51:50 +10:00
sanyamsingh001andCodex b4db428608 PARITY-ARRANGE: step past same-layer siblings in Arrange
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:48:56 +10:00
sanyamsingh001andCodex f7adb11cdc PARITY-CHARACTER-STYLE: capture selected character formatting
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:46:10 +10:00
sanyamsingh001andCodex 7abcbc745f PARITY-DATA-SOURCE: honor quoted delimiters and record boundaries
Co-Authored-By: Codex <codex@openai.com>
2026-10-13 10:44:20 +10:00
Jason Brashear 91263c912f fix(textimport): preserve leading empty Tagged Text paragraphs
Preserve paragraph breaks after a ParaStyle tag starts the story so leading empty paragraphs and their styles survive Tagged Text import.

Validated individually and after #638 with all six cargo xtask ci gates (1,278 tests passed, four existing tests ignored, 15 WASM compilation checks), six independent paragraph/header/Unicode probes, and an actual export-to-placement command smoke test.

Refs #641
2026-10-12 17:21:52 -06:00
Jason Brashear cc5b4a1f0f fix(color): mirror gradient midpoints when reversing
Move and mirror segment midpoints when reversing gradient stops so reversed gradients preserve color and opacity interpolation.

Validated locally on macOS with all six cargo xtask ci gates (1,277 tests passed, four existing tests ignored, 15 WASM compilation checks), plus independent regressions, undo/redo, native and IDML round trips, and PNG/PDF rendering.

Refs #638
2026-10-12 17:20:54 -06:00
Marco Arnulfo 9e15d5a17e fix(cli): accept a UTF-8 BOM in scripts and document the syntax in script --help (fixes #654) 2026-10-13 00:41:46 +02:00
Marco Arnulfo 3d59dd5d97 fix(cmd): reject unknown spread values instead of falling back to page 1 (part of #651) 2026-10-13 00:38:54 +02:00
Marco Arnulfo fc01666ac2 feat(text): select sentence, paragraph and story on 3, 4 and 5 clicks (fixes #622) 2026-10-12 23:58:11 +02:00
moppeeerandClaude Opus 5.5 f96895f400 feat(text): Edit type on a path along the curve
The Type tool's clicks, drags and double-clicks on type on a path went to
the character at the same spot of the straightened line, and the caret
and highlight were drawn straight. A click now finds the character where
its nearest point along the path is (compose::PathTextMap, from the line
to the path and back, as path_glyphs places the glyphs); the caret stands
across the path there and the highlight bends with the text. A click on
the letters, above the path, hits the frame.

Depends on #636 (PathWarp::nearest).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 23:35:58 +02:00