Own Android platform services and narrow legacy fallback

This commit is contained in:
2026-06-17 14:53:49 +02:00
parent 74abddd81e
commit 1e9235cb6a
11 changed files with 417 additions and 109 deletions

View File

@@ -70,6 +70,20 @@ What is already real:
- `pp_app_core`
Latest slice:
- `src/platform_android/android_platform_services.*` now owns the concrete
Android `PlatformServices` implementation and `create_platform_services()`
instead of leaving the live Android execution surface inside
`platform_legacy`.
- `android/src/cpp/main.cpp` now binds that owned Android `PlatformServices`
instance into `App` directly at the Android entrypoint.
- The touched Android clipboard, keyboard visibility, JNI thread
attach/detach, async render-context, and file-picker execution now route
through `src/platform_android/android_platform_services.*` instead of the
cross-platform fallback adapter.
- `src/platform_legacy/legacy_platform_services.*` no longer carries the
Android bridge/configuration surface or the touched Android method branches,
so the retained fallback adapter is narrower again and now focused on the
Linux/Web path plus generic fallback policy.
- `src/platform_apple/apple_platform_services.*` now owns the concrete Apple
`PlatformServices` implementation plus the `create_apple_platform_services()`
factory instead of leaving the live Apple execution surface inside
@@ -86,15 +100,6 @@ 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
Android bridge through `create_platform_services(...)` instead of declaring
Android JNI/EGL/clipboard/file-picker hooks directly inside the legacy
adapter.
- `android/src/cpp/main.cpp` now seeds that Android-owned bridge into its
owned legacy `PlatformServices` instance.
- The touched Android clipboard, keyboard visibility, JNI thread attach/detach,
async render-context, and file-picker ownership now sit at the Android
entrypoint instead of the cross-platform fallback adapter body.
- `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