Optimization - when we've already found a widget, skip all checks for
Tue Dec 22 14:50:25 1998 Owen Taylor <otaylor@redhat.com> * gtk/gtkdnd.c (gtk_drag_find_widget): Optimization - when we've already found a widget, skip all checks for subsequent children. * gtk/gtkdnd.c (gtk_drag_find_widget): Checked for !MAPPED, not !VISIBLE, since a widget (like a notebook page), can be VISIBLE, but !REALIZED or !MAPPED. * gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(), not foreach().
This commit is contained in:
		
							
								
								
									
										13
									
								
								ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								ChangeLog
									
									
									
									
									
								
							@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,16 @@
 | 
				
			|||||||
 | 
					Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
 | 
				
			||||||
 | 
						when we've already found a widget, skip all checks
 | 
				
			||||||
 | 
						for subsequent children.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
 | 
				
			||||||
 | 
						!MAPPED, not !VISIBLE, since a widget (like a notebook
 | 
				
			||||||
 | 
						page), can be VISIBLE, but !REALIZED or !MAPPED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
 | 
				
			||||||
 | 
						not foreach().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
					Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
						* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
 | 
				
			||||||
 | 
				
			|||||||
@ -1054,7 +1054,7 @@ gtk_drag_find_widget (GtkWidget       *widget,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  new_allocation = widget->allocation;
 | 
					  new_allocation = widget->allocation;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (!GTK_WIDGET_VISIBLE (widget))
 | 
					  if (data->found || !GTK_WIDGET_MAPPED (widget))
 | 
				
			||||||
    return;
 | 
					    return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (!GTK_WIDGET_NO_WINDOW (widget))
 | 
					  if (!GTK_WIDGET_NO_WINDOW (widget))
 | 
				
			||||||
@ -1113,9 +1113,9 @@ gtk_drag_find_widget (GtkWidget       *widget,
 | 
				
			|||||||
	  new_data.found = FALSE;
 | 
						  new_data.found = FALSE;
 | 
				
			||||||
	  new_data.toplevel = FALSE;
 | 
						  new_data.toplevel = FALSE;
 | 
				
			||||||
	  
 | 
						  
 | 
				
			||||||
	  gtk_container_foreach (GTK_CONTAINER (widget),
 | 
						  gtk_container_forall (GTK_CONTAINER (widget),
 | 
				
			||||||
				 (GtkCallback)gtk_drag_find_widget,
 | 
									(GtkCallback)gtk_drag_find_widget,
 | 
				
			||||||
				 &new_data);
 | 
									&new_data);
 | 
				
			||||||
	  
 | 
						  
 | 
				
			||||||
	  data->found = new_data.found;
 | 
						  data->found = new_data.found;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user