Route video export start through app core

This commit is contained in:
2026-06-02 23:27:41 +02:00
parent 561193b2ab
commit 6e3296469a
3 changed files with 10 additions and 3 deletions

View File

@@ -416,8 +416,8 @@ Known local toolchain state:
- `pano_cli plan-export-start` exposes `pp_app_core` export availability - `pano_cli plan-export-start` exposes `pp_app_core` export availability
planning for license-gated, demo-blocked, and missing-canvas states as JSON; planning for license-gated, demo-blocked, and missing-canvas states as JSON;
the live image, layer, animation-frame, depth, and cube-face export dialogs the live image, layer, animation-frame, depth, and cube-face export dialogs
consume the same start contract before reaching legacy canvas export plus MP4 animation and timelapse export dialogs consume the same start
execution. contract before reaching legacy canvas/recording export execution.
- `pano_cli simulate-app-session` exposes `pp_app_core` project-open, - `pano_cli simulate-app-session` exposes `pp_app_core` project-open,
app-close, save, save-as, save-version, and save-before-workflow decisions app-close, save, save-as, save-version, and save-before-workflow decisions
as JSON and is covered for clean, dirty, already-prompting, missing-canvas, as JSON and is covered for clean, dirty, already-prompting, missing-canvas,

View File

@@ -442,7 +442,8 @@ equirectangular image files, layer/frame collection stems, picked-directory
stems, and MP4 suggested names used by the live export dialogs. stems, and MP4 suggested names used by the live export dialogs.
`pano_cli plan-export-start` exposes the app-core export availability decision `pano_cli plan-export-start` exposes the app-core export availability decision
used by live image, layer, animation-frame, depth, and cube-face export dialogs used by live image, layer, animation-frame, depth, and cube-face export dialogs
before they call legacy canvas export execution. plus MP4 animation and timelapse export dialogs before they call legacy
canvas/recording export execution.
`pano_cli parse-layout` exercises the XML layout path. Continue expanding `pano_cli parse-layout` exercises the XML layout path. Continue expanding
document behavior toward legacy Canvas parity and then port OpenGL classes document behavior toward legacy Canvas parity and then port OpenGL classes
behind the renderer boundary. behind the renderer boundary.

View File

@@ -680,6 +680,9 @@ void App::dialog_ppbr_export()
void App::dialog_timelapse_export() void App::dialog_timelapse_export()
{ {
if (!can_start_document_export(*this, false))
return;
#if __IOS__ || __WEB__ #if __IOS__ || __WEB__
const auto target = pp::app::make_document_export_suggested_name(doc_name, "-timelapse"); const auto target = pp::app::make_document_export_suggested_name(doc_name, "-timelapse");
if (!target) { if (!target) {
@@ -708,6 +711,9 @@ void App::dialog_timelapse_export()
void App::dialog_export_mp4() void App::dialog_export_mp4()
{ {
if (!can_start_document_export(*this, false))
return;
#if __IOS__ || __WEB__ #if __IOS__ || __WEB__
const auto target = pp::app::make_document_export_suggested_name(doc_name, "-animation"); const auto target = pp::app::make_document_export_suggested_name(doc_name, "-animation");
if (!target) { if (!target) {