[gtk] treeview: Fix column visibility check
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk] treeview: Fix column visibility check
- Date: Sun, 8 Jul 2018 08:35:35 +0000 (UTC)
commit c85e2401fa439191fe6151212fffef9e2c2888c0
Author: Timm Bäder <mail baedert org>
Date: Sun Jul 8 10:32:12 2018 +0200
treeview: Fix column visibility check
This is still fallout from the bin_window removal. We aren't moving the
GdkWindow/GdkSurface anymore so we have to account for the scrolling
ourselves.
gtk/gtktreeview.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
index cf95a768bb..c437ac75e4 100644
--- a/gtk/gtktreeview.c
+++ b/gtk/gtktreeview.c
@@ -4538,6 +4538,8 @@ gtk_tree_view_bin_snapshot (GtkWidget *widget,
GtkSnapshot *snapshot)
{
GtkTreeView *tree_view = GTK_TREE_VIEW (widget);
+ GtkTreeViewPrivate *priv = gtk_tree_view_get_instance_private (tree_view);
+ const int x_scroll_offset = - gtk_adjustment_get_value (priv->hadjustment);
GtkTreePath *path;
GtkRBTree *tree;
GList *list;
@@ -4658,7 +4660,7 @@ gtk_tree_view_bin_snapshot (GtkWidget *widget,
max_height = gtk_tree_view_get_row_height (tree_view, node);
- cell_offset = 0;
+ cell_offset = x_scroll_offset;
background_area.y = y_offset + clip.y;
background_area.height = max_height;
@@ -4731,7 +4733,7 @@ gtk_tree_view_bin_snapshot (GtkWidget *widget,
else
flags &= ~GTK_CELL_RENDERER_EXPANDED;
- background_area.x = cell_offset;
+ background_area.x = cell_offset;
background_area.width = width;
cell_area = background_area;
@@ -4768,6 +4770,9 @@ gtk_tree_view_bin_snapshot (GtkWidget *widget,
continue;
}
+ background_area.x -= x_scroll_offset;
+ cell_area.x -= x_scroll_offset;
+
gtk_tree_view_column_cell_set_cell_data (column,
tree_view->priv->model,
&iter,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]