closing the window hides psensor instead of quitting when application indicator suppo...
[psensor.git] / src / ui.c
index 8b3bc03..a988fc6 100644 (file)
--- a/src/ui.c
+++ b/src/ui.c
 #include "cfg.h"
 #include "ui.h"
 
-void on_destroy(GtkWidget *widget, gpointer data)
+static gboolean
+on_delete_event_cb(GtkWidget *widget, GdkEvent *event, gpointer data)
 {
-       ui_psensor_exit();
+
+#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
+       gtk_widget_hide(((struct ui_psensor *)data)->main_window);
+#else
+       ui_psensor_quit();
+#endif
+
+       return TRUE;
 }
 
 void ui_psensor_exit()
@@ -65,7 +73,8 @@ GtkWidget *ui_window_create(struct ui_psensor * ui)
        else
                fprintf(stderr, _("ERROR: Failed to load psensor icon.\n"));
 
-       g_signal_connect(window, "destroy", G_CALLBACK(on_destroy), ui);
+       g_signal_connect(window,
+                        "delete_event", G_CALLBACK(on_delete_event_cb), ui);
 
        gtk_window_set_decorated(GTK_WINDOW(window),
                                 ui->config->window_decoration_enabled);