Cut workspace panel factory out of windowing

This commit is contained in:
2026-04-28 00:05:10 +08:00
parent 03967b152d
commit 43a71bd09c
11 changed files with 50 additions and 30 deletions

View File

@@ -272,6 +272,11 @@ Completed follow-up:
owns the command-focus sync point between main panels and after-focus panels.
- Concrete workspace and utility panels use `EditorPanelServices` and no longer
include `Composition/EditorContext.h`.
- `app/Windowing/**` no longer accepts or calls
`EditorWorkspacePanelRuntimeSetFactory`. `Application` composes
`CreateEditorWorkspacePanelRuntimeSet()` with
`CreateEditorWorkspaceShellRuntime(...)`, then injects a zero-argument
`EditorWorkspaceShellRuntimeFactory` into windowing.
## Phase 2: Introduce XCEditorCore
@@ -476,6 +481,10 @@ Completed cuts:
`Core/Windowing/EditorWorkspaceShellRuntime.h`. `Application` injects the
concrete `EditorShellRuntime` factory, and `EditorContext` remains the
concrete `EditorFrameServices` implementation.
- The shell-runtime construction hook visible to `app/Windowing/**` is now a
zero-argument `EditorWorkspaceShellRuntimeFactory`. Workspace panel runtime
set construction stays in `Application`, so windowing no longer sees
`EditorWorkspacePanelRuntimeSetFactory`.
## Phase 6: Documentation Update