aiongg
ee050db59c
ui: move panel docking onto craft-ui's shared Workspace and DockCommand ( #1035 )
...
* ui: move panel docking onto craft-ui's shared Workspace and DockCommand
Pin every craft-libs crate at 16fb3d4 (craft-libs main after #285 ).
The Edit and Mix workspaces are craft_ui::docking::Workspace<Panel>.
ui.dock and ui.dock.reset parse into DockCommand; the app keeps its
panels, permissions, defaults, the document-view and Mix rules, the
beside-the-canvas fallback for panels without a recorded place, and
Arrange. The canvas accepts splits so panels still open beside it.
Saved v1 workspaces (no version, floating windows as
{panels, active, rect}) load unchanged. Tests cover loading one and
dragging a group by its drag bar.
* ui: test that activating a hidden panel shows it
* ui: name the field in ui.dock operation errors; document the shared panel menu and zones
2026-10-24 16:18:19 -04:00
aiongg
aa74bffac1
Merge pull request #1011 from aiongg/next
...
Integration batch 1: 36 contributor PRs (files, editing, sessions, CLI, mixer, MIDI, plug-ins, interface)
2026-10-24 08:38:37 -04:00
aiongg
e884d6eb37
Integration: VST3 host: keep room for note releases after a reset
2026-10-24 09:16:19 +00:00
aiongg
4ab3bde39b
Integration: MIDI real-time properties: reload the form when stored values change
2026-10-24 09:15:31 +00:00
aiongg
824cf5cecb
Integration: import: keep a failed import's error on the status line
2026-10-24 09:14:21 +00:00
aiongg
f6a27c2ccf
Integration: automation: hold clip gain envelope ends to the clip edges
2026-10-24 09:13:19 +00:00
aiongg
08679d5a65
Integration: cli: run the inline --cmd=ID form
2026-10-24 09:11:44 +00:00
Dylan M. Taylor and Claude Sonnet 5.5
93800e0764
refactor(video): use method paths instead of closures for first_chunk (S1612) ( #1012 )
...
Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 04:30:47 -04:00
aiongg
c29510af86
Integration: regenerate docs/parity-checklist.md
2026-10-24 06:56:33 +00:00
aiongg
1cc7b40e6a
Integration: #631 find the New Tracks name field by its text-input role
2026-10-24 06:54:11 +00:00
aiongg
42f22369fb
Integration: build the batch's new integration tests into each crate's tests/it binary
2026-10-24 06:54:11 +00:00
aiongg
b47f544c7a
Merge track r1-t02
...
# Conflicts:
# contributors/people.toml
# docs/plugin-parity.md
2026-10-24 06:54:04 +00:00
aiongg
7bf20dbbac
Merge track r1-t01
2026-10-24 06:54:04 +00:00
aiongg
de206f46b6
Merge PR #798 : Fix saved audio trust test on Windows by joining path parts separately ( #789 )
2026-10-24 06:53:57 +00:00
aiongg
4f959bee40
Merge PR #587 : Round negative timecode and feet+frames positions symmetrically
2026-10-24 06:53:57 +00:00
aiongg
0ca5dd74ab
Merge PR #967 : Name F12 in the Record button's tooltip
2026-10-24 06:53:57 +00:00
aiongg
848978a4af
Merge PR #997 : Fix the macOS build: import registry in au-host's api module
2026-10-24 06:53:57 +00:00
aiongg
f3b897f532
Merge PR #662 : fix(ui): capture live plugin state before saving track presets
...
# Conflicts:
# docs/gaps.md
2026-10-24 06:53:57 +00:00
aiongg
c13e55c7c3
Merge PR #484 : VST3 host: IMessage and IAttributeList for plugins (Helix loads its database)
...
# Conflicts:
# ROADMAP.md
2026-10-24 06:53:57 +00:00
aiongg
419e7726bb
Merge PR #605 : Release held VST3 notes on reset instead of discarding them
2026-10-24 06:53:57 +00:00
aiongg
bc530b172a
Merge PR #763 : Mix tests: never load real plug-ins (cargo test hangs on machines with plug-ins installed)
2026-10-24 06:53:56 +00:00
aiongg
fb9d4ac78b
Merge PR #1008 : Tracks: clip track and group names to their rows in the side lists ( fixes #990 )
2026-10-24 06:53:56 +00:00
aiongg
76bd7bc3af
Merge PR #561 : Keep deep Aux and Folder routing chains in dependency order
...
# Conflicts:
# contributors/people.toml
2026-10-24 06:53:56 +00:00
aiongg
c4fee770ca
Merge PR #784 : Fix empty SMF export re-importing as one phantom empty track
2026-10-24 06:53:56 +00:00
aiongg
c0f72e5fe3
Merge PR #593 : ui: MIDI Real-Time Properties submits only the property that changed ( #444 )
2026-10-24 06:53:56 +00:00
aiongg
7ec4216ba2
Merge PR #565 : A Pencil click on a MIDI clip selects it, so the MIDI Editor follows
2026-10-24 06:53:56 +00:00
aiongg
d33563ebe2
Merge PR #521 : Keep MIDI note selection valid across clip, session and note-order changes ( #443 )
...
# Conflicts:
# crates/engine/src/cmd/midi.rs
2026-10-24 06:53:56 +00:00
aiongg
95243c7698
Merge PR #1010 : Add a built-in Ring Modulator plugin
...
# Conflicts:
# ROADMAP.md
2026-10-24 06:40:52 +00:00
aiongg
4240873586
Merge PR #551 : Bounce: a Dither option in the dialog and for stems ( #522 )
2026-10-24 06:40:52 +00:00
aiongg
9eb2077dd1
Merge PR #643 : Resample through a polyphase bank: 5x faster rate-converting imports ( #597 )
2026-10-24 06:40:52 +00:00
aiongg
3fe53ee834
Integration: #595 pass BUNDLE_LIMITS in main's sources_sharing_one_file test
2026-10-24 06:19:20 +00:00
aiongg
9e7583d99b
Merge PR #595 : Save a session bundle only if it opens again ( #433 )
...
crates/engine/src/io.rs: kept both bundle tests.
2026-10-24 06:19:17 +00:00
aiongg
9f03eeb354
Merge PR #586 : session: reject duplicate ids and an exhausted id space on load
2026-10-24 06:19:10 +00:00
aiongg
ec7cfbb8ac
Merge PR #519 : Load older sessions whose track height is the bare Fit string ( #447 )
2026-10-24 06:19:09 +00:00
aiongg
d2d6518a5f
Merge PR #557 : mix: clamp negative fractional source position in stretched-clip rendering
2026-10-24 06:19:09 +00:00
aiongg
045938728f
Integration: #674 advance the source offset by delta/stretch on start trims and compare heal offsets in source time
2026-10-24 06:19:09 +00:00
aiongg
2e17315d5d
Merge PR #674 : Fix source offset when trimming the start of a stretched audio clip
...
crates/engine/src/edit.rs: kept main's gap-aware heal comparison and doc comment, the PR's source_len helper, and both sets of tests.
crates/model/src/clip.rs: kept main's clamped trim_start_to body (the stretch-aware offset follows in the Integration commit) and both tests.
2026-10-24 06:19:06 +00:00
aiongg
678cb0f57d
Integration: #517 join_gain_env places the right envelope at the seam when heal bridges a gap
2026-10-24 06:18:49 +00:00
aiongg
a1eafbd1c5
Merge PR #517 : Heal keeps each clip's gain envelope and skips clips whose mute or stretch differ ( #450 )
...
crates/engine/src/edit.rs: heal combines main's gap-aware join (contiguous, gap, saturating adds) with the PR's same_playback check and join_gain_env call; both heal tests kept.
2026-10-24 06:18:46 +00:00
aiongg
c8f44fbbef
Merge PR #518 : Keep unrelated overlapping clips untouched when deleting fades ( #449 )
...
crates/engine/src/edit.rs: kept both tests; delete_fades body merged without conflict.
2026-10-24 06:17:53 +00:00
aiongg
fd07262983
Merge PR #760 : Bounce the whole session when CLI --bounce has no range
2026-10-24 06:17:41 +00:00
aiongg
9719f955a4
Integration: #552 allow --dither and --no-dither in convert's options
2026-10-24 06:17:33 +00:00
aiongg
98aa5dd1b5
Merge PR #555 : convert: dither only when the output loses resolution ( #548 )
...
apps/soundcraft-cli/src/main.rs: kept main's OsStr::to_str spelling and the PR's dither lines.
2026-10-24 06:17:33 +00:00
aiongg
9a5ab203d2
Merge PR #552 : cli: reject unknown options and missing option values
2026-10-24 06:17:18 +00:00
aiongg
0cb3c692ac
Merge PR #716 : Keep the existing volume lane in automation.clip_gain_to_volume
2026-10-24 06:17:18 +00:00
aiongg
5bd755f604
Merge PR #617 : Apply strip mute automation within each processing block
...
contributors/people.toml: kept both new entries.
2026-10-24 06:17:15 +00:00
aiongg
b0e35aa988
Merge PR #792 : Preserve finite headroom in Float32 WAV and AIFF-C encoding
2026-10-24 06:17:04 +00:00
aiongg
bb990d9bfa
Merge PR #663 : Fix Split into Mono repeating the left channel
...
ROADMAP.md, docs/gaps.md: kept the newer header line, union of log, table and G-04 entries
crates/engine/src/cmd/track.rs: kept main's explicit imports, added ClipContent
2026-10-24 06:16:56 +00:00
aiongg
2adec7f128
Integration: #509 accept the Ambisonic WAVEX subtype GUIDs as PCM/float
2026-10-24 06:16:40 +00:00
aiongg
038c4c0ca7
Merge PR #636 : Import audio off the UI thread ( #597 )
...
crates/engine/src/io.rs: kept the PR's decode_import_bytes split; main's OsStr::to_str spelling.
crates/engine/src/cmd/file.rs: kept the PR's take_import path; main's OsStr::to_str spelling.
2026-10-24 06:16:25 +00:00