Move layout reload policy into platform api

This commit is contained in:
2026-06-04 18:49:48 +02:00
parent 7aadd1041a
commit 08d8c1e82c
9 changed files with 118 additions and 14 deletions

View File

@@ -650,6 +650,9 @@ file display, file sharing, recording file cleanup, live asset/layout reload
policy, diagnostic stacktrace/crash hooks, SonarPen availability/startup,
VR mode start/stop,
image/file/save-file pickers, and directory pickers.
It also owns the SDK-free layout/asset file load policy helper used by
`LayoutManager`, so XML layout hot-reload timestamp checks no longer live in
the shared UI parser.
Windows installs an injected `WindowsPlatformServices` implementation from
`src/platform_windows/windows_platform_services.*` in `pp_platform_windows`;
other platforms still route through the debt-tracked legacy fallback adapter
@@ -786,6 +789,9 @@ guards from `App::rec_clear`.
The UI loop now asks `PlatformServices` whether live shader/layout reloading
should run, preserving the previous Windows/macOS reload behavior while removing
the direct `(_WIN32 || __OSX__)` guard from `App::ui_thread_main`.
Layout XML reload read/skip decisions now go through `pp_platform_api` as well,
preserving desktop mtime-based reloads and non-desktop single-load behavior
while removing the direct Windows/macOS guard from `LayoutManager::load`.
`App::stacktrace` and `App::crash_test` now dispatch through `PlatformServices`,
with Windows retaining the debug-break crash hook and the legacy adapter
preserving Apple stacktrace/crash and Android crash-test behavior.
@@ -1766,6 +1772,7 @@ Results:
collection policy dispatch, network TLS verification policy dispatch,
default network TLS policy coverage, PPBR export data-directory policy
dispatch, SonarPen availability/startup dispatch, VR lifecycle dispatch,
layout/asset file load policy coverage,
live asset/layout reload policy dispatch,
diagnostic hook dispatch, per-frame platform hook dispatch, picker callback
dispatch, and prepared-file save/download callback dispatch. The live Windows