]> Pileus Git - ~andy/gtk/commitdiff
Optimization - when we've already found a widget, skip all checks for
authorOwen Taylor <otaylor@redhat.com>
Tue, 22 Dec 1998 20:06:44 +0000 (20:06 +0000)
committerOwen Taylor <otaylor@src.gnome.org>
Tue, 22 Dec 1998 20:06:44 +0000 (20:06 +0000)
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().

ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkdnd.c

index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
--- a/ChangeLog
+++ b/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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
@@ -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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
@@ -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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
@@ -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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
@@ -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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
@@ -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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index bc0506d0f36a31c03b8e326b7f705a6ad4f03468..4d1b69d7b913315e00622692fec85de4a8024c10 100644 (file)
@@ -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>
 
        * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
index 8c9a55c1dc922a630a9ce3c70aacaf1f23ec7821..68379c958325506b484ed507bb5c25dddf34af21 100644 (file)
@@ -1054,7 +1054,7 @@ gtk_drag_find_widget (GtkWidget       *widget,
 
   new_allocation = widget->allocation;
 
-  if (!GTK_WIDGET_VISIBLE (widget))
+  if (data->found || !GTK_WIDGET_MAPPED (widget))
     return;
 
   if (!GTK_WIDGET_NO_WINDOW (widget))
@@ -1113,9 +1113,9 @@ gtk_drag_find_widget (GtkWidget       *widget,
          new_data.found = FALSE;
          new_data.toplevel = FALSE;
          
-         gtk_container_foreach (GTK_CONTAINER (widget),
-                                (GtkCallback)gtk_drag_find_widget,
-                                &new_data);
+         gtk_container_forall (GTK_CONTAINER (widget),
+                               (GtkCallback)gtk_drag_find_widget,
+                               &new_data);
          
          data->found = new_data.found;
        }