aiongg
75744dd67d
Apply review fixes
...
- crates/engine/src/tools/drag.rs
2026-11-05 04:02:42 +00:00
aiongg
a52b2d348f
Merge main into connector-glue-in-groups
2026-11-05 03:45:22 +00:00
Zach Berry and Claude Opus 5.5
ede154d6be
Outlines leave footer, date and slide-number placeholders out: export, RTF and the outline view
...
An agent run exporting a deck as an outline got the footer text and the
slide-number field (‹#›) as body lines under each title. PowerPoint's
outline view shows title and body placeholders only, so the text outline,
the RTF outline (Save As ▸ Outline/RTF) and the outline view now skip the
footer-row placeholders as they already skipped the title. Split out of the
frame export PR at review, which asked for all three together.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-04 20:07:59 -06:00
Zach Berry and Claude Opus 5.5
af9f522c6a
shape.connect glues to a shape inside a group, and the connector follows the group
...
An agent run found that connecting to a grouped shape answered ok but left
the connector's end unset: the sites of a group member were computed in the
group's child space, and rerouting only looked at the slide's top-level
shapes, so the glue was dropped at once. Both now locate the shape anywhere
in the tree with the affine onto the slide, as PowerPoint glues to grouped
shapes. shape.sites answers in the same slide space. A line inside a group is
refused as `id`: its ends would land in the group's space, and rerouting
does not follow grouped connectors.
Split out of the connector default sites PR at review.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-04 19:48:16 -06:00
.CooCoo
85de6ca5d7
Shape Fill: the gradient help says which kinds rotateWithShape keeps upright ( #1843 )
...
With rotateWithShape false, the renderer lays linear and radial gradients
out upright on the slide, while rectangular and path gradients still turn
with the shape. The shape.fill params doc now says so.
2026-11-04 18:11:29 -05:00
Harrison Booth
fc18a78e65
comment: reject malformed navigation indices ( #1547 )
2026-11-04 18:09:50 -05:00
Dylan M. Taylor
f5511d93b6
Compare: index slide, shape and media lookups and compare each picture pair once ( #1752 )
...
* engine: index review.compare lookups and compare each picture pair once
* engine: keep the compare test's inserted slides empty
2026-11-03 20:12:03 -05:00
Dylan M. Taylor
c6b7de43bc
engine: use sets for slide-range expansion, added slide selection and repeated-word offsets ( #1756 )
2026-11-03 20:05:53 -05:00
Dylan M. Taylor
0233d29064
Spelling: bound a word's language and index results by offset ( #1767 )
...
* engine: bound a word's language and index spelling results by offset
* engine: pass the test run's text by value
2026-11-03 19:59:51 -05:00
Dylan M. Taylor
0107186cee
Engine: check the temporary file's path against the write root ( #1792 )
2026-11-03 19:46:09 -05:00
Dylan M. Taylor
54e24ab868
Review: replace each whole word in one pass ( #1793 )
2026-11-03 19:36:05 -05:00
Brandon Thomas and Claude Opus 5.5
aa13eeb45e
Integration: community PR wave 10 (one bodyPr attribute chain, reuse imports, doc headers folded)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-03 08:54:48 -05:00
Brandon Thomas
50e02490b3
Merge pull request #1720
...
# Conflicts:
# crates/engine/src/cmd/reuse.rs
2026-11-03 08:53:01 -05:00
Brandon Thomas
928aa9cc16
Merge pull request #1713
...
# Conflicts:
# crates/pptx/tests/it/roundtrip.rs
2026-11-03 08:53:00 -05:00
Brandon Thomas
ef55104799
Merge pull request #1719
2026-11-03 08:52:49 -05:00
Brandon Thomas
3f29dccc0a
Merge pull request #1717
2026-11-03 08:52:49 -05:00
Brandon Thomas
160c923caf
Merge pull request #1716
2026-11-03 08:52:49 -05:00
Brandon Thomas
9f01f2ebdb
Merge pull request #1707
2026-11-03 08:52:49 -05:00
Brandon Thomas
9f68e8e2cc
Reuse: a non-finite size ratio leaves content unscaled; cell text scaling tested; doc history kept
2026-11-03 08:52:48 -05:00
Brandon Thomas
a6e2b64875
Reuse: a remapped table style's own XML carries its new id; checklist row name kept
2026-11-03 08:51:44 -05:00
Harrison Booth
b61c5f11bd
D716: preserve reflection transforms on save
2026-11-02 22:45:51 -06:00
Harrison Booth
bf60dbb773
Fit reused slide content to destination size
2026-11-02 22:41:55 -06:00
Harrison Booth
1e5b78de37
D702: prune deleted slides from custom shows
2026-11-02 22:32:41 -06:00
Harrison Booth
73bd231589
D709: remove dangling animations from merged shapes
2026-11-02 22:32:19 -06:00
Harrison Booth
63531e2a6a
Merge remote-tracking branch 'origin/main' into dc-build-d705
...
# Conflicts:
# ROADMAP.md
# docs/parity-checklist.md
2026-11-02 22:21:16 -06:00
Harrison Booth
6cdbee50a3
Reuse custom table styles with slides
2026-11-02 22:20:52 -06:00
Brandon Thomas
4eb9098a7c
Merge pull request #1588
...
Preserve bullet sizes authored in points
2026-11-02 23:07:47 -05:00
Brandon Thomas
df4bb8b84a
Merge pull request #1698
...
Reject png/jpeg targets in file.save instead of writing zip bytes
# Conflicts:
# crates/engine/src/tests.rs
2026-11-02 23:07:47 -05:00
Brandon Thomas
f66bed88ac
Merge pull request #1686
...
Use a short temp file name in write_file for long file names
2026-11-02 23:07:46 -05:00
Brandon Thomas
ee64e93c4a
Merge pull request #1682
...
Reject invalid master and layout indices in view.slideMaster
2026-11-02 23:07:45 -05:00
Brandon Thomas and Claude Opus 5.5
fb3b857f53
file.save: an explicit jpg format is refused too
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-02 23:07:29 -05:00
Brandon Thomas and Claude Opus 5.5
ba3b57c756
file.export: a perPage that isn't a count is refused, not read as 6
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-02 23:07:24 -05:00
Harrison Booth
0f5364ee9f
picture: use displayed group size for compression
2026-11-02 22:05:35 -06:00
Harrison Booth
bb417bf98a
Preserve Thai distributed paragraph alignment
2026-11-02 21:53:40 -06:00
NetterSilver and Claude Haiku 5.5
58c24883c7
Reject png/jpeg targets in file.save instead of writing zip bytes
...
Found while testing crates/engine/src/cmd/file.rs:489 (save, with save_bytes at :341-349 and format_for_path at :440)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-11-03 01:14:15 +01:00
Harrison Booth
a200b92258
Merge remote-tracking branch 'origin/main' into dc-build-d712
...
# Conflicts:
# crates/model/src/text.rs
# crates/pptx/src/read/dml.rs
# crates/pptx/src/write/dml.rs
# crates/pptx/tests/it/roundtrip.rs
2026-11-02 15:45:48 -06:00
NetterSilver and Claude Haiku 5.5
77cd617596
Use a short temp file name in write_file for long file names
...
Found while testing crates/engine/src/io.rs:49
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-11-02 13:37:19 +01:00
NetterSilver and Claude Haiku 5.5
72ac32715f
Reject invalid master and layout indices in view.slideMaster
...
Found while testing crates/engine/src/cmd/design/master_view.rs:8 (master_view; `master` read via usize_param, `layout` at :14)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-11-02 12:21:37 +01:00
NetterSilver and Claude Haiku 5.5
4bed9b6c37
Reject unsupported handout perPage values in file.export
...
Found while testing crates/engine/src/cmd/file.rs:362 (pdf_options) with crates/pdf/src/lib.rs:364-371 (handout_boxes)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-11-02 11:50:54 +01:00
Brandon Thomas
d4d99c7627
Merge pull request #1628
...
Keep combining marks inside spell-check words
2026-11-02 04:53:49 -05:00
Brandon Thomas and Claude Opus 5.5
ffd77c7db0
Spell check: a mark on trailing punctuation is trimmed with it
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-02 04:53:47 -05:00
Brandon Thomas
bcc4fc97e6
Merge pull request #1558
...
Allow resizing on all selected shapes (#1539 )
2026-11-02 04:51:19 -05:00
Brandon Thomas
f4fcac9f2d
Merge pull request #1623
...
Let clicks pass through empty No Fill shapes
2026-11-02 04:51:18 -05:00
Brandon Thomas
babc950f81
Merge pull request #1601
...
Reject invalid slide index in design.background
2026-11-02 04:51:17 -05:00
Brandon Thomas
468394b3c8
Merge pull request #1600
...
Shape Fill: the gradient help lists every kind and key the command takes
2026-11-02 04:51:17 -05:00
Brandon Thomas and Claude Opus 5.5
01220df579
design.background: check the index before a picture is added to the media
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-02 04:51:01 -05:00
FredApps and FredApps
90058395b7
WASM: open presenter view in a separate browser window ( #729 ) ( #730 )
...
* docs: track WASM presenter popout work (#729 )
* Fix presenter transport retries and initialize popup note fonts
* Clarify optional font coverage and source-verified popup lifecycle
---------
Co-authored-by: FredApps <FredApps@users.noreply.github.com >
2026-11-01 21:36:45 +01:00
Elliot Graham
7f742c9d4f
FIX-1621: cover locked and outline-free No Fill shapes
2026-11-01 09:29:42 +00:00
NetterSilver and Claude Haiku 5.5
87a10fc8e2
Keep combining marks inside spell-check words
...
Found while testing crates/engine/src/spell.rs:693 (paragraph_words, the `inside` closure)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-11-01 00:19:15 +01:00
Elliot Graham
cd19752bb5
FIX-1621: let no-fill interiors pass clicks to underlying objects
2026-10-31 19:38:08 +00:00