Plan app dialog factories

This commit is contained in:
2026-06-05 07:36:56 +02:00
parent a79ef4cda8
commit 062fdaa982
9 changed files with 374 additions and 12 deletions

View File

@@ -198,6 +198,13 @@ and floating-point render targets; `App::title_update`,
`App::update_memory_usage`, `App::update_rec_frames`, resolution helpers,
`App::initLayout`, and `pano_cli plan-app-status` consume those contracts while
legacy UI nodes still render the strings and status lights.
App-level progress, message, and input dialog metadata now also lives in
`pp_app_core` through `plan_app_progress_dialog`,
`plan_app_message_dialog`, and `plan_app_input_dialog`; `App::show_progress`,
`App::message_box`, `App::input_box`, and `pano_cli plan-app-dialog` consume
those plans before retained `NodeProgressBar`, `NodeMessageBox`, and
`NodeInputBox` creation. Legacy dialog node lifetime/layout ownership remains
tracked under `DEBT-0058`.
Frame-level app decisions for the initial surface size, redraw/animation update
gating, layout ticking, resize render-target recreation, canvas-stroke drawing,
VR UI drawing, main UI drawing, UI observer clipping/on-screen transition/scissor
@@ -1691,6 +1698,15 @@ Results:
- Focused preference CTest coverage passed for
`pp_app_core_app_preferences_tests` and the app-preferences CLI smoke tests
after the live bridge split, including VR mode failed-start status coverage.
- `PanoPainter`, `pp_app_core_app_dialog_tests`, and `pano_cli` built after
progress/message/input dialog metadata moved into `pp_app_core` while live
`App` factories kept retained `Node*` creation.
- Focused app-dialog CTest coverage passed for
`pp_app_core_app_dialog_tests` and the `pano_cli_plan_app_dialog_*` smoke
tests, including negative progress-total clamping and rejected empty
input-dialog OK captions.
- Android arm64 headless `pp_app_core`, `pano_cli`, and
`pp_app_core_app_dialog_tests` built after the app-dialog planning slice.
- `PanoPainter`, `pp_app_core_app_startup_tests`, and `pano_cli` built after
startup preference/runtime execution and startup resource sequencing moved
behind app startup services.