aiongg
41f07a3c4e
Merge main into pptx-show-media-controls
2026-11-04 23:51:52 +00:00
Dylan M. Taylor
3c3d504eb1
PPTX: read a notes or comments part for the first slide that names it ( #1741 )
...
* pptx: read a notes or comments part for the first slide that names it
* address review: keep modern-comments precedence for already-owned parts
2026-11-03 20:12:24 -05:00
Dylan M. Taylor
19dceffd0b
pptx: index media, layouts, sections and table styles on export ( #1761 )
2026-11-03 14:38:07 -05:00
Brandon Thomas
907ebd2de0
Merge pull request #1710
...
# Conflicts:
# crates/model/src/resolve.rs
# crates/model/src/table.rs
# crates/model/src/text.rs
# crates/pptx/src/read/dml.rs
# crates/pptx/src/read/shapes.rs
# crates/pptx/src/write/dml.rs
# crates/pptx/src/write/shapes.rs
# crates/pptx/tests/it/roundtrip.rs
2026-11-03 08:53:00 -05:00
Brandon Thomas
ed77cc9eaa
Merge pull request #1711
...
# Conflicts:
# crates/pptx/tests/it/roundtrip.rs
2026-11-03 08:53:00 -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
5cb154ce9d
Merge pull request #1712
...
# Conflicts:
# crates/pptx/tests/it/roundtrip.rs
2026-11-03 08:53:00 -05:00
Brandon Thomas
d365e0b9de
Merge pull request #1751
2026-11-03 08:52:49 -05:00
Brandon Thomas
1d181017f6
Merge pull request #1723
2026-11-03 08:52:49 -05:00
Brandon Thomas
996ca4dd65
Merge pull request #1722
2026-11-03 08:52:49 -05:00
Brandon Thomas
ed62aafbe6
Merge pull request #1709
2026-11-03 08:52:49 -05:00
Brandon Thomas
c7b91ff2ec
PPTX: reflection angles, skews and start position are written inside the schema's ranges
2026-11-03 08:50:28 -05:00
Brandon Thomas
6546136a42
PPTX timing: a sorted click group keeps its click on the effect that now plays first
2026-11-03 08:49:18 -05:00
Brandon Thomas
67c1d78948
PPTX: horzOverflow never reads or writes ellipsis (vertical only in ST_TextHorzOverflowType)
2026-11-03 08:47:09 -05:00
Naseq
751ac26d28
fix(pptx): place effects by their parent time node delays ( fixes #1744 )
2026-11-03 17:57:57 +04:30
Harrison Booth
b61c5f11bd
D716: preserve reflection transforms on save
2026-11-02 22:45:51 -06:00
Harrison Booth
a0956fee13
Preserve alternate run language
2026-11-02 22:42:25 -06:00
Harrison Booth
bb417bf98a
Preserve Thai distributed paragraph alignment
2026-11-02 21:53:40 -06:00
Harrison Booth
d00ef08fae
Preserve normalized character height in PPTX
2026-11-02 21:50:20 -06:00
Harrison Booth
0d06481c34
Preserve compatible line spacing in PPTX
2026-11-02 21:47:50 -06:00
Harrison Booth
44b133a3c9
Preserve text overflow settings in PPTX
2026-11-02 21:45:18 -06:00
Harrison Booth
b66ba2e10a
Preserve centered anchoring on table cells
2026-11-02 21:42:44 -06:00
Zach Berry and Claude Opus 5.5
b9eaaeb23b
Test: hidden media controls are written as PowerPoint's p14 extension
...
The round trip now also checks the written presProps.xml: inside p:showPr, the extension uri and
p14:showMediaCtrls with its namespace declared on the element; the default writes nothing.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-02 17:03:02 -06: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
Naseq
c37b150950
PPTX: parse each tags part once, cap copied tags, and bound cache ( #1164 )
...
- Parse each tags part once per import and cache in `Imp::tags_by_part`
- Cap total copied tags into the model at `MAX_TAG_BYTES` (64 MiB), charging each pair a fixed size_of::<(String, String)>() in addition to text
- Bound the cache: once `tags_capped` is set, return early before parsing or caching any subsequent part
- Tests covering deduplicated part copies, empty-tag pair budgets, and verifying unread tag parts are not parsed or cached after the budget is reached
2026-11-01 11:30:12 +04:30
Brandon Thomas
40728b5362
Merge pull request #1591
...
Preserve gradient flip mode in PPTX
# Conflicts:
# crates/pptx/src/read/dml.rs
# crates/pptx/src/write/dml.rs
# crates/pptx/tests/it/roundtrip.rs
2026-10-31 00:56:34 -04:00
Brandon Thomas and Claude Opus 5.5
04b0958bee
Gradient flip: drop the blank lines before the new flip fields
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-31 00:54:16 -04:00
Brandon Thomas
4a0f48a04c
Merge pull request #1590
...
Preserve inset line alignment in PPTX
# Conflicts:
# crates/model/src/style.rs
# crates/pptx/tests/it/roundtrip.rs
2026-10-31 00:51:48 -04:00
Brandon Thomas
8f6e1b420a
Merge pull request #1589
...
Preserve bullet Follow Text settings
# Conflicts:
# crates/pptx/tests/it/roundtrip.rs
2026-10-31 00:51:37 -04:00
Harrison Booth
0e3f4cd353
Preserve explicit bullets over follow-text resets
2026-10-30 23:20:43 -05:00
Harrison Booth
1de0101ced
Honor miter percentage schema bounds
2026-10-30 23:11:12 -05:00
Harrison Booth
917d4b96a9
Honor bullet size schema bounds and inheritance
2026-10-30 23:07:54 -05:00
Harrison Booth
4408ff6153
Restrict line alignment to schema values
2026-10-30 23:00:20 -05:00
Harrison Booth
ad97533aec
Preserve gradient flip mode in PPTX
2026-10-30 22:57:14 -05:00
Harrison Booth
727b682d17
Preserve inset line alignment in PPTX
2026-10-30 22:48:31 -05:00
Harrison Booth
8770fb90c3
Preserve bullet follow-text resets in PPTX
2026-10-30 22:45:55 -05:00
Harrison Booth
b1900e526d
Preserve point-sized bullets in PPTX
2026-10-30 22:42:28 -05:00
Harrison Booth
479c3cc5ea
Preserve explicit miter limits in PPTX
2026-10-30 22:24:08 -05:00
Zach Berry and Claude Sonnet 5.5
6303166a18
[PP1] show.setup showMediaControls survives a pptx save and reopen
...
PowerPoint stores Show media controls as the p14:showMediaCtrls extension inside
p:showPr (uri {2FDB2607-...}); absent means shown. Write it when hidden, read it back.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-30 15:12:26 -05:00
Brandon Thomas
2153f8ac4d
Merge pull request #1467
...
Animations: fix Darken and Desaturate preset ids and 14 default durations
2026-10-30 15:48:45 -04:00
Brandon Thomas
42b0e1de8f
Merge pull request #1465
...
pptx: read media volume, mute, loop, hide and full screen from the timing tree (refs #1368 )
# Conflicts:
# crates/pptx/src/read/timing.rs
2026-10-30 15:48:44 -04:00
Brandon Thomas
9749ec992f
Merge pull request #1435
...
fix(pptx): read Auto-reverse from animation behaviour nodes
2026-10-30 15:48:36 -04:00
Brandon Thomas
f08e5f8691
Merge pull request #1384
...
PPTX: a picture in a picture placeholder takes its layout's shape
2026-10-30 15:48:35 -04:00
Dylan M. Taylor
8e4d0e6b4c
Refactor pptx for strict Clippy checks
2026-10-28 06:02:27 +00:00
Harrison Booth
1e842137b0
Animations: Darken and Desaturate use PowerPoint's preset ids and HSL shift, and 14 effects get its default durations
2026-10-27 18:53:24 -05:00
Harrison Booth
964f4759c7
pptx: read volume, mute, loop, hide and full screen for media from the timing tree
2026-10-27 15:28:52 -05:00
Harrison Booth
c5994e16db
fix(pptx): read Auto-reverse from animation behaviour nodes ( #1363 )
...
PowerPoint writes autoRev on p:cBhvr/p:cTn, not the effect node, so Grow/Shrink with auto-reverse grew and held. Color Pulse writes it there as part of the effect and is left out. Tests patch autoRev onto the behaviour node of a saved deck and read it back. Not checked against real PowerPoint: no PowerPoint COM here.
2026-10-26 17:34:28 -05:00
Leonardo and Claude Sonnet 5.5
1705712a41
PPTX: a picture in a picture placeholder takes its layout's shape
...
A layout's round picture placeholder keeps a slide's photo in a circle in
PowerPoint. The reader marked only p:sp placeholders as inheriting their
geometry, so a p:pic placeholder with just a frame in its spPr came out as
a rectangle (with the layout's border). Mark p:pic placeholders too; the
renderer already clips pictures to their geometry.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-25 17:00:05 -03:00
Brandon Thomas
8b2c0f456a
Merge pull request #1294
2026-10-25 13:42:05 -04:00
Dominik Strebel
a8f1573fba
fix(pptx): an object saved as its preview picture keeps the fallback picture's fill
2026-10-24 14:29:30 +02:00