[niepce] gtk4: Fix preference dialog
- From: Hubert Figuière <hub src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [niepce] gtk4: Fix preference dialog
- Date: Sat, 15 Oct 2022 05:58:17 +0000 (UTC)
commit bcf236a4f58acbafd30b2166856b08a218cf6cba
Author: Hubert Figuière <hub figuiere net>
Date: Sat Oct 15 01:47:27 2022 -0400
gtk4: Fix preference dialog
src/fwk/toolkit/dialog.cpp | 1 +
src/niepce/ui/niepceapplication.cpp | 8 ++++++--
2 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/src/fwk/toolkit/dialog.cpp b/src/fwk/toolkit/dialog.cpp
index 972eac89..b680d293 100644
--- a/src/fwk/toolkit/dialog.cpp
+++ b/src/fwk/toolkit/dialog.cpp
@@ -47,6 +47,7 @@ void Dialog::run_modal(const Frame::Ptr& parent, std::function<void(int)> on_ok)
gtkDialog().set_transient_for(parent->gtkWindow());
gtkDialog().set_default_response(Gtk::ResponseType::CLOSE);
gtkDialog().set_modal();
+ gtkDialog().set_hide_on_close(true);
gtkDialog().signal_response().connect(on_ok);
gtkDialog().show();
DBG_OUT("dialog shown");
diff --git a/src/niepce/ui/niepceapplication.cpp b/src/niepce/ui/niepceapplication.cpp
index efafc2e7..733cd5dd 100644
--- a/src/niepce/ui/niepceapplication.cpp
+++ b/src/niepce/ui/niepceapplication.cpp
@@ -90,8 +90,12 @@ void NiepceApplication::on_action_preferences()
DBG_OUT("on_preferences");
auto dlg(new PreferencesDialog());
- dlg->run_modal(AppFrame::Ptr(m_main_frame));
-
+ dlg->run_modal(AppFrame::Ptr(m_main_frame),
+ [dlg] (int) {
+ delete dlg;
+ DBG_OUT("destroyed pref dialog");
+ return false;
+ });
DBG_OUT("end on_preferences");
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]