diff options
Diffstat (limited to 'main/gnome-system-monitor/009-add-close-button.patch')
-rw-r--r-- | main/gnome-system-monitor/009-add-close-button.patch | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/main/gnome-system-monitor/009-add-close-button.patch b/main/gnome-system-monitor/009-add-close-button.patch new file mode 100644 index 0000000000..7aa47209e8 --- /dev/null +++ b/main/gnome-system-monitor/009-add-close-button.patch @@ -0,0 +1,79 @@ +From 00eb83fdbc5a6b6d5369b59b00a13293b1981b4f Mon Sep 17 00:00:00 2001 +From: Chris Kühl <chrisk@openismus.com> +Date: Wed, 02 Mar 2011 23:00:58 +0000 +Subject: Added close button to memory map dialog. + +https://bugzilla.gnome.org/show_bug.cgi?id=592758 +--- +diff --git a/src/memmaps.cpp b/src/memmaps.cpp +index 67255d1..ae8ef1c 100644 +--- a/src/memmaps.cpp ++++ b/src/memmaps.cpp +@@ -316,14 +316,15 @@ update_memmaps_dialog (MemMapsData *mmdata) + + + +-static gboolean window_delete_event(GtkWidget *, GdkEvent *, gpointer data) ++static void ++dialog_response (GtkDialog * dialog, gint response_id, gpointer data) + { + MemMapsData * const mmdata = static_cast<MemMapsData*>(data); + + g_source_remove (mmdata->timer); + + delete mmdata; +- return FALSE; ++ gtk_widget_destroy (GTK_WIDGET (dialog)); + } + + +@@ -463,26 +464,16 @@ create_single_memmaps_dialog (GtkTreeModel *model, GtkTreePath *path, + mmdata = create_memmapsdata (procdata); + mmdata->info = info; + +- memmapsdialog = gtk_window_new(GTK_WINDOW_TOPLEVEL); +- gtk_window_set_transient_for(GTK_WINDOW(memmapsdialog), GTK_WINDOW(procdata->app)); +- gtk_window_set_destroy_with_parent(GTK_WINDOW(memmapsdialog), TRUE); +- // gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); +- gtk_window_set_title(GTK_WINDOW(memmapsdialog), _("Memory Maps")); ++ memmapsdialog = gtk_dialog_new_with_buttons (_("Memory Maps"), GTK_WINDOW (procdata->app), ++ GTK_DIALOG_DESTROY_WITH_PARENT, ++ GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, ++ NULL); + gtk_window_set_resizable(GTK_WINDOW(memmapsdialog), TRUE); + gtk_window_set_default_size(GTK_WINDOW(memmapsdialog), 575, 400); +- gtk_container_set_border_width(GTK_CONTAINER(memmapsdialog), 12); +- +- GtkWidget *mainbox = gtk_vbox_new(FALSE, 12); +- gtk_container_add(GTK_CONTAINER(memmapsdialog), mainbox); +- +- vbox = mainbox; +- gtk_box_set_spacing (GTK_BOX (vbox), 2); +- gtk_container_set_border_width (GTK_CONTAINER (vbox), 5); ++ gtk_container_set_border_width(GTK_CONTAINER(memmapsdialog), 5); + +- dialog_vbox = gtk_vbox_new (FALSE, 6); ++ dialog_vbox = gtk_dialog_get_content_area (GTK_DIALOG(memmapsdialog)); + gtk_container_set_border_width (GTK_CONTAINER (dialog_vbox), 5); +- gtk_box_pack_start (GTK_BOX (vbox), dialog_vbox, TRUE, TRUE, 0); +- + + label = procman_make_label_for_mmaps_or_ofiles ( + _("_Memory maps for process \"%s\" (PID %u):"), +@@ -504,11 +495,10 @@ create_single_memmaps_dialog (GtkTreeModel *model, GtkTreePath *path, + + gtk_box_pack_start (GTK_BOX (dialog_vbox), scrolled, TRUE, TRUE, 0); + +- gtk_widget_show_all (memmapsdialog); +- +- g_signal_connect(G_OBJECT(memmapsdialog), "delete-event", +- G_CALLBACK(window_delete_event), mmdata); ++ g_signal_connect(G_OBJECT(memmapsdialog), "response", ++ G_CALLBACK(dialog_response), mmdata); + ++ gtk_widget_show_all (memmapsdialog); + mmdata->timer = g_timeout_add_seconds (5, memmaps_timer, mmdata); + + update_memmaps_dialog (mmdata); +-- +cgit v0.9 |