Split Linux platform target and move runtime/platform state

This commit is contained in:
2026-06-17 01:20:11 +02:00
parent 90a55b86fe
commit 3ce365fc15
16 changed files with 169 additions and 94 deletions

View File

@@ -92,6 +92,18 @@ Current hotspot files:
Latest slice:
- `pp_platform_api` no longer compiles
`src/platform_linux/linux_platform_services.*`; Linux concrete platform code
now lives in `pp_platform_linux`, which `pp_legacy_app` and
`pp_platform_api_tests` link where needed.
- Win32 main-thread queued task ownership now lives in `AppRuntime` instead of
`src/platform_windows/windows_platform_services.cpp`, which removes another
runtime queue from retained platform-local static state and leaves the
Windows shell as a thin forwarder.
- The `platform_legacy`-mirrored Apple and GLFW handle cluster no longer lives
on `App`; retained Apple/GLFW platform state is now seeded explicitly from
the iOS, macOS, Linux, and WebGL entrypoints through
`src/platform_legacy/legacy_platform_state.*`.
- `pp_platform_api` no longer compiles
`src/platform_apple/apple_platform_services.*`; Apple concrete platform
code now lives in the new `pp_platform_apple` target, and
@@ -187,8 +199,8 @@ Latest slice:
Current architecture mismatches that must be treated as real blockers:
- `pp_platform_api` no longer compiles Apple implementation files, but it
still owns concrete Linux platform sources instead of only platform-neutral
policy and interface code.
still owns too much concrete platform implementation instead of only
platform-neutral policy and interface code.
- `src/platform_apple/apple_platform_services.cpp` no longer reaches `App::I`
directly, and Linux FPS title reporting now uses an injected callback, but
retained Apple bridging in `platform_legacy` and other platform/app coupling
@@ -203,7 +215,9 @@ Current architecture mismatches that must be treated as real blockers:
the retained GLFW window hooks, Apple handle snapshots, and fallback
storage-path return now also using local retained-state helpers instead of
direct method-body reads, while Windows VR session snapshot state now also
lives behind platform-owned helpers instead of on `App`.
lives behind platform-owned helpers instead of on `App`, and the
`platform_legacy`-mirrored Apple/GLFW handle cluster is now seeded
explicitly from platform entrypoints instead of being copied out of `App`.
- `src/platform_legacy/legacy_platform_services.*` is still part of the live
app shell.
- `pp_panopainter_ui` still depends on `pp_legacy_app`.