diff options
author | Kristian Rietveld <kris@gtk.org> | 2002-04-19 19:02:26 +0000 |
---|---|---|
committer | Kristian Rietveld <kristian@src.gnome.org> | 2002-04-19 19:02:26 +0000 |
commit | a1f3d61d500538b1d27beadad778c469f0093ff0 (patch) | |
tree | c629d7829bff629701496b1c43aa805daaabbcbb /gtk/gtktreeview.c | |
parent | d3a1294923e0308ae76a25eb5b12b2dfdae36442 (diff) | |
download | gtk+-a1f3d61d500538b1d27beadad778c469f0093ff0.tar.gz |
subtract TREE_VIEW_HEADER_HEIGHT from allocation->height to get the real
Fri Apr 19 21:06:39 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): subtract
TREE_VIEW_HEADER_HEIGHT from allocation->height to get the real
size for the tree (fixes #72729),
(gtk_tree_view_real_start_editing): correct cell_area->y for
scrolling due to gtk_tree_view_real_set_cursor (fixes #75687)
Diffstat (limited to 'gtk/gtktreeview.c')
-rw-r--r-- | gtk/gtktreeview.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c index f748c78ed6..b22a434bc2 100644 --- a/gtk/gtktreeview.c +++ b/gtk/gtktreeview.c @@ -1650,7 +1650,7 @@ gtk_tree_view_size_allocate (GtkWidget *widget, tree_view->priv->vadjustment->lower = 0; tree_view->priv->vadjustment->upper = MAX (tree_view->priv->vadjustment->page_size, tree_view->priv->height); - if (tree_view->priv->vadjustment->value + allocation->height > tree_view->priv->height) + if (tree_view->priv->vadjustment->value + allocation->height - TREE_VIEW_HEADER_HEIGHT (tree_view) > tree_view->priv->height) gtk_adjustment_set_value (tree_view->priv->vadjustment, MAX (tree_view->priv->height - tree_view->priv->vadjustment->page_size, 0)); gtk_adjustment_changed (tree_view->priv->vadjustment); @@ -10647,9 +10647,15 @@ gtk_tree_view_real_start_editing (GtkTreeView *tree_view, GdkEvent *event, guint flags) { + gint pre_val = tree_view->priv->vadjustment->value; + tree_view->priv->edited_column = column; _gtk_tree_view_column_start_editing (column, GTK_CELL_EDITABLE (cell_editable)); + gtk_tree_view_real_set_cursor (tree_view, path, FALSE, TRUE); + + cell_area->y += pre_val - tree_view->priv->vadjustment->value; + GTK_TREE_VIEW_SET_FLAG (tree_view, GTK_TREE_VIEW_DRAW_KEYFOCUS); gtk_tree_view_put (tree_view, GTK_WIDGET (cell_editable), |