Own Web platform services and remove legacy web state
This commit is contained in:
@@ -18,7 +18,7 @@ Keep it updated as platform paths move to shared CMake targets.
|
||||
| Android Quest | `android/quest/build.gradle`, `android/quest/CMakeLists.txt` | OVR SDK imported libraries; CMake 3.10/C++23 baseline and current Yoga source list configure with the shared Android package compatibility helper |
|
||||
| Android Focus/Wave | `android/focus/build.gradle`, `android/focus/CMakeLists.txt` | Wave SDK imported libraries; CMake 3.10/C++23 baseline and current Yoga source list configure with the shared Android package compatibility helper |
|
||||
| Linux | `linux/CMakeLists.txt` | Retained app target now uses CMake 3.10 and target-level C++23 while package/root target migration remains open; the modern root CMake path now splits Linux helper code into `pp_platform_linux` instead of leaving it inside `pp_platform_api` |
|
||||
| WebGL/Emscripten | `webgl/CMakeLists.txt` | Retained WebGL app target now uses CMake 3.10 and target-level C++23 with retained WebGL2/Emscripten link flags |
|
||||
| WebGL/Emscripten | `webgl/CMakeLists.txt` | Retained WebGL app target now uses CMake 3.10 and target-level C++23 with retained WebGL2/Emscripten link flags, and the modern root CMake path now also exposes concrete Web helper code through `pp_platform_web` instead of leaving the live Web execution inside `platform_legacy` |
|
||||
|
||||
## Existing Version Generation
|
||||
|
||||
|
||||
@@ -18,6 +18,14 @@ agent or engineer to remove them without reconstructing context from chat.
|
||||
|
||||
## Reductions
|
||||
|
||||
- 2026-06-17: `DEBT-0016`/`DEBT-0017`/`DEBT-0050`/`DEBT-0051`/`DEBT-0053`/
|
||||
`DEBT-0057` were narrowed again. `src/platform_web/web_platform_services.*`
|
||||
now owns the concrete Web `PlatformServices` implementation and
|
||||
`webgl/src/main.cpp` now binds that owned service directly, so
|
||||
`src/platform_legacy/legacy_platform_services.*` no longer carries the
|
||||
touched Web render-context, app-close, picker, storage-path,
|
||||
persistent-storage, default-canvas, prepared-file, or default-render-target
|
||||
branches, and `src/platform_legacy/legacy_platform_state.*` is gone.
|
||||
- 2026-06-17: `DEBT-0016`/`DEBT-0017`/`DEBT-0051` were narrowed again.
|
||||
`src/platform_linux/linux_platform_services.*` now owns the concrete Linux
|
||||
`PlatformServices` implementation and `linux/src/main.cpp` now binds that
|
||||
|
||||
@@ -70,6 +70,20 @@ What is already real:
|
||||
- `pp_app_core`
|
||||
|
||||
Latest slice:
|
||||
- `src/platform_web/web_platform_services.*` now owns the concrete Web
|
||||
`PlatformServices` implementation and `webgl/src/main.cpp` now binds that
|
||||
owned service directly at the WebGL entrypoint.
|
||||
- The touched Web storage-path setup, GLFW render-context acquire/present,
|
||||
app-close dispatch, prepared-file save handoff, persistent-storage flush,
|
||||
default render-target binding, and picker execution now route through
|
||||
`src/platform_web/web_platform_services.*` instead of the cross-platform
|
||||
fallback adapter.
|
||||
- `src/platform_legacy/legacy_platform_services.*` no longer carries the
|
||||
touched Web method branches or the retained `WebPlatformServices*`
|
||||
dependency, and `src/platform_legacy/legacy_platform_state.*` is gone.
|
||||
- `pp_platform_web` now exists as the concrete Web target in root CMake and is
|
||||
linked into `pp_platform_api_tests`, while `webgl/CMakeLists.txt` also
|
||||
compiles the concrete Web service directly for the retained WebGL app build.
|
||||
- `src/platform_linux/linux_platform_services.*` now owns the concrete Linux
|
||||
`PlatformServices` implementation and `create_platform_services(...)`
|
||||
instead of leaving the live Linux execution surface inside
|
||||
@@ -112,15 +126,9 @@ Latest slice:
|
||||
document-service provider/configuration surface or the touched Apple method
|
||||
branches, so the retained fallback adapter is narrower and now focused on the
|
||||
Android/Linux/Web path.
|
||||
- `src/platform_legacy/legacy_platform_services.*` now takes an explicit
|
||||
`WebPlatformServices*` dependency through `create_platform_services(...)`
|
||||
instead of routing WebGL publish/flush/default-canvas/save-prepared-file
|
||||
behavior through retained `try_*legacy_web*` fallback helpers.
|
||||
- `webgl/src/main.cpp` now creates the owned Web service first and threads it
|
||||
directly into its owned legacy `PlatformServices` instance.
|
||||
- `src/platform_legacy/legacy_platform_state.*` is down to the retained Web
|
||||
service factory only; the old `active_legacy_web_platform_services()` and
|
||||
`try_*legacy_web*` dispatch layer are gone.
|
||||
- The previous Web narrowing step had already moved WebGL
|
||||
publish/flush/default-canvas/save-prepared-file behavior off the old
|
||||
`try_*legacy_web*` fallback path before this concrete Web service cut.
|
||||
- `src/platform_legacy/legacy_platform_services.*` no longer exposes the dead
|
||||
`pp::platform::legacy::platform_services()` singleton accessor.
|
||||
- Linux, WebGL, and Android were already on owned
|
||||
|
||||
@@ -53,8 +53,9 @@ Completed, blocked, and superseded task history moved to
|
||||
`PlatformServices` surface now binds directly from those Apple-owned files,
|
||||
and Android now also binds directly from
|
||||
`src/platform_android/android_platform_services.*`, and Linux now also
|
||||
binds directly from `src/platform_linux/linux_platform_services.*`, but the
|
||||
broader non-Windows fallback adapter still exists for Web plus generic
|
||||
binds directly from `src/platform_linux/linux_platform_services.*`, and Web
|
||||
now also binds directly from `src/platform_web/web_platform_services.*`,
|
||||
but the broader non-Windows fallback adapter still exists as generic
|
||||
fallback policy
|
||||
- `platform_legacy` is still part of the live app shell
|
||||
- The app runtime boundary is not finished:
|
||||
@@ -83,6 +84,20 @@ Completed, blocked, and superseded task history moved to
|
||||
the queue is now ordered by code movement instead.
|
||||
|
||||
Current slice:
|
||||
- `src/platform_web/web_platform_services.*` now owns the concrete Web
|
||||
`PlatformServices` implementation and `webgl/src/main.cpp` now binds that
|
||||
owned service directly at the WebGL entrypoint.
|
||||
- The touched Web storage-path setup, GLFW render-context acquire/present,
|
||||
app-close dispatch, prepared-file save handoff, persistent-storage flush,
|
||||
default render-target binding, and picker execution now route through
|
||||
`src/platform_web/web_platform_services.*` instead of the cross-platform
|
||||
fallback adapter.
|
||||
- `src/platform_legacy/legacy_platform_services.*` no longer carries the
|
||||
touched Web method branches or the retained `WebPlatformServices*`
|
||||
dependency, and `src/platform_legacy/legacy_platform_state.*` is gone.
|
||||
- `pp_platform_web` now exists as the concrete Web target in root CMake and is
|
||||
linked into `pp_platform_api_tests`, while `webgl/CMakeLists.txt` also
|
||||
compiles the concrete Web service directly for the retained WebGL app build.
|
||||
- `src/platform_linux/linux_platform_services.*` now owns the concrete Linux
|
||||
`PlatformServices` implementation and `create_platform_services(...)`
|
||||
instead of leaving the live Linux execution surface in `platform_legacy`.
|
||||
@@ -124,15 +139,9 @@ Current slice:
|
||||
document-service provider/configuration surface or the touched Apple method
|
||||
branches, so the retained fallback adapter is narrower and now focused on the
|
||||
Android/Linux/Web path.
|
||||
- `src/platform_legacy/legacy_platform_services.*` now takes an explicit
|
||||
`WebPlatformServices*` dependency through `create_platform_services(...)`
|
||||
instead of routing WebGL publish/flush/default-canvas/save-prepared-file
|
||||
behavior through retained `try_*legacy_web*` fallback helpers.
|
||||
- `webgl/src/main.cpp` now creates the owned Web service first and threads it
|
||||
directly into its owned legacy `PlatformServices` instance.
|
||||
- `src/platform_legacy/legacy_platform_state.*` is down to the retained Web
|
||||
service factory only; the old `active_legacy_web_platform_services()` and
|
||||
`try_*legacy_web*` dispatch layer are gone.
|
||||
- The previous Web narrowing step had already moved WebGL
|
||||
publish/flush/default-canvas/save-prepared-file behavior off the old
|
||||
`try_*legacy_web*` fallback path before this concrete Web service cut.
|
||||
- `src/platform_legacy/legacy_platform_services.*` no longer exposes the dead
|
||||
`pp::platform::legacy::platform_services()` singleton accessor.
|
||||
- Linux, WebGL, and Android were already on owned
|
||||
|
||||
Reference in New Issue
Block a user