Commit Graph
1393 Commits
Author SHA1 Message Date
Brandon Thomas d85e397be4 Merge pull request #1291
# Conflicts:
#	crates/engine/src/tests.rs
2026-10-25 13:42:45 -04:00
Brandon Thomas 0e78adc675 Merge pull request #1259
# Conflicts:
#	crates/engine/src/cmd/richclip.rs
2026-10-25 13:42:29 -04:00
Brandon Thomas 556048436e Merge pull request #1221 2026-10-25 13:42:06 -04:00
Brandon Thomas 637bbcdf51 Merge pull request #1118 2026-10-25 13:42:06 -04:00
Brandon Thomas b6c1fe628c Merge pull request #1109 2026-10-25 13:42:06 -04:00
Brandon Thomas ad664b2cdd Merge pull request #1107 2026-10-25 13:42:06 -04:00
Brandon Thomas 8b2c0f456a Merge pull request #1294 2026-10-25 13:42:05 -04:00
Brandon Thomas ea4001a26e Merge pull request #1256 2026-10-25 13:42:05 -04:00
Brandon Thomas 4268cab027 Merge pull request #1246 2026-10-25 13:42:05 -04:00
Brandon Thomas c8a13561b3 Merge pull request #1331 2026-10-25 13:42:05 -04:00
Brandon Thomas 90f723918b Merge pull request #1319 2026-10-25 13:42:05 -04:00
Brandon Thomas 5f5f341d27 Merge pull request #1317 2026-10-25 13:42:05 -04:00
Brandon Thomas d217820576 Merge pull request #1315 2026-10-25 13:42:05 -04:00
Brandon Thomas d6d30bbf20 Merge pull request #1313 2026-10-25 13:42:05 -04:00
Brandon Thomas 7a9786b355 Merge pull request #1311 2026-10-25 13:42:05 -04:00
Brandon Thomas 5e2f1993c3 Merge pull request #1190 2026-10-25 13:42:05 -04:00
Brandon Thomas 24905e7057 Merge pull request #1358 2026-10-25 13:42:05 -04:00
Brandon Thomas 3c4d6e12de Merge pull request #1354 2026-10-25 13:42:05 -04:00
Brandon Thomas 7d6445e060 Merge pull request #1353 2026-10-25 13:42:05 -04:00
Brandon Thomas b21d71e648 Merge pull request #1352 2026-10-25 13:42:05 -04:00
Brandon Thomas ec274ec2fe Merge pull request #1351 2026-10-25 13:42:04 -04:00
Brandon Thomas 178edac4ac Merge pull request #1329 2026-10-25 13:42:04 -04:00
Brandon Thomas d0411d0332 Merge pull request #1304 2026-10-25 13:42:04 -04:00
Brandon Thomas f034901719 Merge pull request #1303 2026-10-25 13:42:04 -04:00
Brandon Thomas 547807c58d Merge pull request #1302 2026-10-25 13:42:04 -04:00
Brandon Thomas 5ed7844cb9 Merge pull request #1297 2026-10-25 13:42:04 -04:00
Brandon Thomas f9b564cd00 Merge pull request #1284 2026-10-25 13:42:04 -04:00
Dylan M. TaylorandClaude Sonnet 5.5 7d4c49051c refactor: explicit imports in engine/anim/geom/model/render/text/pdf/ogg modules (SonarCloud S2208) (#1270)
* refactor: explicit imports instead of glob imports in command and test modules (SonarCloud S2208)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* fix: geom extra imports

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* fix: drop unused imports

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* fix: restore explicit imports in test modules (SonarCloud S2208)

---------

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 13:18:05 -04:00
skylar taylor-barrick 14f40c408c Migrate DeckCraft to egui 0.37 (#1350)
* egui037-20261022: migrate DeckCraft to egui 0.37

Preserve current-main document and PDF behavior alongside the reviewed input, capture, font, ribbon and notice-packaging migration.

Validation: cargo xtask ci passed all eight stages, with 1,877 workspace tests and three doctests passed, six tests ignored, strict native lint and 23 WASM crates checked. Native GUI, platform and performance qualification remains separate.

* E21: restore Latin coverage and enforce required font inputs

* Fix migration review findings in font validation and UI controls

* M-egui037: document UI lifecycle and regression contracts
2026-10-25 10:48:52 -04:00
FaabyyandClaude 52d0fcd6c7 Reuse Slides: insert into the presentation and after the slide the picker was opened for (#1103)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 13:47:23 +00:00
FaabyyandClaude 121441a079 Slides: the range anchor is held by slide id, so moving, inserting or deleting slides can't shift it (#1105)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 13:47:18 +00:00
Brandon ThomasandClaude Opus 5.5 9ec3926793 Release 0.11.1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
v0.11.1
2026-10-25 09:14:20 -04:00
Brandon ThomasandClaude Opus 5.5 79bf9a688c macOS signing: keep the temporary keychain until the build has signed with it
import-cert.sh deleted its whole private temp directory on exit, and the keychain lives there, so codesign failed with "The specified item could not be found in the keychain" in the release build.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 09:13:55 -04:00
Brandon ThomasandClaude Opus 5.5 1330ce4b86 Release 0.11.0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 09:04:15 -04:00
FaabyyandClaude abdf5f337b Slides: a second Shift-click extends from the same anchor; the range clears cells and returns to the slides; a bad from is an error (#1105)
Review on #1107: read `from` with opt_usize_param, clear `sel.cells` and set
`target = Slides` as `slide.go` did, keep the anchor of the first Shift-click.
A kittest drives the Shift and Ctrl+Shift clicks in the slide sorter.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 11:50:42 +00:00
FaabyyandClaude 95a8f90d1a Reuse Slides: insert from the bytes that were listed; a failed insert keeps the dialog open (#1103)
Review on #1109: the file is read once when the list is made and the same bytes
are inserted, so a file changed meanwhile can't swap the slides; `reuse_slides`
returns whether it inserted and the dialog closes only then. A kittest drives the
dialog.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 11:50:24 +00:00
FaabyyandClaude a378c78c25 Roadmap: record sel-range-1105
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 11:50:24 +00:00
FaabyyandClaude 29bd07e1b8 Slides: Ctrl+Shift+click selects the range, also in the slide sorter (#1105)
New slide.selectRange {to, from?, add?} selects every slide between the current one (or
`from`) and `to`. Shift+click in the slide list and the slide sorter selects that range;
Ctrl+Shift+click adds it to the slides already selected. The sorter had no range selection
before, and in the list Ctrl+Shift+click used to add only the clicked slide.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 11:48:27 +00:00
NetterSilverandClaude Haiku 5.5 6523a49fb7 Reject invalid layout index in master.deleteLayout and renameLayout
Found while testing crates/engine/src/cmd/design.rs:1353 (layout_target), used by delete_layout at :1368 and rename_layout at :1356

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 09:16:09 +00:00
NetterSilverandClaude Haiku 5.5 8a730912c2 Keep auto-advance when transition.timing gets an invalid after
Found while testing crates/engine/src/cmd/transition.rs:112-115 (timing)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 07:02:08 +00:00
NetterSilverandClaude Haiku 5.5 ea72d9d712 Fix HTML paste panic on bare '&' before multi-byte text
Found while testing crates/engine/src/cmd/richclip.rs:307-308 (decode_text)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 06:35:45 +00:00
NetterSilverandClaude Haiku 5.5 6a24586412 Resolve OPC relationship targets that use backslash separators
Found while testing crates/pptx/src/opc.rs:295-309 (resolve, used by rels_of)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 06:29:31 +00:00
NetterSilverandClaude Haiku 5.5 9c985e6a6a Ignore signed \'hh hex escapes in RTF outline import
Found while testing crates/format/src/rtf.rs:226 (rtf_to_outline)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 06:35:40 +01:00
aiongg a0eeb341d2 Colour names, media ids after a paste, and pressing a table outside its cells (#1344 follow-ups) (#1348)
* Colors: unknown preset and system colour names are rejected, and the writer saves black or windowText for them

* Gaps: copying text and cell ranges, list AutoFormat's option and Backspace, and a timing-sensitive control-server test

* Paste and Compare: media kept under a foreign id raises the next id, so a later picture gets an id of its own

* Tables: with a cell range selected, a press on the table outside its cells selects and moves the table

* Tables: a click on a selected table's grab band keeps the table selected instead of entering the nearest cell
2026-10-25 01:09:38 -04:00
aiongg 80f13011d5 Merge pull request #1344 from aiongg/dcc-batch1
Merge 14 open PRs (tested batch)
2026-10-24 23:48:59 -04:00
aiongg 399bc5a79f Integration: editing text in a table cell ends a selected cell range 2026-10-25 03:32:41 +00:00
aiongg 3821a8f7f7 Integration: the pattern gallery offers the 48 gallery presets in gallery order; the six legacy ones still draw 2026-10-25 02:45:46 +00:00
aiongg 08cc9ada67 Integration: Esc during a handle drag also takes back the point type a modifier chose 2026-10-25 02:42:04 +00:00
aiongg 7d21b25330 Integration: one Edit points row in the UI parity table, and the progress log in date order 2026-10-25 02:33:30 +00:00
aiongg cc4629c2cd Merge #1338: Format: Fill shows Color and Transparency only for fills they change 2026-10-25 02:22:59 +00:00