Extract tools menu planning

This commit is contained in:
2026-06-03 12:15:57 +02:00
parent fb844f79fd
commit c640519772
8 changed files with 651 additions and 51 deletions

File diff suppressed because one or more lines are too long

View File

@@ -538,6 +538,13 @@ legacy `ActionManager` stack execution continues.
slot selection versus popup opening, plus quick mini-state restore/reset
validation used by the live quick panel before legacy `Brush`, color picker,
stroke preview, and preset popup execution continue.
`pano_cli plan-tools-menu` and `pano_cli plan-tools-panel` expose app-core
planning for top-level Tools commands and floating-panel requests, including
already-visible no-ops, panel chrome metadata, shortcuts, camera reset,
grid-clear, and platform-only SonarPen gating before legacy UI/panel/canvas
execution continues. The live animation panel route now also checks animation
panel visibility and applies animation panel layout state instead of using the
grid panel by mistake.
`pp_platform_api` now owns a headless `PlatformServices` interface for
startup storage path preparation, clipboard text, cursor visibility,
virtual-keyboard visibility, UI-thread lifecycle hooks, render-context
@@ -1256,6 +1263,16 @@ Results:
`pano_cli_plan_quick_operation_rejects_bad_slot`, and
`pano_cli_plan_quick_operation_rejects_bad_restore` passed and expose live
quick-panel planning as JSON automation.
- `pp_app_core_tools_menu_tests` passed, covering Tools submenu routing,
root-closing commands, platform-only SonarPen gating, floating panel chrome
metadata, already-visible panel no-ops, and animation panel non-droppable
state.
- `pano_cli_plan_tools_menu_shortcuts_smoke`,
`pano_cli_plan_tools_menu_sonarpen_unavailable_smoke`,
`pano_cli_plan_tools_panel_layers_smoke`,
`pano_cli_plan_tools_panel_visible_noop_smoke`, and
`pano_cli_plan_tools_panel_rejects_unknown` passed and expose live Tools
menu/panel planning as JSON automation.
- `pp_app_core_document_sharing_tests` passed, covering saved-path gating before
platform share execution.
- `pano_cli_plan_share_file_unsaved_smoke` and