Remove the weird dx logic, get all cell_area and background_area
Mon Jun 9 21:01:16 2003 Kristian Rietveld <kris@gtk.org> * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action): Remove the weird dx logic, get all cell_area and background_area calculations right. Not sure what was up with it before. (Fixes #110989, testcase from Vasco Alexandre da Silva Costa). * NEWS: Updated for this bug.
This commit is contained in:
committed by
Kristian Rietveld
parent
378a7488fb
commit
7ac4f264a7
@@ -1,3 +1,12 @@
|
||||
Mon Jun 9 21:01:16 2003 Kristian Rietveld <kris@gtk.org>
|
||||
|
||||
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
|
||||
Remove the weird dx logic, get all cell_area and background_area
|
||||
calculations right. Not sure what was up with it before. (Fixes
|
||||
#110989, testcase from Vasco Alexandre da Silva Costa).
|
||||
|
||||
* NEWS: Updated for this bug.
|
||||
|
||||
Sun Jun 8 23:43:47 2003 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* NEWS: Updated.
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
Mon Jun 9 21:01:16 2003 Kristian Rietveld <kris@gtk.org>
|
||||
|
||||
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
|
||||
Remove the weird dx logic, get all cell_area and background_area
|
||||
calculations right. Not sure what was up with it before. (Fixes
|
||||
#110989, testcase from Vasco Alexandre da Silva Costa).
|
||||
|
||||
* NEWS: Updated for this bug.
|
||||
|
||||
Sun Jun 8 23:43:47 2003 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* NEWS: Updated.
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
Mon Jun 9 21:01:16 2003 Kristian Rietveld <kris@gtk.org>
|
||||
|
||||
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
|
||||
Remove the weird dx logic, get all cell_area and background_area
|
||||
calculations right. Not sure what was up with it before. (Fixes
|
||||
#110989, testcase from Vasco Alexandre da Silva Costa).
|
||||
|
||||
* NEWS: Updated for this bug.
|
||||
|
||||
Sun Jun 8 23:43:47 2003 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* NEWS: Updated.
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
Mon Jun 9 21:01:16 2003 Kristian Rietveld <kris@gtk.org>
|
||||
|
||||
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
|
||||
Remove the weird dx logic, get all cell_area and background_area
|
||||
calculations right. Not sure what was up with it before. (Fixes
|
||||
#110989, testcase from Vasco Alexandre da Silva Costa).
|
||||
|
||||
* NEWS: Updated for this bug.
|
||||
|
||||
Sun Jun 8 23:43:47 2003 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* NEWS: Updated.
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
Mon Jun 9 21:01:16 2003 Kristian Rietveld <kris@gtk.org>
|
||||
|
||||
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
|
||||
Remove the weird dx logic, get all cell_area and background_area
|
||||
calculations right. Not sure what was up with it before. (Fixes
|
||||
#110989, testcase from Vasco Alexandre da Silva Costa).
|
||||
|
||||
* NEWS: Updated for this bug.
|
||||
|
||||
Sun Jun 8 23:43:47 2003 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* NEWS: Updated.
|
||||
|
||||
2
NEWS
2
NEWS
@@ -43,6 +43,8 @@ Overview of Changes in GTK+ 2.2.2
|
||||
- Fix prelighting [Sven Neumann]
|
||||
- Set drag cursor earlier to allow apps to override [Daniel Elstner]
|
||||
- Speed up insertions into GtkTreeModelSort [Owen, Jonathan Blandford]
|
||||
- Get background/cell area handling right in GtkTreeViewColumn [Vasco
|
||||
Alexandre da Silva Costa]
|
||||
- Bug fixes [Benjamin Bayart, Jonathan Blandford, Peter Bloomfield,
|
||||
Dave Cook, Felipe Heidrich, Richard Hult, Markus Lausser, Michael Natterer,
|
||||
Mariano Suarez-Alvarez, Owen]
|
||||
|
||||
@@ -2412,8 +2412,8 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
gint extra_space;
|
||||
gint min_x, min_y, max_x, max_y;
|
||||
gint focus_line_width;
|
||||
gint dx;
|
||||
gint special_cells;
|
||||
gint horizontal_separator;
|
||||
gboolean cursor_row = FALSE;
|
||||
|
||||
min_x = G_MAXINT;
|
||||
@@ -2451,11 +2451,11 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
|
||||
gtk_widget_style_get (GTK_WIDGET (tree_column->tree_view),
|
||||
"focus-line-width", &focus_line_width,
|
||||
"horizontal-separator", &horizontal_separator,
|
||||
NULL);
|
||||
|
||||
real_cell_area = *cell_area;
|
||||
real_background_area = *background_area;
|
||||
dx = real_cell_area.x - real_background_area.x - focus_line_width;
|
||||
|
||||
real_cell_area.x += focus_line_width;
|
||||
|
||||
@@ -2472,7 +2472,7 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
full_requested_width += info->requested_width;
|
||||
}
|
||||
|
||||
extra_space = background_area->width - full_requested_width - dx;
|
||||
extra_space = cell_area->width + horizontal_separator - full_requested_width;
|
||||
if (extra_space < 0)
|
||||
extra_space = 0;
|
||||
else if (extra_space > 0 && expand_cell_count > 0)
|
||||
@@ -2494,11 +2494,11 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
else
|
||||
flags &= ~GTK_CELL_RENDERER_FOCUSED;
|
||||
|
||||
real_background_area.width = info->requested_width +
|
||||
(info->expand?extra_space:0);
|
||||
info->real_width = real_background_area.width;
|
||||
info->real_width = info->requested_width + (info->expand?extra_space:0);
|
||||
|
||||
real_cell_area.width = real_background_area.width;
|
||||
real_cell_area.width = info->real_width;
|
||||
real_background_area.width=
|
||||
real_cell_area.x + real_cell_area.width - real_background_area.x;
|
||||
real_cell_area.width -= 2 * focus_line_width;
|
||||
|
||||
if (action == CELL_ACTION_RENDER)
|
||||
@@ -2617,8 +2617,8 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
|
||||
flags &= ~GTK_CELL_RENDERER_FOCUSED;
|
||||
|
||||
real_cell_area.x += (info->real_width + tree_column->spacing);
|
||||
real_background_area.x += (info->real_width + tree_column->spacing);
|
||||
real_cell_area.x += (real_cell_area.width + tree_column->spacing);
|
||||
real_background_area.x += (real_background_area.width + tree_column->spacing);
|
||||
}
|
||||
|
||||
/* iterate list for PACK_END cells */
|
||||
@@ -2637,11 +2637,11 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
else
|
||||
flags &= ~GTK_CELL_RENDERER_FOCUSED;
|
||||
|
||||
real_background_area.width = info->requested_width +
|
||||
(info->expand?extra_space:0);
|
||||
info->real_width = real_background_area.width;
|
||||
info->real_width = info->requested_width + (info->expand?extra_space:0);
|
||||
|
||||
real_cell_area.width = real_background_area.width;
|
||||
real_cell_area.width = info->real_width;
|
||||
real_background_area.width =
|
||||
real_cell_area.x + real_cell_area.width - real_background_area.x;
|
||||
real_cell_area.width -= 2 * focus_line_width;
|
||||
|
||||
if (action == CELL_ACTION_RENDER)
|
||||
@@ -2759,8 +2759,8 @@ gtk_tree_view_column_cell_process_action (GtkTreeViewColumn *tree_column,
|
||||
|
||||
flags &= ~GTK_CELL_RENDERER_FOCUSED;
|
||||
|
||||
real_cell_area.x += (info->real_width + tree_column->spacing);
|
||||
real_background_area.x += (info->real_width + tree_column->spacing);
|
||||
real_cell_area.x += (real_cell_area.width + tree_column->spacing);
|
||||
real_background_area.x += (real_background_area.width + tree_column->spacing);
|
||||
}
|
||||
|
||||
/* fill focus_rectangle when required */
|
||||
|
||||
Reference in New Issue
Block a user