From ad1cfebedd0fb04aeaa7fdba7a3654b8f5db8196 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Thu, 16 May 2019 12:06:23 -0700 Subject: [PATCH] sysprof: close window on last ctrl+w if empty --- src/sysprof/sysprof-window.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/sysprof/sysprof-window.c b/src/sysprof/sysprof-window.c index 2cd261d1..d47eff9b 100644 --- a/src/sysprof/sysprof-window.c +++ b/src/sysprof/sysprof-window.c @@ -83,9 +83,24 @@ close_tab_cb (GSimpleAction *action, gpointer user_data) { SysprofWindow *self = user_data; + GtkNotebook *notebook; g_return_if_fail (SYSPROF_IS_WINDOW (self)); + notebook = GTK_NOTEBOOK (self->notebook); + + if (gtk_notebook_get_n_pages (notebook) == 1) + { + GtkWidget *child = gtk_notebook_get_nth_page (notebook, 0); + + if (SYSPROF_IS_DISPLAY (child) && + sysprof_display_is_empty (SYSPROF_DISPLAY (child))) + { + gtk_widget_destroy (GTK_WIDGET (self)); + return; + } + } + sysprof_notebook_close_current (self->notebook); }