[devhelp] Assistant: save GSettings only when needed



commit 0c08e672c2c39d07d531ba7888847de2cfd9a5ae
Author: Sébastien Wilmet <swilmet gnome org>
Date:   Tue Jan 23 19:22:37 2018 +0100

    Assistant: save GSettings only when needed
    
    DhApp cannot create more than one DhAssistant window, so there is
    nothing to do in DhApp (unlike for DhWindow).
    
    https://bugzilla.gnome.org/show_bug.cgi?id=786008
    https://bugzilla.gnome.org/show_bug.cgi?id=790902

 src/dh-assistant.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)
---
diff --git a/src/dh-assistant.c b/src/dh-assistant.c
index 231ef25..03aa937 100644
--- a/src/dh-assistant.c
+++ b/src/dh-assistant.c
@@ -56,17 +56,19 @@ dh_assistant_key_press_event (GtkWidget   *widget,
 }
 
 static gboolean
-dh_assistant_configure_event (GtkWidget         *widget,
-                              GdkEventConfigure *event)
+dh_assistant_delete_event (GtkWidget   *widget,
+                           GdkEventAny *event)
 {
         DhSettings *settings;
 
         settings = dh_settings_get_singleton ();
-
         dh_util_window_settings_save (GTK_WINDOW (widget),
                                       dh_settings_peek_assistant_settings (settings));
 
-        return GTK_WIDGET_CLASS (dh_assistant_parent_class)->configure_event (widget, event);
+        if (GTK_WIDGET_CLASS (dh_assistant_parent_class)->delete_event == NULL)
+                return GDK_EVENT_PROPAGATE;
+
+        return GTK_WIDGET_CLASS (dh_assistant_parent_class)->delete_event (widget, event);
 }
 
 static void
@@ -75,7 +77,7 @@ dh_assistant_class_init (DhAssistantClass *klass)
         GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
         widget_class->key_press_event = dh_assistant_key_press_event;
-        widget_class->configure_event = dh_assistant_configure_event;
+        widget_class->delete_event = dh_assistant_delete_event;
 
         /* Bind class to template */
         gtk_widget_class_set_template_from_resource (widget_class,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]