Commit Graph
641 Commits
Author SHA1 Message Date
Brandon Thomas e406e11db2 Merge PR #444 from MarekSpodBiedry: CLI: render-transition refuses --t values that would share one file name (#423)
# Conflicts:
#	apps/deckcraft-cli/src/main.rs
2026-10-14 14:33:40 -04:00
Brandon ThomasandClaude Opus 5.5 8ee597216d Fix up landed PRs from review
- #178: ToUnicode ranges looked up without indexing
- #465: frame_num gaps are concealed (bounded) even when the SPS forbids them; cut streams keep playing
- #471: control request lines up to 256 MB so picture/media inserts still fit
- #473: a merge that loses its only row or column is removed, with regression tests
- #521: AutoCorrect no longer rewrites real words (cant, wont, im)
- #654: inherit_placeholder_geometry's doc comment back on its function

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:31:01 -04:00
Brandon Thomas d498633faf Merge PR #654 from NikitkaRa: PPTX: shape text anchors at the top when the file gives no anchor; write ctr for centred shapes 2026-10-14 14:24:17 -04:00
Brandon Thomas 71c3848eff Merge PR #521 from NikitkaRa: Text: AutoCorrect options, case rules and your own entries
# Conflicts:
#	crates/engine/src/tests.rs
2026-10-14 14:24:16 -04:00
Brandon Thomas 42b6e8e871 Merge PR #473 from NikitkaRa: Table: inserting and deleting rows and columns keeps merges consistent (#408) 2026-10-14 14:24:15 -04:00
Brandon Thomas fca521ac8c Merge PR #471 from NikitkaRa: Control server: bound connections, line length, queue and socket timeouts (#418) 2026-10-14 14:24:15 -04:00
Brandon Thomas 3335ee0feb Merge PR #465 from NikitkaRa: H.264: bound frame_num gap work and reject gaps the SPS forbids (#427)
# Conflicts:
#	crates/h264/src/synth_tests.rs
2026-10-14 14:24:15 -04:00
Brandon Thomas 31390e5e21 Merge PR #178 from MarekSpodBiedry: PDF: map each glyph to its shaping cluster's text in ToUnicode (#164)
# Conflicts:
#	crates/pdf/src/tests.rs
2026-10-14 14:24:15 -04:00
Brandon Thomas 0c2c433ade Merge the chart and EMF+ metafile PRs integrated on land-r2 (#532 #537 #591 #594 #598 #602 #603 #638 #640 #662 #666 #669 #690 #582 #588 #633 #635)
# Conflicts:
#	crates/pptx/src/write/mod.rs
#	crates/pptx/tests/roundtrip.rs
2026-10-14 14:17:35 -04:00
Brandon ThomasandClaude Opus 5.5 a85024558d Fix up merged PRs: Quick Access Toolbar defaults keep main's Export button and custom-show start
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:16:59 -04:00
Brandon Thomas f6661ed15e Merge PR #563 from NikitkaRa: UI: customizable Quick Access Toolbar
# Conflicts:
#	crates/ui-egui/src/lib.rs
#	crates/ui-egui/src/ribbon.rs
2026-10-14 14:16:22 -04:00
Brandon ThomasandClaude Opus 5.5 b2b378a3f0 Fix up merged PRs: dedupe doc rows left by the union merges
One EMF / WMF parity row naming both GDI clip regions and EMF+ playback; drop
the stale Tables, Charts, chartex and SmartArt rows that came back with the
chartex PRs; one SVG-gap sentence; one charts-gap paragraph.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:13:50 -04:00
Brandon Thomas ea12297822 Merge PR #223 from marcoarnulfo: Title bar: on macOS the window buttons sit centred in it (#71)
# Conflicts:
#	crates/ui-egui/src/ribbon.rs
2026-10-14 14:13:29 -04:00
Brandon Thomas 4eae520beb Merge PR #484 from NikitkaRa: Video: check the whole picture store against a memory budget (#398)
# Conflicts:
#	crates/av1/src/decoder.rs
2026-10-14 14:12:46 -04:00
Brandon Thomas 16355053e1 Merge PR #481 from NikitkaRa: AV1: reject duplicate film-grain scaling points; a failed job still publishes (#394)
# Conflicts:
#	crates/av1/src/decoder.rs
2026-10-14 14:12:22 -04:00
Brandon Thomas 8ea2cb0871 Merge PR #361 from NikitkaRa: CLI: say that render --slide counts from 0 (#359)
# Conflicts:
#	apps/deckcraft-cli/src/main.rs
2026-10-14 14:12:10 -04:00
Brandon Thomas 3a8927e3f3 Merge PR #691 from NikitkaRa: UI: Trim Media dialog follows the selection
# Conflicts:
#	crates/ui-egui/src/dialogs.rs
2026-10-14 14:11:53 -04:00
Brandon ThomasandClaude Opus 5.5 0c3f4eee63 Fix up merged PRs: Slide Master Preserve/placeholders know the notes and handout master views
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:07:31 -04:00
Brandon Thomas a4fa978903 Merge PR #703 from NikitkaRa: UI: Slide Master Preserve and Title or Footers placeholders
# Conflicts:
#	crates/engine/src/cmd/design.rs
#	crates/ui-egui/src/ribbon.rs
2026-10-14 14:06:42 -04:00
Brandon ThomasandClaude Opus 5.5 31e22977f7 Fix up merged PRs: the palette test skips UI commands that need a value (#440 hides them)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 14:05:00 -04:00
Brandon Thomas 7266b30018 Merge PR #698 from NikitkaRa: UI: Design Effects applies a theme effect scheme
# Conflicts:
#	crates/engine/src/cmd/design.rs
#	crates/ui-egui/src/ribbon.rs
2026-10-14 14:04:24 -04:00
Brandon Thomas 2009242055 Merge PR #684 from NikitkaRa: Export: a PNG or JPEG slide records 144 dpi at the default 2× size
# Conflicts:
#	crates/engine/src/cmd/file.rs
#	crates/engine/src/tests.rs
2026-10-14 14:02:59 -04:00
Brandon Thomas 1e80cd5547 Merge PR #440 from NikitkaRa: Palette: skip commands that need a value
# Conflicts:
#	crates/ui-egui/src/menus.rs
2026-10-14 14:01:08 -04:00
Brandon Thomas 749656605c Merge PR #635 from NikitkaRa: Metafile: EMF+ Clear, and the EMF+ record coverage written down 2026-10-14 13:57:48 -04:00
Brandon Thomas 1360b283f3 Merge PR #633 from NikitkaRa: Metafile: EMF+ cardinal curves and region fills
# Conflicts:
#	crates/render/src/tests.rs
2026-10-14 13:57:48 -04:00
Brandon ThomasandClaude Opus 5.5 389c4dd5d0 Fix up merged PRs: #588's polygon clip and nested metafiles with clip regions
Move #588's clip.rs changes into cliprect.rs, carry main's per-item clip
region through the polygon clipper, and build nested-metafile items with the
region field main added (the nested picture's own regions are not carried
over; each item takes the canvas's current clip).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:56:56 -04:00
Brandon Thomas b3c9cc099c Merge the PPTX writer, notes/handout master, PDF and slide-show PRs integrated on land-r3 (#518 #531 #535 #533 #572 #573 #577 #580 #583 #592 #685 #528 #483 #490 #441 #671 #679 #649 #656 #660 #664 #224)
# Conflicts:
#	crates/engine/src/tests.rs
#	crates/model/src/lib.rs
#	crates/pptx/src/write/mod.rs
#	crates/render/src/lib.rs
#	crates/ui-egui/src/canvas.rs
#	crates/ui-egui/src/lib.rs
#	crates/ui-egui/src/thumbs.rs
2026-10-14 13:56:41 -04:00
Brandon Thomas 4d7406be10 Merge PR #588 from NikitkaRa: Metafile: EMF+ arcs, convex clip paths, wrapped strings, nested metafiles
# Conflicts:
#	crates/metafile/src/canvas.rs
#	crates/metafile/src/clip.rs
#	crates/metafile/src/emfplus.rs
2026-10-14 13:56:02 -04:00
Brandon Thomas 126029db40 Merge PR #254 from xmaks82: Text: honour spcFirstLastPara (space before the first paragraph)
# Conflicts:
#	crates/pptx/src/read/dml.rs
#	crates/text/src/lib.rs
#	crates/text/src/tests.rs
2026-10-14 13:55:43 -04:00
Brandon ThomasandClaude Opus 5.5 3450180f19 Fix up merged PRs: EMF+ clipping alongside GDI clip regions
main added its own clip.rs (GDI rectangle regions carried on every drawn
item); #582 added a clip.rs that cuts drawing geometrically to the EMF+ clip
rectangle. Keep main's module, move #582's to cliprect.rs, keep the EMF+
rectangle on the canvas as plus_clip, and carry the region field through the
geometric clipper.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:55:38 -04:00
Brandon Thomas eab5686393 Merge PR #582 from NikitkaRa: Metafile: EMF+ images, text, gradient brushes and clipping
# Conflicts:
#	crates/metafile/src/canvas.rs
#	crates/metafile/src/clip.rs
2026-10-14 13:54:59 -04:00
Brandon Thomas 912598fa46 Merge PR #675 from NikitkaRa: View: Zoom dialog applies a percent or Fit
# Conflicts:
#	crates/ui-egui/src/dialogs.rs
2026-10-14 13:54:33 -04:00
Brandon Thomas ad7eb45abe Merge PR #690 from NikitkaRa: Charts: a chart frame with no width no longer panics
# Conflicts:
#	crates/render/src/chart.rs
#	crates/render/src/tests.rs
2026-10-14 13:53:49 -04:00
Brandon ThomasandClaude Opus 5.5 5c7e9fc6c3 Format the merged PRs (cargo fmt)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:53:13 -04:00
Brandon ThomasandClaude Opus 5.5 bb3627f954 Fix up merged PRs: minor gridlines on a logarithmic axis
#666's minor gridlines stepped in value units, but #669 scales a log axis in
exponents of its base; map each minor step back through the base.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:53:06 -04:00
Brandon ThomasandClaude Opus 5.5 f9c1000e35 Fix up merged PRs: rustfmt; drop doc rows the union merge left twice
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:51:53 -04:00
Brandon ThomasandClaude Opus 5.5 0ac222a543 Fix up merged PRs: split ribbon buttons carry their label once (#512's label predates main's)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:51:49 -04:00
Brandon Thomas 6d1b01b73d Merge PR #669 from NikitkaRa: Charts: logarithmic value axes
# Conflicts:
#	crates/pptx/src/read/chart.rs
#	crates/render/src/chart.rs
2026-10-14 13:51:30 -04:00
Brandon Thomas 808087e6a5 Merge PR #666 from NikitkaRa: Charts: value-axis minor gridlines
# Conflicts:
#	crates/pptx/src/read/chart.rs
2026-10-14 13:50:53 -04:00
Brandon ThomasandClaude Opus 5.5 5089d615bf Fix up merged PRs: scatter trendlines follow the value x axis
#662 gives scatter and bubble charts one x scale over every series; #603's
trendlines still mapped x over each series' own extent, so a fit drifted off
its points. Use the chart's x scale where there is one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:50:37 -04:00
Brandon ThomasandClaude Opus 5.5 6902c4bf92 Fix up merged PRs: every presenter-view button uses the light-on-dark style (#221)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:50:27 -04:00
Brandon Thomas d2bf428362 Merge PR #224 from justinjohn0306: Notes and Presenter View: long notes scroll, presenter controls show (#221)
# Conflicts:
#	crates/ui-egui/src/show.rs
2026-10-14 13:50:20 -04:00
Brandon Thomas 256ad7057c Merge PR #662 from NikitkaRa: Charts: scatter and bubble charts get a value x axis
# Conflicts:
#	crates/render/src/chart.rs
2026-10-14 13:49:59 -04:00
Brandon Thomas bc62c58b17 Merge PR #664 from NikitkaRa: Show: show the slide number while typing it
# Conflicts:
#	crates/ui-egui/src/show.rs
2026-10-14 13:49:49 -04:00
Brandon ThomasandClaude Opus 5.5 b61cf33836 Fix up merged PRs: custom-show links carry 'returns'; prefetch follows the show's own order
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:49:36 -04:00
Brandon ThomasandClaude Opus 5.5 0f28ac96ed Fix up merged PRs: reversed category axes and trendline forecasts agree
#640 orders category slots bottom-to-top on horizontal bars (or reversed via
c:orientation) while #603 pads the axis for trendline forecasts. Slots now
include the forecast padding on the right side, and trendlines map their
category positions through the same slot order as the bars.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:49:35 -04:00
Brandon Thomas e74015490b Merge PR #660 from NikitkaRa: Show: play a custom show
# Conflicts:
#	crates/anim/src/show.rs
#	crates/engine/src/cmd/review.rs
#	crates/ui-egui/src/lib.rs
#	crates/ui-egui/src/show.rs
2026-10-14 13:49:10 -04:00
Brandon Thomas 3e89fbbaa6 Merge PR #656 from NikitkaRa: Presenter view: pause and reset the timer, and notes size
# Conflicts:
#	crates/ui-egui/src/show.rs
2026-10-14 13:48:31 -04:00
Brandon Thomas 266da52dd9 Merge PR #640 from NikitkaRa: Charts: category axis orientation; horizontal bars list the first category at the bottom
# Conflicts:
#	crates/pptx/src/read/mod.rs
#	crates/pptx/src/write/chart.rs
#	crates/render/src/chart.rs
2026-10-14 13:48:09 -04:00
Brandon Thomas 6c605be582 Merge PR #649 from NikitkaRa: Show: See All Slides and zoom
# Conflicts:
#	crates/ui-egui/src/show.rs
2026-10-14 13:47:54 -04:00