summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorJonathan Blandford <jrb@redhat.com>2004-07-06 14:32:18 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2004-07-06 14:32:18 +0000
commitf80b81db14666a7d9d40a4845fc268615debaa0d (patch)
tree2c9fa558a0e695ea3e44796f7c8a92af8e022b79 /gtk
parentaa794a664647ddd00b126e77f4b1bfe78d05d39b (diff)
downloadgdk-pixbuf-f80b81db14666a7d9d40a4845fc268615debaa0d.tar.gz
Fix for #136496, Pawel Salek:
Tue Jul 6 10:00:22 2004 Jonathan Blandford <jrb@redhat.com> Fix for #136496, Pawel Salek: * gtk/gtktreeview.c (gtk_tree_view_row_changed): Queue a redraw on a node when it changes in fixed_height mode. (gtk_tree_view_node_queue_redraw): new function to queue a redraw on a node.
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtktreeview.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
index 977ca2b32..c126658a1 100644
--- a/gtk/gtktreeview.c
+++ b/gtk/gtktreeview.c
@@ -4235,6 +4235,21 @@ gtk_tree_view_focus_out (GtkWidget *widget,
/* Incremental Reflow
*/
+static void
+gtk_tree_view_node_queue_redraw (GtkTreeView *tree_view,
+ GtkRBTree *tree,
+ GtkRBNode *node)
+{
+ gint y;
+
+ y = _gtk_rbtree_node_find_offset (tree, node);
+
+ gtk_widget_queue_draw_area (GTK_WIDGET (tree_view),
+ 0, y,
+ GTK_WIDGET (tree_view)->requisition.width,
+ GTK_RBNODE_GET_HEIGHT (node));
+}
+
/* Returns TRUE if it updated the size
*/
static gboolean
@@ -6786,6 +6801,7 @@ gtk_tree_view_row_changed (GtkTreeModel *model,
&& tree_view->priv->fixed_height >= 0)
{
_gtk_rbtree_node_set_height (tree, node, tree_view->priv->fixed_height);
+ gtk_tree_view_node_queue_redraw (tree_view, tree, node);
}
else
{