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

_______________________________________________
cvs-commits-list mailing list
cvs-commits-list@gnome.org
http://mail.gnome.org/mailman/listinfo/cvs-commits-list

Reply via email to