]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkwindow.c
small doc fixes.
[~andy/gtk] / gtk / gtkwindow.c
index d10f9ec5fe07801208bc84d90367dc53c7e80853..1c12218f663d6178a9da3e81ee512eae80efc405 100644 (file)
@@ -1724,6 +1724,14 @@ gtk_window_transient_parent_unrealized (GtkWidget *parent,
                         gdk_atom_intern ("WM_TRANSIENT_FOR", FALSE));
 }
 
+static void
+gtk_window_transient_parent_screen_changed (GtkWindow  *parent,
+                                           GParamSpec  *pspec,
+                                           GtkWindow   *window)
+{
+  gtk_window_set_screen (window, parent->screen);
+}
+
 static void       
 gtk_window_unset_transient_for  (GtkWindow *window)
 {
@@ -1735,6 +1743,9 @@ gtk_window_unset_transient_for  (GtkWindow *window)
       g_signal_handlers_disconnect_by_func (window->transient_parent,
                                            gtk_window_transient_parent_unrealized,
                                            window);
+      g_signal_handlers_disconnect_by_func (window->transient_parent,
+                                           gtk_window_transient_parent_screen_changed,
+                                           window);
       g_signal_handlers_disconnect_by_func (window->transient_parent,
                                            gtk_widget_destroyed,
                                            &window->transient_parent);
@@ -1797,8 +1808,11 @@ gtk_window_set_transient_for  (GtkWindow *window,
       g_signal_connect (parent, "unrealize",
                        G_CALLBACK (gtk_window_transient_parent_unrealized),
                        window);
+      g_signal_connect (parent, "notify::screen",
+                       G_CALLBACK (gtk_window_transient_parent_screen_changed),
+                       window);
       
-      window->screen = parent->screen;
+      gtk_window_set_screen (window, parent->screen);
 
       if (window->destroy_with_parent)
         connect_parent_destroyed (window);
@@ -2711,7 +2725,7 @@ gtk_window_set_default_icon_list (GList *list)
  *
  * Sets an icon to be used as fallback for windows that haven't
  * had gtk_window_set_icon_list() called on them from a file
- * on disk. Warns on failure if @error is %NULL.
+ * on disk. Warns on failure if @err is %NULL.
  *
  * Returns: %TRUE if setting the icon succeeded.
  **/