Route app input dispatch through app core
This commit is contained in:
@@ -840,6 +840,10 @@ Known local toolchain state:
|
||||
visibility, main UI suppression in VR-only mode, tick layout selection,
|
||||
resize render-target/redraw projection, invalid resize rejection, and redraw
|
||||
reset planning.
|
||||
- `pp_app_core_app_input_tests` covers pointer coordinate normalization,
|
||||
invalid pointer/gesture inputs, designer-first mouse routing, mouse-cancel
|
||||
routing, gesture midpoint/distance/delta math, main-layout routing, key state
|
||||
mutation intent, and VR spacebar camera-sync intent.
|
||||
- `pp_app_core_app_shutdown_tests` covers legacy shutdown cleanup staging for
|
||||
UI-state save, stroke-preview renderer shutdown, recording stop,
|
||||
texture/shader invalidation, layout unload, render-target/mesh destruction,
|
||||
|
||||
@@ -98,6 +98,13 @@ agent or engineer to remove them without reconstructing context from chat.
|
||||
`App::create`, `App::tick`, `App::resize`, `App::update`, `App::draw`, and
|
||||
`pano_cli plan-app-frame`; retained layout traversal, toolbar widget writes,
|
||||
render-target recreation, and OpenGL/UI drawing remain in the legacy app.
|
||||
- 2026-06-05: DEBT-0003 was narrowed. Pointer coordinate normalization,
|
||||
mouse designer-first routing, gesture midpoint/delta math, touch/key
|
||||
main-layout routing, and VR spacebar camera-sync intent are now tested
|
||||
`pp_app_core` input plans consumed by `App::mouse_*`, `App::gesture_*`,
|
||||
`App::touch_tap`, `App::key_*`, and `pano_cli plan-app-input`; retained
|
||||
`MouseEvent`/`GestureEvent`/`TouchEvent`/`KeyEvent` construction and legacy
|
||||
`Node` event dispatch remain in the app shell.
|
||||
- 2026-06-05: DEBT-0003 was narrowed again. Shutdown cleanup staging for
|
||||
UI-state save, stroke-preview renderer shutdown, recording stop,
|
||||
texture/shader invalidation, layout unload, UI render-target and face-plane
|
||||
|
||||
@@ -204,6 +204,12 @@ VR UI drawing, main UI drawing, and redraw reset now live in `pp_app_core`;
|
||||
`App::create`, `App::tick`, `App::resize`, `App::update`, `App::draw`, and
|
||||
`pano_cli plan-app-frame` consume those plans while retained layout traversal,
|
||||
render-target recreation, and OpenGL/UI drawing stay in the legacy app.
|
||||
App input dispatch decisions for pointer coordinate normalization, mouse
|
||||
designer-first routing, gesture midpoint/delta math, touch/key main-layout
|
||||
routing, and VR spacebar camera-sync intent now live in `pp_app_core`;
|
||||
`App::mouse_*`, `App::gesture_*`, `App::touch_tap`, `App::key_*`, and
|
||||
`pano_cli plan-app-input` consume those plans while retained event objects and
|
||||
legacy `Node` dispatch stay in the app shell.
|
||||
Shutdown lifecycle staging for UI-state save, stroke-preview renderer shutdown,
|
||||
recording stop, texture/shader invalidation, layout unload, render-target
|
||||
destruction, panel-node release, and quick-mode cleanup now lives in
|
||||
@@ -1667,6 +1673,13 @@ Results:
|
||||
`pano_cli_plan_app_frame_idle_missing_canvas_smoke`, with resize automation
|
||||
covered by `pano_cli_plan_app_frame_resize_smoke` and
|
||||
`pano_cli_plan_app_frame_rejects_bad_resize`.
|
||||
- `PanoPainter`, `pp_app_core_app_input_tests`, and `pano_cli` built after
|
||||
app input routing and normalization moved into `pp_app_core`.
|
||||
- Focused app-input CTest coverage passed for `pp_app_core_app_input_tests`,
|
||||
`pano_cli_plan_app_input_pointer_smoke`,
|
||||
`pano_cli_plan_app_input_gesture_smoke`,
|
||||
`pano_cli_plan_app_input_key_vr_smoke`, and
|
||||
`pano_cli_plan_app_input_rejects_bad_float`.
|
||||
- `PanoPainter`, `pp_app_core_app_shutdown_tests`, and `pano_cli` built after
|
||||
shutdown cleanup staging moved into `pp_app_core`.
|
||||
- Focused shutdown CTest coverage passed for `pp_app_core_app_shutdown_tests`,
|
||||
|
||||
Reference in New Issue
Block a user