From 19a83f83597af4da2e98b19f119e695a7e59cdae Mon Sep 17 00:00:00 2001 From: Mike Solar Date: Tue, 1 Sep 2026 22:06:12 +0800 Subject: [PATCH] multicam: hide the wizard menu item for v0.5 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The 窗口 → 多机位向导 entry is removed from the menu bar and the action-search list (menu_id 0, the hidden convention); the engine pathway (wizard dialog, sync, multicam creation) stays intact behind the action dispatch for a future release. The panel's multi-cam feature remains. --- crates/oak-app/src/actions.rs | 8 +++++--- crates/oak-app/src/app.rs | 12 ++++++++---- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/crates/oak-app/src/actions.rs b/crates/oak-app/src/actions.rs index a413a1e1f..bb2d33951 100644 --- a/crates/oak-app/src/actions.rs +++ b/crates/oak-app/src/actions.rs @@ -207,9 +207,11 @@ define_actions! { FocusTimeline { cpp: "focustimeline", i18n: "menu.window.timeline", keys: [], route: Global, menu_id: 607 }; FocusEffectLibrary { cpp: "focuseffectlibrary", i18n: "menu.window.effect_library", keys: [], route: Global, menu_id: 608 }; FocusMulticam { cpp: "focusmulticam", i18n: "menu.window.multicam", keys: [], route: Global, menu_id: 609 }; - // The multicam wizard (窗口 → 多机位向导; create a multi-angle - // sequence from selected footage with auto-sync alignment). - MulticamWizard { cpp: "multicamwizard", i18n: "menu.sequence.multicam_wizard", keys: [], route: Global, menu_id: 613 }; + // The multicam wizard was cut from the v0.5 surface: the menu item and + // the action-search entry are gone (menu_id 0 = hidden, like the + // panel-context hotkeys), the engine pathway stays for a future + // release. + MulticamWizard { cpp: "multicamwizard", i18n: "menu.sequence.multicam_wizard", keys: [], route: Global, menu_id: 0 }; MaximizePanel { cpp: "maximizepanel", i18n: "menu.window.maximize_panel", keys: ["`"], route: Global, menu_id: 1070 }; ResetDefaultLayout { cpp: "resetdefaultlayout", i18n: "menu.window.reset_layout", keys: [], route: Global, menu_id: 1071 }; diff --git a/crates/oak-app/src/app.rs b/crates/oak-app/src/app.rs index 246ab262f..fdbabe0c4 100644 --- a/crates/oak-app/src/app.rs +++ b/crates/oak-app/src/app.rs @@ -3344,7 +3344,6 @@ fn make_menus(state: MenuState) -> Vec { menu_item(A::SeqCacheInOut), menu_item(A::SeqCacheClear).separated(), menu_item(A::SequenceSettings).disabled(), - menu_item(A::MulticamWizard).separated(), ]), ), MenuBarEntry::new( @@ -4688,8 +4687,10 @@ mod tests { /// The 窗口/Window → 多机位向导 menu item opens the wizard modal with /// the engine's wizard footage rows (the mock offers a demo list), and - /// the created modal carries the content entity (the "click freezes" - /// regression guard). + /// The multicam wizard action still opens the modal via the direct + /// dispatch path (the 窗口 → 多机位向导 MENU ITEM was cut from v0.5 — + /// the feature is out of the shipped surface, but the action code path + /// keeps its guard). #[gpui::test] async fn multicam_wizard_menu_opens_the_modal(cx: &mut TestAppContext) { let _guard = crate::actions::shortcuts_test_lock() @@ -4702,7 +4703,10 @@ mod tests { cx.update(|app| { root.update(app, |app, cx| { - app.on_menu(ActionId::MulticamWizard.menu_id(), cx) + app.dispatch_action_id( + crate::actions::ActionId::MulticamWizard, + cx, + ) }) }); cx.run_until_parked();