paint a flat box on the area the treeview got allocated extra vertically

2005-07-13  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): paint a flat box
	on the area the treeview got allocated extra vertically (fixes
	#142063, reported by Brian Bober).

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	make this function calculate real_cell_area and real_background_area
	correctly. (fixes #309249, reported by Bernd Demian).
This commit is contained in:
Kristian Rietveld
2005-07-13 19:14:15 +00:00
committed by Kristian Rietveld
parent a1e39dc5f7
commit 7a02c5b508
5 changed files with 53 additions and 12 deletions

View File

@ -3458,6 +3458,7 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
guint flags;
gint highlight_x;
gint bin_window_width;
gint bin_window_height;
GtkTreePath *cursor_path;
GtkTreePath *drag_dest_path;
GList *last_column;
@ -3501,6 +3502,21 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
if (new_y < 0)
new_y = 0;
y_offset = -_gtk_rbtree_find_offset (tree_view->priv->tree, new_y, &tree, &node);
gdk_drawable_get_size (tree_view->priv->bin_window,
&bin_window_width, &bin_window_height);
if (tree_view->priv->height < bin_window_height)
{
gtk_paint_flat_box (widget->style,
event->window,
widget->state,
GTK_SHADOW_NONE,
&event->area,
widget,
"cell_even",
0, tree_view->priv->height,
bin_window_width, bin_window_height);
}
if (node == NULL)
return TRUE;
@ -3532,9 +3548,6 @@ gtk_tree_view_bin_expose (GtkWidget *widget,
_gtk_tree_view_find_node (tree_view, drag_dest_path,
&drag_highlight_tree, &drag_highlight);
gdk_drawable_get_size (tree_view->priv->bin_window,
&bin_window_width, NULL);
n_visible_columns = 0;
for (list = tree_view->priv->columns; list; list = list->next)