Lay groundwork for detached editor windows

This commit is contained in:
2026-04-14 15:07:52 +08:00
parent 804e5138d7
commit 3f871a4f45
21 changed files with 1820 additions and 97 deletions

View File

@@ -467,6 +467,7 @@ bool Application::Initialize(HINSTANCE hInstance, int nCmdShow) {
"shell asset validation failed: " + m_editorContext.GetValidationMessage());
return false;
}
m_workspaceController = m_editorContext.BuildWorkspaceController();
WNDCLASSEXW windowClass = {};
windowClass.cbSize = sizeof(windowClass);
@@ -568,7 +569,9 @@ bool Application::Initialize(HINSTANCE hInstance, int nCmdShow) {
LogRuntimeTrace(
"app",
"workspace initialized: " +
m_editorContext.DescribeWorkspaceState(m_editorWorkspace.GetShellInteractionState()));
m_editorContext.DescribeWorkspaceState(
m_workspaceController,
m_editorWorkspace.GetShellInteractionState()));
m_renderReady = true;
ShowWindow(m_hwnd, nCmdShow);
@@ -639,6 +642,7 @@ void Application::RenderFrame() {
"input",
DescribeInputEvents(frameEvents) + " | " +
m_editorContext.DescribeWorkspaceState(
m_workspaceController,
m_editorWorkspace.GetShellInteractionState()));
}
@@ -650,6 +654,7 @@ void Application::RenderFrame() {
m_editorWorkspace.Update(
m_editorContext,
m_workspaceController,
workspaceBounds,
frameEvents,
BuildCaptureStatusText());
@@ -667,7 +672,7 @@ void Application::RenderFrame() {
<< " commandExecuted="
<< (shellFrame.result.workspaceResult.dockHostResult.commandExecuted ? "true" : "false")
<< " active="
<< m_editorContext.GetWorkspaceController().GetWorkspace().activePanelId
<< m_workspaceController.GetWorkspace().activePanelId
<< " message="
<< shellFrame.result.workspaceResult.dockHostResult.layoutResult.message;
LogRuntimeTrace(