diff options
author | mbkma <[email protected]> | 2021-04-24 19:45:10 +0200 |
---|---|---|
committer | raveit65 <[email protected]> | 2021-05-09 19:09:50 +0200 |
commit | 0b648d5782a9b6f050e6552bf62700495e161835 (patch) | |
tree | c9185497e98f3593f6243afb8466acffbd1e2de8 /src/callbacks.cpp | |
parent | c12b68367de45f1f7c28a9517a3e610873d2b9e4 (diff) | |
download | mate-system-monitor-0b648d5782a9b6f050e6552bf62700495e161835.tar.bz2 mate-system-monitor-0b648d5782a9b6f050e6552bf62700495e161835.tar.xz |
port to GtkApplication
see https://gitlab.gnome.org/GNOME/gnome-system-monitor/-/commit/aa625d19e7b72587f70fb18dc3dcfcdba528533e
Diffstat (limited to 'src/callbacks.cpp')
-rw-r--r-- | src/callbacks.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/callbacks.cpp b/src/callbacks.cpp index 090f1e5..852a1e0 100644 --- a/src/callbacks.cpp +++ b/src/callbacks.cpp @@ -264,6 +264,7 @@ cb_app_exit (GtkAction *action, gpointer data) ProcData * const procdata = static_cast<ProcData*>(data); cb_app_delete (NULL, NULL, procdata); + gtk_widget_destroy (procdata->app); } @@ -278,9 +279,9 @@ cb_app_delete (GtkWidget *window, GdkEventAny *event, gpointer data) if (procdata->disk_timeout) g_source_remove (procdata->disk_timeout); - gtk_main_quit (); + procdata->terminating = TRUE; - return TRUE; + return FALSE; } @@ -497,16 +498,17 @@ cb_timeout (gpointer data) ProcData * const procdata = static_cast<ProcData*>(data); guint new_interval; - proctable_update (procdata); + if (!procdata->terminating) { + proctable_update (procdata); - if (procdata->smooth_refresh->get(new_interval)) - { - procdata->timeout = g_timeout_add(new_interval, - cb_timeout, - procdata); - return FALSE; + if (procdata->smooth_refresh->get(new_interval)) + { + procdata->timeout = g_timeout_add(new_interval, + cb_timeout, + procdata); + return FALSE; + } } - return TRUE; } |