GNOME CVS: gtk+ kristian

[email protected] (Kristian Rietveld)
Newsgroups gmane.comp.gnome.cvs
Message-ID <[email protected]>
CVSROOT:	/cvs/gnome
Module name:	gtk+
Changes by:	kristian	06/12/26 11:13:04

Modified files:
	.              : ChangeLog 
	gtk            : gtktreeview.c 

Log message:
2006-12-26  Kristian Rietveld  <[email protected]>

Lots of scrolling fixes.  Made scrolling work properly in not fully
validated tree views; fixed a bunch of corner cases.

* gtk/gtktreeview.c (validate_visible_area): if a row's dy is past
upper - page_size, we know it is located at the end so the test for
dy + height has been dropped.
In the same case if area_below < 0, we know this is the last node
in the tree view so area_above is page_size - height of this row.
(validate_visible_area): got rid of subtracting new_height -
old_height from area_{below,above}, it didn't make any sense at
all and the full height of the row should be subtracted instead.
(validate_visible_area): when scrolling to a given path, set the
top row directly together with the dy offset, then sync that top_row
to the dy.
(gtk_tree_view_set_top_row): new function to directly set a top_row.
(gtk_tree_view_dy_to_top_row): refactored to use
gtk_tree_view_set_top_row().
(gtk_tree_view_top_row_to_dy): make sure dy >= 0 when done.
(gtk_tree_view_adjustment_changed): only update our dy and
top_row if the adjustment's dy actually changed.

URL : http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=gtk%2B&who=kristian&date=explicit&mindate=2006-12-26%2011:12&maxdate=2006-12-26%2011:14
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.