summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ui/dialog/dialog.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/ui/dialog/dialog.cpp b/src/ui/dialog/dialog.cpp
index 2f60856dc..b28805367 100644
--- a/src/ui/dialog/dialog.cpp
+++ b/src/ui/dialog/dialog.cpp
@@ -311,7 +311,7 @@ Dialog::_getSelection()
return SP_ACTIVE_DESKTOP->getSelection();
}
-void sp_add_top_window_classes(Gtk::Widget *widg)
+void sp_add_top_window_classes_callback(Gtk::Widget *widg)
{
SPDesktop *desktop = SP_ACTIVE_DESKTOP;
if (desktop) {
@@ -322,7 +322,7 @@ void sp_add_top_window_classes(Gtk::Widget *widg)
if (!current_window) {
current_window = dynamic_cast<Gtk::Window *>(widg->get_toplevel());
}
- if (current_window) {
+ if (current_window) {
if (toplevel_window->get_style_context()->has_class("dark")) {
current_window->get_style_context()->add_class("dark");
current_window->get_style_context()->remove_class("bright");
@@ -342,6 +342,13 @@ void sp_add_top_window_classes(Gtk::Widget *widg)
}
}
+void sp_add_top_window_classes(Gtk::Widget *widg)
+{
+ if (widg) {
+ widg->signal_realize().connect(sigc::bind(sigc::ptr_fun(&sp_add_top_window_classes_callback), widg));
+ }
+}
+
} // namespace Dialog
} // namespace UI
} // namespace Inkscape