Centralize retained delete confirmation closing

This commit is contained in:
2026-06-12 15:53:08 +02:00
parent 94ce1aec92
commit 08f6515468
5 changed files with 8 additions and 3 deletions

View File

@@ -531,6 +531,9 @@ agent or engineer to remove them without reconstructing context from chat.
- 2026-06-12: DEBT-0063/DEBT-0058 were narrowed again. Browse accept, resize
accept/failure, and what's-new read-later/close callbacks now route retained
dialog destruction through `src/legacy_ui_overlay_services.*`.
- 2026-06-12: DEBT-0063/DEBT-0058 were narrowed again. Open/Browse
delete-confirmation message boxes and shared destroy-on-click bindings now
use the retained dialog close helper in `src/legacy_ui_overlay_services.*`.
- 2026-06-05: DEBT-0011 was narrowed. The Windows app package smoke target now
passes the configure-time CMake executable into `package-smoke.ps1`, so VS
2026 generator validation does not depend on an older `cmake` on PATH, and

View File

@@ -506,6 +506,8 @@ App-level new-document, save, and layer-rename cancel callbacks now share the
retained dialog close plus virtual-keyboard hide helper.
Browse accept, resize accept/failure, and what's-new read-later/close callbacks
now use a named retained dialog close helper instead of direct `destroy()` calls.
Open/Browse delete-confirmation message boxes and shared destroy-on-click
bindings now use that same retained dialog close helper.
Raw popup callback captures and full close/capture ownership remain part of
`DEBT-0063`.
`pano_cli inspect-image` exposes PNG IHDR metadata as JSON,

View File

@@ -80,7 +80,7 @@ template <class ButtonT>
void bind_legacy_click_destroys_node(ButtonT& button, Node& target) noexcept
{
button.on_click = [&target](Node*) {
target.destroy();
close_legacy_dialog_node(target);
};
}

View File

@@ -59,7 +59,7 @@ void NodeDialogBrowse::init_controls()
selected_name = "";
}
Asset::delete_file(path);
msgbox->destroy();
pp::panopainter::close_legacy_dialog_node(*msgbox);
};
(void)pp::panopainter::attach_legacy_overlay_node_to_root(*this, msgbox);
root()->update();

View File

@@ -60,7 +60,7 @@ void NodeDialogOpen::init_controls()
image_tex->tex.reset();
}
Asset::delete_file(path);
msgbox->destroy();
pp::panopainter::close_legacy_dialog_node(*msgbox);
};
(void)pp::panopainter::attach_legacy_overlay_node_to_root(*this, msgbox);
root()->update();