diff options
author | Kristian Rietveld <kris@gtk.org> | 2008-07-11 14:17:49 +0000 |
---|---|---|
committer | Kristian Rietveld <kristian@src.gnome.org> | 2008-07-11 14:17:49 +0000 |
commit | 2cc1247433a1e4e480a09b31f7875ba253601ae8 (patch) | |
tree | 19bb8598cbad70c7d55e8b3144e1b799a344e8f0 /gtk/gtktreeprivate.h | |
parent | 1d510a9e84e829f838d4c900626c3c575d637c11 (diff) | |
download | gtk+-2cc1247433a1e4e480a09b31f7875ba253601ae8.tar.gz |
Fix #316087.
2008-07-11 Kristian Rietveld <kris@gtk.org>
Bug 316087 - Resizing columns is chaotic
* gtk/gtktreeprivate.h: add new member fields.
* gtk/gtktreeview.c (gtk_tree_view_init), (validate_row): set post
validation flag,
(gtk_tree_view_size_allocate_columns): rework the size allocation
mechanism to only recalculate the expand values if the width of the
widget, content or the column configuration has changed,
(gtk_tree_view_size_allocate): move call to size_allocate_columns()
to before the adjustment updates so the proper width is used after
we updated it,
(gtk_tree_view_button_press), (gtk_tree_view_motion_resize_column):
use the column width minus the expand value for the resized width,
(gtk_tree_view_move_column_after): update call to
gtk_tree_view_size_allocate_columns().
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_expand): set use
resized width to FALSE.
* tests/Makefile.am:
* tests/testtreecolumnsizing.c: new interactive test program
for testing column resizing with different column configurations.
svn path=/trunk/; revision=20818
Diffstat (limited to 'gtk/gtktreeprivate.h')
-rw-r--r-- | gtk/gtktreeprivate.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk/gtktreeprivate.h b/gtk/gtktreeprivate.h index 51bb9511f8..384c176982 100644 --- a/gtk/gtktreeprivate.h +++ b/gtk/gtktreeprivate.h @@ -236,6 +236,8 @@ struct _GtkTreeViewPrivate guint in_grab : 1; + guint post_validation_flag : 1; + /* Auto expand/collapse timeout in hover mode */ guint auto_expand_timeout; @@ -268,6 +270,10 @@ struct _GtkTreeViewPrivate GdkGC *tree_line_gc; gint tooltip_column; + + gint last_extra_space; + gint last_extra_space_per_column; + gint last_number_of_expand_columns; }; #ifdef __GNUC__ |