]> Pileus Git - ~andy/gtk/commitdiff
propagate expose events to children.
authorJonathan Blandford <jrb@gnome.org>
Wed, 14 Apr 2004 07:49:10 +0000 (07:49 +0000)
committerJonathan Blandford <jrb@src.gnome.org>
Wed, 14 Apr 2004 07:49:10 +0000 (07:49 +0000)
Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
        events to children.

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

index 59f72a96f9243b80cbe195ef3731882d7b09fe69..4d9c8cb70cc284741c4cb8d387281214730dca22 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
+
+       * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
+       events to children.
+
 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
 
        * gtk/gtkpathbar.c (make_directory_button): remove spurious
index 59f72a96f9243b80cbe195ef3731882d7b09fe69..4d9c8cb70cc284741c4cb8d387281214730dca22 100644 (file)
@@ -1,3 +1,8 @@
+Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
+
+       * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
+       events to children.
+
 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
 
        * gtk/gtkpathbar.c (make_directory_button): remove spurious
index 59f72a96f9243b80cbe195ef3731882d7b09fe69..4d9c8cb70cc284741c4cb8d387281214730dca22 100644 (file)
@@ -1,3 +1,8 @@
+Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
+
+       * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
+       events to children.
+
 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
 
        * gtk/gtkpathbar.c (make_directory_button): remove spurious
index 59f72a96f9243b80cbe195ef3731882d7b09fe69..4d9c8cb70cc284741c4cb8d387281214730dca22 100644 (file)
@@ -1,3 +1,8 @@
+Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
+
+       * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
+       events to children.
+
 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
 
        * gtk/gtkpathbar.c (make_directory_button): remove spurious
index 59f72a96f9243b80cbe195ef3731882d7b09fe69..4d9c8cb70cc284741c4cb8d387281214730dca22 100644 (file)
@@ -1,3 +1,8 @@
+Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
+
+       * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
+       events to children.
+
 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
 
        * gtk/gtkpathbar.c (make_directory_button): remove spurious
index 163b420b4ac7219ac15d8c520c315acfdab3388e..e8597e5d707e8e09e76b0184e5826c814e7f7349 100644 (file)
@@ -3627,7 +3627,28 @@ gtk_tree_view_expose (GtkWidget      *widget,
   tree_view = GTK_TREE_VIEW (widget);
 
   if (event->window == tree_view->priv->bin_window)
-    return gtk_tree_view_bin_expose (widget, event);
+    {
+      gboolean retval;
+      GList *tmp_list;
+
+      retval = gtk_tree_view_bin_expose (widget, event);
+
+      /* We can't just chain up to Container::expose as it will try to send the
+       * event to the headers, so we handle propagating it to our children
+       * (eg. widgets being edited) ourselves.
+       */
+      tmp_list = tree_view->priv->children;
+      while (tmp_list)
+       {
+         GtkTreeViewChild *child = tmp_list->data;
+         tmp_list = tmp_list->next;
+
+         gtk_container_propagate_expose (GTK_CONTAINER (tree_view), child->widget, event);
+       }
+
+      return retval;
+    }
+
   else if (event->window == tree_view->priv->header_window)
     {
       GList *list;