Extract Windows platform services

This commit is contained in:
2026-06-03 04:20:14 +02:00
parent ead7f58285
commit 6369c3c969
7 changed files with 244 additions and 220 deletions

View File

@@ -472,9 +472,10 @@ before retained platform clipboard bridges continue.
clipboard text, cursor visibility, virtual-keyboard visibility, external file
display, file sharing, image/file/save-file pickers, and directory pickers.
Windows installs an injected `WindowsPlatformServices` implementation from
`pp_platform_windows`; other platforms still route through the debt-tracked
legacy fallback adapter in `app_events.cpp`, so behavior is preserved while
their platform shell implementations are extracted. The iOS/Web
`src/platform_windows/windows_platform_services.*` in `pp_platform_windows`;
other platforms still route through the debt-tracked legacy fallback adapter
in `app_events.cpp`, so behavior is preserved while their platform shell
implementations are extracted. The iOS/Web
save-with-writer overload remains separate because it writes a
temporary/exported file before handing control to the platform.
`pano_cli plan-cloud-upload` exposes the app-core cloud upload decision used by
@@ -992,8 +993,9 @@ Results:
visibility dispatch, virtual-keyboard visibility dispatch, external file
display dispatch, file sharing dispatch, and picker callback dispatch. The
live Windows app now consumes this interface through an injected
`WindowsPlatformServices` instance owned by `pp_platform_windows`; other
platforms still use the legacy fallback adapter.
`WindowsPlatformServices` instance isolated in
`src/platform_windows/windows_platform_services.*`; other platforms still
use the legacy fallback adapter.
- `panopainter_validate_shaders` passed, validating 25 shader programs and 7
shader includes for stage markers and include graph integrity.
- `pp_renderer_gl_capabilities_tests` passed on default MSVC, vcpkg-headless,