Brandon Thomas
909572dffd
Merge pull request #785 from vangel76/gap-fuzz-project-open
...
#779 : fuzz File > Open; refuse deeply nested XML projects
2026-10-12 03:22:51 -04:00
Brandon Thomas
565fd4118d
Merge pull request #784 from vangel76/fix-329-seek-latency
...
#329 : scrubbing a long movie: superseded viewer frames call off their decodes
# Conflicts:
# crates/media/tests/footage.rs
2026-10-12 03:22:50 -04:00
Brandon Thomas
5be3b8f9b2
Merge pull request #782 from MishynMykhailo/uk-panel-catalog-20261011
...
Translate the 95 panel rows Ukrainian was missing
2026-10-12 03:22:49 -04:00
Brandon Thomas
1210ba91f4
Merge pull request #768 from vangel76/fix-762-animated-webp
...
#762 : import animated WebP as footage with its frames
# Conflicts:
# docs/file-format-parity.md
2026-10-12 03:22:30 -04:00
Brandon Thomas
24f98a0242
Merge pull request #778 from vangel76/gap-uncompressed-mov
...
#372 : uncompressed QuickTime (raw RGB / ARGB) output module format
# Conflicts:
# docs/gaps.md
2026-10-12 03:20:53 -04:00
Brandon Thomas
9ebabccbec
Merge pull request #775 from vangel76/script-766-mouse-events
...
#766 : ScriptUI mouse events reach script listeners
# Conflicts:
# crates/engine/src/scriptui.rs
# crates/script/src/lib.rs
# docs/scripting-parity.md
2026-10-12 03:20:52 -04:00
Brandon Thomas
be1d9928e0
Merge pull request #774 from vangel76/gap-proportional-scrubbing
...
#770 : Proportional Scrubbing of Timeline values (Ctrl+Alt / Cmd+Opt)
# Conflicts:
# docs/ui-parity.md
2026-10-12 03:20:51 -04:00
Brandon Thomas
dfd6e9300f
Merge pull request #772 from vangel76/script-760-evalfile-bridgetalk
...
#760 : $.evalFile and a minimal BridgeTalk host identification
# Conflicts:
# crates/script/src/runtime.rs
# docs/scripting-parity.md
2026-10-12 03:20:49 -04:00
Brandon Thomas and Claude Opus 5.5
b2ce1240c6
Merge follow-up: model description and gaps row 17 after the import PRs
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 03:20:48 -04:00
Brandon Thomas
78b32b61d4
Merge pull request #769 from vangel76/gap-mxf-import
...
#767 : import MXF (OP1a / OP-Atom) footage
# Conflicts:
# crates/ui-egui/src/menus.rs
# docs/gaps.md
2026-10-12 03:20:05 -04:00
Brandon Thomas
3d02e65f2b
Merge pull request #765 from vangel76/gap-dpx-import
...
#756 : import DPX and Cineon stills and sequences
# Conflicts:
# crates/media/tests/footage.rs
# crates/ui-egui/src/menus.rs
# docs/file-format-parity.md
# docs/gaps.md
2026-10-12 03:20:04 -04:00
Brandon Thomas
05f0d9ec62
Merge pull request #755 from vangel76/gap-tga-hdr-import
...
#745 : import Targa (.tga) and Radiance HDR (.hdr) stills and sequences
# Conflicts:
# crates/ui-egui/src/menus.rs
2026-10-12 03:20:03 -04:00
Brandon Thomas
261a5b125b
Merge pull request #754 from vangel76/gap-surface-colors
...
#315 : Front / Bevel / Side / Back Color for extruded shapes and text
# Conflicts:
# docs/gaps.md
2026-10-12 03:20:01 -04:00
Brandon Thomas
d57459a7d0
Merge pull request #742 from vangel76/gap-fbx-import
...
#736 : import FBX 3D models (binary and ASCII)
# Conflicts:
# crates/engine/src/commands/app_more.rs
# crates/engine/src/commands/model3d.rs
# crates/engine/src/media_browser.rs
# crates/media/src/lib.rs
# crates/media/src/probe.rs
# crates/model/Cargo.toml
# crates/model/src/lib.rs
# crates/ui-egui/src/menus.rs
# docs/file-format-parity.md
# docs/gaps.md
2026-10-12 03:20:00 -04:00
Brandon Thomas and Claude Opus 5.5
7f9aa28c03
fmt: Brightness & Contrast test ( #702 follow-up)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 03:12:04 -04:00
Brandon Thomas and Claude Opus 5.5
d47d3c7b34
Viewer: the empty-state drop highlight paints with its own painter ( #709 follow-up)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 03:09:14 -04:00
Brandon Thomas
d9dddb90b7
Merge pull request #781 from vangel76/script-773-repeating-tasks
...
#773 : run repeating app.scheduleTask tasks until cancelTask
2026-10-12 03:03:45 -04:00
Brandon Thomas
15387619ee
Merge pull request #780 from vangel76/gap-project-panel-a11y
...
#776 : Project panel arrow-key navigation and accessible names
2026-10-12 03:03:44 -04:00
Brandon Thomas
3e9aa820d1
Merge pull request #771 from vangel76/script-759-include
...
#759 : #include / //@include / #includepath in scripts
2026-10-12 03:03:36 -04:00
Brandon Thomas
bcb9ee1fa5
Merge pull request #764 from vangel76/gap-transition-presets
...
#757 : Transitions animation presets in Effects & Presets
2026-10-12 03:03:31 -04:00
Brandon Thomas
fef320e9dd
Merge pull request #763 from vangel76/script-758-callable-props
...
#758 : layers, property groups and properties are callable
2026-10-12 03:03:29 -04:00
Brandon Thomas
c72e47b7dc
Merge pull request #761 from vangel76/gap-variable-font-filter
...
#741 : font menu filters to variable fonts
2026-10-12 03:03:28 -04:00
Brandon Thomas
4c9a9a9cfa
Merge pull request #752 from vangel76/gap-float-working-gamma
...
#750 : float footage follows Working Gamma and is encoded once
2026-10-12 03:03:23 -04:00
Brandon Thomas
41e8bf48d9
Merge pull request #746 from vangel76/fix-474-exr-decode-peak
...
#474 : decoding a multi-layer EXR no longer holds the file's samples twice
2026-10-12 03:03:22 -04:00
Brandon Thomas
b14096c335
Merge pull request #744 from vangel76/fix-732-toolbar-fill-type
...
#732 : toolbar Fill/Stroke Options change the selected shape layers' kind
2026-10-12 03:03:20 -04:00
Brandon Thomas
cbaaf654d6
Merge pull request #743 from MarekSpodBiedry/issue-723
...
Graph Editor: Shift constrains Bezier handle drags to one axis (#723 )
2026-10-12 03:03:19 -04:00
Brandon Thomas
25dcdcd2d8
Merge pull request #740 from vangel76/fix-303-mesh-warp-grid
...
#303 : Mesh Warp's grid can be dragged in the Composition viewer
2026-10-12 03:03:16 -04:00
Brandon Thomas
8176c86043
Merge pull request #739 from vangel76
...
# Conflicts:
# docs/gaps.md
2026-10-12 03:03:10 -04:00
Brandon Thomas
27e095e60e
Merge pull request #702 from vbasky/fix/681-brightness-contrast
...
Match After Effects non-legacy Brightness & Contrast
2026-10-12 03:03:02 -04:00
Brandon Thomas
e98788690c
Merge pull request #737 from vangel76/gap-copy-frame-clipboard
...
#730 : Composition ▸ Copy Frame to Clipboard
2026-10-12 03:02:59 -04:00
Brandon Thomas
e5ff011296
Merge pull request #735 from vangel76/gap-stl-import
...
#729 : import STL 3D models (binary and ASCII)
2026-10-12 03:02:58 -04:00
Brandon Thomas
4aa2c6ba8b
Merge pull request #734 from vangel76/fix-678-psd-drop-dialog
...
#678 : dropped Photoshop files show the Import Photoshop File dialog
2026-10-12 03:02:56 -04:00
Brandon Thomas
64b7088867
Merge pull request #733 from vangel76/fix-473-crypto-quoted-names
...
#473 : Cryptomatte Selection keeps quoted names with commas whole
2026-10-12 03:02:55 -04:00
Brandon Thomas
a4a117c1f7
Merge pull request #731 from vangel76/fix-710-ruler-frames
...
#710 : Timeline ruler labels frames when Time Display is Frames
2026-10-12 03:02:54 -04:00
Brandon Thomas
adaa8d65bb
Merge pull request #728 from vangel76/contributors-vangel76
...
Contributors: add vangel76 (Valentin Klein)
2026-10-12 03:02:52 -04:00
Brandon Thomas
15d50597dd
Merge pull request #716 from storytold/ci-speedup-nightly-platform-checks
...
CI: FreeBSD and Windows ARM64 nightly and on release, not per PR
2026-10-12 03:02:51 -04:00
Brandon Thomas
0ae711ba3a
Merge pull request #713 from mjohnson7cd/fix/2081-rendering-hang
...
fix(gpu): cap GPU readback staging buffers to prevent memory exhaustion
2026-10-12 03:02:50 -04:00
Brandon Thomas
686280cc5f
Merge pull request #711 from Ni-zav/fix/704-cylinder-axis-rotation-s20261011T035800Z-cf39
...
fix(effects): add XYZ rotation to CC Cylinder on CPU and GPU
2026-10-12 03:02:48 -04:00
Brandon Thomas
196dd80104
Merge pull request #709 from Ni-zav/fix/684-empty-viewer-project-drop-s20261011T035800Z-cf39
...
fix(viewer): create a composition when dropping footage onto an empty viewer
2026-10-12 03:02:47 -04:00
Brandon Thomas
d7fe6d2e56
Merge pull request #705 from tylerjenningsw/enhance/custom-ui-scale
...
Settings: allow custom UI scale percentages (#682 )
2026-10-12 03:02:46 -04:00
Brandon Thomas
4482ad9634
Merge pull request #703 from didpublishing/fix/windows-path-tests
...
Tests: six engine tests no longer assume the working directory's drive on Windows
2026-10-12 03:02:44 -04:00
Brandon Thomas
162a2e2e01
Merge pull request #699 from didpublishing/fix/596-gpu-information
...
#596 : GPU Information names the adapter, or why the GPU compositor is off
2026-10-12 03:02:43 -04:00
Brandon Thomas
b84b5f47ed
Merge pull request #695 from vbasky/fix/535-pixel-motion-vectors
...
Pixel Motion Blur: synthesize from motion vectors, honour Vector Detail (#535 )
2026-10-12 03:02:42 -04:00
Brandon Thomas
62dd3ae2ed
Merge pull request #694 from tylerjenningsw/enhance/gradient-editor
...
Shapes: edit gradient color and opacity stops (#612 )
2026-10-12 03:02:40 -04:00
Brandon Thomas
edfa8ee51c
Merge pull request #677 from vbasky/test/651-gif-preview
...
Tests: an imported animated GIF plays its frames (#651 )
2026-10-12 03:02:39 -04:00
Brandon Thomas
dff86891d0
Merge pull request #399 from FeiLiuEM/test/variable-font-axis
...
Text: the variable-font test picks an axis that moves the advance
2026-10-12 03:02:38 -04:00
Dylan M. Taylor
67434e9038
ci: refactor workflows to use storytold/craft-common-actions ( #801 )
...
* ci: refactor workflows to use reusable artcraft-common-actions
* ci: point reusable workflows to storytold/craft-common-actions
* ci: pin storytold/craft-common-actions to commit 27a978f and pass secrets explicitly
* ci: use @main (unpinned) for craft-common-actions with explanation comment
2026-10-11 11:51:43 -04:00
tylerjenningsw
f4c5015b35
Settings: keep action buttons visible at high UI scales
...
At 200 % in a 1600x1000 window, Previous / Next / Cancel / OK were cut
off. Settings sized its pages from the window height less a fixed 170,
and the shared modal put everything, buttons included, in one more
scroll area, so a footer that didn't fit scrolled out of the dialog.
The modal helper gets a modal_fit variant without that scroll area: it
hands its body the height left under the title. Settings lays out its
buttons first, from the bottom up, and gives the page list and the page
what they leave; both scroll on their own and the buttons stay put. The
pages are a clipped child, so a wide page can't widen the dialog under
the buttons. Other dialogs keep modal as it was.
Tests: settings_buttons_stay_in_view_at_200_percent opens Settings at
200 % in 1600x1000 and checks that each button is inside the window and
painted unclipped (fails before this change: the scroll area clipped
them at the bottom). It scrolls the page to UI Scale without moving
them, then types 150 and clicks Cancel (200 % again, nothing saved) and
OK (150 % saved). The UI Scale test no longer needs a larger window and
clicks Cancel at 200 %.
2026-10-11 11:48:07 -04:00
tylerjenningsw
3df7e8f77c
Shapes: a closed colour picker leaves the next Escape to the dialog ( #612 )
...
The picker marked every pass it drew, including the one it closed in, so
for one pass after closing the dialog Escape handler still stepped aside
and a quick second Escape did nothing. The mark is now set only while the
picker stays open and cleared in the pass it closes (OK, Cancel, Escape or
a click outside); the picker also consumes the Escape it handles.
Test: the_escape_after_the_picker_closes_cancels_the_editor presses Escape
to close the picker and again in the very next pass, with no settling
frames: the editor cancels. It fails on the previous marking.
2026-10-11 08:29:54 -04:00
vangel76 and Claude Opus 5.5
b747ffc986
#779 : fuzz File > Open; refuse deeply nested XML projects
...
Problem: nothing fuzzed project files. The hand-written .ecprojx XML reader
recursed once per nested <arr>/<obj> with no limit, so a deeply nested file
overflowed the stack and aborted the app instead of failing to open.
Fix: a dependency-free, deterministic, seeded mutation fuzzer for File > Open
(JSON and XML seeds from the demo, byte and JSON-structure mutations, the real
file.open path, first queries and a thumbnail render; each input under
catch_unwind with a deadline; bounded for cargo test, longer runs via env
vars). The XML reader now stops at the JSON reader's 128-level limit, with a
regression test.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:02:40 +02:00