[gnome-control-center] printers: Set transient window externally to dialog code



commit 3a027bddd09cbec97d8cc5e791ca1249c71add8f
Author: Robert Ancell <robert ancell canonical com>
Date:   Fri Nov 23 13:41:05 2018 +1300

    printers: Set transient window externally to dialog code

 panels/printers/pp-details-dialog.c | 12 +++++-------
 panels/printers/pp-details-dialog.h | 11 +++++------
 panels/printers/pp-printer-entry.c  |  4 +++-
 3 files changed, 13 insertions(+), 14 deletions(-)
---
diff --git a/panels/printers/pp-details-dialog.c b/panels/printers/pp-details-dialog.c
index e4613de8f..abf20cb01 100644
--- a/panels/printers/pp-details-dialog.c
+++ b/panels/printers/pp-details-dialog.c
@@ -417,19 +417,17 @@ pp_details_dialog_class_init (PpDetailsDialogClass *klass)
 }
 
 PpDetailsDialog *
-pp_details_dialog_new (GtkWindow            *parent,
-                       gchar                *printer_name,
-                       gchar                *printer_location,
-                       gchar                *printer_address,
-                       gchar                *printer_make_and_model,
-                       gboolean              sensitive)
+pp_details_dialog_new (gchar   *printer_name,
+                       gchar   *printer_location,
+                       gchar   *printer_address,
+                       gchar   *printer_make_and_model,
+                       gboolean sensitive)
 {
   PpDetailsDialog *self;
   g_autofree gchar *title = NULL;
   g_autofree gchar *printer_url = NULL;
 
   self = g_object_new (PP_DETAILS_DIALOG_TYPE,
-                       "transient-for", parent,
                        "use-header-bar", TRUE,
                        NULL);
 
diff --git a/panels/printers/pp-details-dialog.h b/panels/printers/pp-details-dialog.h
index ec6154b88..76ce553ef 100644
--- a/panels/printers/pp-details-dialog.h
+++ b/panels/printers/pp-details-dialog.h
@@ -28,11 +28,10 @@ G_BEGIN_DECLS
 #define PP_DETAILS_DIALOG_TYPE (pp_details_dialog_get_type ())
 G_DECLARE_FINAL_TYPE (PpDetailsDialog, pp_details_dialog, PP, DETAILS_DIALOG, GtkDialog)
 
-PpDetailsDialog *pp_details_dialog_new      (GtkWindow            *parent,
-                                             gchar                *printer_name,
-                                             gchar                *printer_location,
-                                             gchar                *printer_address,
-                                             gchar                *printer_make_and_model,
-                                             gboolean              sensitive);
+PpDetailsDialog *pp_details_dialog_new      (gchar   *printer_name,
+                                             gchar   *printer_location,
+                                             gchar   *printer_address,
+                                             gchar   *printer_make_and_model,
+                                             gboolean sensitive);
 
 G_END_DECLS
diff --git a/panels/printers/pp-printer-entry.c b/panels/printers/pp-printer-entry.c
index b0ffb0f7c..1f440c666 100644
--- a/panels/printers/pp-printer-entry.c
+++ b/panels/printers/pp-printer-entry.c
@@ -430,13 +430,15 @@ on_show_printer_details_dialog (GtkButton      *button,
                                 PpPrinterEntry *self)
 {
   self->pp_details_dialog = pp_details_dialog_new (
-    GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self))),
     self->printer_name,
     self->printer_location,
     self->printer_hostname,
     self->printer_make_and_model,
     self->is_authorized);
 
+  gtk_window_set_transient_for (GTK_WINDOW (self->pp_details_dialog),
+                                GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self))));
+
   g_signal_connect (self->pp_details_dialog, "response", G_CALLBACK (details_dialog_cb), self);
   g_signal_connect (self->pp_details_dialog, "printer-renamed", G_CALLBACK (printer_renamed_cb), self);
   gtk_widget_show (GTK_WIDGET (self->pp_details_dialog));


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