Strip FX writes from the Design View mode switch; split view.cpp into park/lanes/reconcile/tracks and add the record-scoped undo repair pass
This commit is contained in:
+8
-1
@@ -38,7 +38,9 @@
|
||||
#include "shell/panel/panel_input.h" // bankPanelRefresh / bankPanelNotifyProjectLoaded
|
||||
#include "shell/panel/panel_window.h" // panel lifecycle (init/toggle/open-query/shutdown)
|
||||
#include "shell/persist/session.h" // ReaSamplerSession
|
||||
#include "shell/view/view.h" // reconcileManagedLanes / applyMode
|
||||
#include "shell/view/view.h" // applyMode
|
||||
#include "shell/view/view_lanes.h" // reconcileManagedLanes
|
||||
#include "shell/view/view_reconcile.h" // reconcileAppliedFlags
|
||||
|
||||
namespace capture = reasampler::capture;
|
||||
|
||||
@@ -205,6 +207,11 @@ static void OnTimer()
|
||||
// the cross-session source of truth) BEFORE reapplying visibility. Never
|
||||
// re-mints, never mass-tags.
|
||||
reasampler::reconcileManagedLanes(g_session.view(), nullptr);
|
||||
// An undo/redo reload also arrives here, and REAPER's undo does not restore
|
||||
// the visibility flags a park drove (UNDO_STATE_TRACKCFG does not carry them).
|
||||
// Repair the tracks the reloaded model no longer records BEFORE the reapply,
|
||||
// which only ever drives tracks the model still records.
|
||||
reasampler::reconcileAppliedFlags(g_session.view(), nullptr);
|
||||
reasampler::applyMode(g_session.view(), g_session.view().activeModeId(), nullptr);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user