Centralize retained service dialog closing

This commit is contained in:
2026-06-12 15:57:53 +02:00
parent bc3d348632
commit b32ad1b720
5 changed files with 10 additions and 3 deletions

View File

@@ -33,7 +33,7 @@ std::shared_ptr<NodeMessageBox> create_legacy_app_message_dialog(
if (plan.show_cancel)
message->btn_cancel->m_text->set_text(plan.cancel_caption.c_str());
else
message->btn_cancel->destroy();
close_legacy_dialog_node(*message->btn_cancel);
(void)attach_legacy_overlay_node(app, message);
return message;
}

View File

@@ -5,6 +5,7 @@
#include "action.h"
#include "app.h"
#include "legacy_document_canvas_services.h"
#include "legacy_ui_overlay_services.h"
namespace pp::panopainter {
namespace {
@@ -71,7 +72,7 @@ public:
void finish_layer_rename() override
{
if (dialog_)
dialog_->destroy();
pp::panopainter::close_legacy_dialog_node(*dialog_);
app_.hideKeyboard();
}

View File

@@ -5,6 +5,7 @@
#include "app.h"
#include "canvas.h"
#include "legacy_app_dialog_services.h"
#include "legacy_ui_overlay_services.h"
#include "node_progress_bar.h"
namespace pp::panopainter {
@@ -64,7 +65,7 @@ public:
void end_export() override
{
if (progress_)
progress_->destroy();
pp::panopainter::close_legacy_dialog_node(*progress_);
progress_ = nullptr;
}