Avoid warnings if gtk_widget_reparent() is called at unusual times.

2005-03-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
	Avoid warnings if gtk_widget_reparent() is called at
	unusual times.  (#168966, Christian Persch)
This commit is contained in:
Matthias Clasen 2005-03-03 06:40:53 +00:00 committed by Matthias Clasen
parent aad5057b51
commit d74feca09e
4 changed files with 36 additions and 12 deletions

View File

@ -1,3 +1,9 @@
2005-03-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
Avoid warnings if gtk_widget_reparent() is called at
unusual times. (#168966, Christian Persch)
Tue Mar 1 14:04:08 2005 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid

View File

@ -1,3 +1,9 @@
2005-03-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
Avoid warnings if gtk_widget_reparent() is called at
unusual times. (#168966, Christian Persch)
Tue Mar 1 14:04:08 2005 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid

View File

@ -1,3 +1,9 @@
2005-03-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
Avoid warnings if gtk_widget_reparent() is called at
unusual times. (#168966, Christian Persch)
Tue Mar 1 14:04:08 2005 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid

View File

@ -3730,21 +3730,27 @@ gtk_widget_reparent_subwindows (GtkWidget *widget,
}
else
{
GdkWindow *parent = gdk_window_get_parent (widget->window);
GdkWindow *parent;
GList *tmp_list, *children;
GList *children = gdk_window_get_children (parent);
GList *tmp_list;
for (tmp_list = children; tmp_list; tmp_list = tmp_list->next)
parent = gdk_window_get_parent (widget->window);
if (parent)
{
GtkWidget *child;
GdkWindow *window = tmp_list->data;
gdk_window_get_user_data (window, (void **)&child);
if (child == widget)
gdk_window_reparent (window, new_window, 0, 0);
children = gdk_window_get_children (parent);
for (tmp_list = children; tmp_list; tmp_list = tmp_list->next)
{
GtkWidget *child;
GdkWindow *window = tmp_list->data;
gdk_window_get_user_data (window, (void **)&child);
if (child == widget)
gdk_window_reparent (window, new_window, 0, 0);
}
g_list_free (children);
}
g_list_free (children);
}
}