refactor(editor): neutralize render surface handoff
This commit is contained in:
@@ -41,7 +41,8 @@ incomplete:
|
||||
- Feature panels no longer use `Composition/EditorContext.h` directly, but the
|
||||
app include surface still needs to be narrowed before this boundary is
|
||||
build-enforced.
|
||||
- Win32 and D3D12 currently know about each other through concrete headers.
|
||||
- The direct Win32/D3D12 render-surface cross-include has been cut; broader
|
||||
host include-surface cleanup remains.
|
||||
- App-side tests exist but are not consistently wired into CMake; some are
|
||||
stale and reference removed headers.
|
||||
|
||||
@@ -63,6 +64,9 @@ Completed boundary cuts:
|
||||
utility-window runtime contracts accept this service view instead of
|
||||
`EditorContext`, so concrete feature panels no longer depend on
|
||||
`Composition/EditorContext.h`.
|
||||
- Win32 now hands render startup a neutral
|
||||
`Rendering::Host::EditorWindowRenderRuntimeSurface` value, and D3D12 no
|
||||
longer includes `Platform/Win32/**` editor surface headers to obtain `HWND`.
|
||||
|
||||
The root issue is not the existence of a single executable target by itself.
|
||||
The root issue is that shared app contracts are stored inside concrete layer
|
||||
@@ -377,6 +381,17 @@ app/Host/D3D12/
|
||||
Then replace concrete Win32/D3D12 cross-includes with a neutral surface or
|
||||
factory contract.
|
||||
|
||||
Completed first cut:
|
||||
|
||||
- The old `Win32EditorWindowRenderRuntimeSurface` concrete adapter was removed.
|
||||
- `EditorWindowRenderRuntimeSurface` is now a value contract in
|
||||
`Rendering/Host/EditorWindowRenderRuntime.h`.
|
||||
- Win32 fills that neutral contract during native surface capture; D3D12 reads
|
||||
the native handle from the contract instead of including a Win32 editor
|
||||
windowing header.
|
||||
- Remaining work in this phase is to move/rename host interface directories
|
||||
and continue narrowing CMake include surfaces.
|
||||
|
||||
## Phase 6: Documentation Update
|
||||
|
||||
Update `editor/AGENTS.md` after each completed boundary cut.
|
||||
|
||||
Reference in New Issue
Block a user