[gnome-disk-utility] Set destroy_with_parent for all dialogs



commit c6e691472a759a90997ec4bc448624e61193278b
Author: David Zeuthen <davidz redhat com>
Date:   Mon Jan 23 13:58:03 2012 -0500

    Set destroy_with_parent for all dialogs
    
    Otherwise the dialogs will stay if you pick the "Quit" menu item from
    the application menu.
    
    Signed-off-by: David Zeuthen <davidz redhat com>

 data/ui/about-dialog.ui              |    1 +
 data/ui/change-passphrase-dialog.ui  |    1 +
 data/ui/create-disk-image-dialog.ui  |    1 +
 data/ui/create-partition-dialog.ui   |    1 +
 data/ui/edit-crypttab-dialog.ui      |    1 +
 data/ui/edit-dos-partition-dialog.ui |    1 +
 data/ui/edit-filesystem-dialog.ui    |    1 +
 data/ui/edit-fstab-dialog.ui         |    1 +
 data/ui/edit-gpt-partition-dialog.ui |    1 +
 data/ui/edit-partition-dialog.ui     |    1 +
 data/ui/format-disk-dialog.ui        |    1 +
 data/ui/format-volume-dialog.ui      |    1 +
 data/ui/restore-disk-image-dialog.ui |    1 +
 data/ui/smart-dialog.ui              |    1 +
 data/ui/unlock-device-dialog.ui      |    1 +
 src/palimpsest/gduapplication.c      |   11 +++--------
 16 files changed, 18 insertions(+), 8 deletions(-)
---
diff --git a/data/ui/about-dialog.ui b/data/ui/about-dialog.ui
index 2d05b7d..7ff9c81 100644
--- a/data/ui/about-dialog.ui
+++ b/data/ui/about-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">5</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <property name="program_name">Disks</property>
     <property name="copyright" translatable="yes">Copyright  2008-2012 Red Hat, Inc.
diff --git a/data/ui/change-passphrase-dialog.ui b/data/ui/change-passphrase-dialog.ui
index 6e1c8b7..0cdeff8 100644
--- a/data/ui/change-passphrase-dialog.ui
+++ b/data/ui/change-passphrase-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/create-disk-image-dialog.ui b/data/ui/create-disk-image-dialog.ui
index d0cd96e..d5d1efd 100644
--- a/data/ui/create-disk-image-dialog.ui
+++ b/data/ui/create-disk-image-dialog.ui
@@ -7,6 +7,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/create-partition-dialog.ui b/data/ui/create-partition-dialog.ui
index b40c1ed..7340c91 100644
--- a/data/ui/create-partition-dialog.ui
+++ b/data/ui/create-partition-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/edit-crypttab-dialog.ui b/data/ui/edit-crypttab-dialog.ui
index 2c9da25..4949797 100644
--- a/data/ui/edit-crypttab-dialog.ui
+++ b/data/ui/edit-crypttab-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">5</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox7">
diff --git a/data/ui/edit-dos-partition-dialog.ui b/data/ui/edit-dos-partition-dialog.ui
index d45696a..bc0998e 100644
--- a/data/ui/edit-dos-partition-dialog.ui
+++ b/data/ui/edit-dos-partition-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/edit-filesystem-dialog.ui b/data/ui/edit-filesystem-dialog.ui
index 400df52..6540cd7 100644
--- a/data/ui/edit-filesystem-dialog.ui
+++ b/data/ui/edit-filesystem-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox4">
diff --git a/data/ui/edit-fstab-dialog.ui b/data/ui/edit-fstab-dialog.ui
index c64aed5..2aa1767 100644
--- a/data/ui/edit-fstab-dialog.ui
+++ b/data/ui/edit-fstab-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">5</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox6">
diff --git a/data/ui/edit-gpt-partition-dialog.ui b/data/ui/edit-gpt-partition-dialog.ui
index 60d621c..60834e9 100644
--- a/data/ui/edit-gpt-partition-dialog.ui
+++ b/data/ui/edit-gpt-partition-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/edit-partition-dialog.ui b/data/ui/edit-partition-dialog.ui
index f9817b4..309c885 100644
--- a/data/ui/edit-partition-dialog.ui
+++ b/data/ui/edit-partition-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/format-disk-dialog.ui b/data/ui/format-disk-dialog.ui
index 5e1a95a..aa44d78 100644
--- a/data/ui/format-disk-dialog.ui
+++ b/data/ui/format-disk-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/format-volume-dialog.ui b/data/ui/format-volume-dialog.ui
index da635f0..1bf71d6 100644
--- a/data/ui/format-volume-dialog.ui
+++ b/data/ui/format-volume-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/restore-disk-image-dialog.ui b/data/ui/restore-disk-image-dialog.ui
index 609d9f1..ff3d464 100644
--- a/data/ui/restore-disk-image-dialog.ui
+++ b/data/ui/restore-disk-image-dialog.ui
@@ -7,6 +7,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/smart-dialog.ui b/data/ui/smart-dialog.ui
index b9d6470..762d55d 100644
--- a/data/ui/smart-dialog.ui
+++ b/data/ui/smart-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
diff --git a/data/ui/unlock-device-dialog.ui b/data/ui/unlock-device-dialog.ui
index 9343a31..aa4e42e 100644
--- a/data/ui/unlock-device-dialog.ui
+++ b/data/ui/unlock-device-dialog.ui
@@ -6,6 +6,7 @@
     <property name="border_width">12</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
+    <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox5">
diff --git a/src/palimpsest/gduapplication.c b/src/palimpsest/gduapplication.c
index fa80b0d..e7011ea 100644
--- a/src/palimpsest/gduapplication.c
+++ b/src/palimpsest/gduapplication.c
@@ -111,14 +111,7 @@ quit_activated (GSimpleAction *action,
                 gpointer       user_data)
 {
   GduApplication *app = GDU_APPLICATION (user_data);
-  GList *windows, *l;
-
-  windows = gtk_application_get_windows (GTK_APPLICATION (app));
-  for (l = windows; l != NULL; l = l->next)
-    {
-      GtkWindow *window = GTK_WINDOW (l->data);
-      gtk_widget_destroy (GTK_WIDGET (window));
-    }
+  gtk_widget_destroy (GTK_WIDGET (app->window));
 }
 
 static void
@@ -137,9 +130,11 @@ about_activated (GSimpleAction *action,
   gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (app->window));
   gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
   gtk_widget_show_all (dialog);
+  g_object_ref (dialog);
   gtk_dialog_run (GTK_DIALOG (dialog));
   gtk_widget_hide (dialog);
   gtk_widget_destroy (dialog);
+  g_object_unref (dialog);
 }
 
 static GActionEntry app_entries[] =



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