[gitg: 68/69] Fix path rendering offset issue
- From: Jesse van den Kieboom <jessevdk src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gitg: 68/69] Fix path rendering offset issue
- Date: Fri, 22 Jul 2011 22:07:53 +0000 (UTC)
commit b50512143b549548e2c5758c0c674325635d3bbc
Author: Jesse van den Kieboom <jessevdk gnome org>
Date: Fri Jul 22 23:52:09 2011 +0200
Fix path rendering offset issue
gitg/gitg-cell-renderer-path.c | 28 +++++++++++++++++++++++-----
1 files changed, 23 insertions(+), 5 deletions(-)
---
diff --git a/gitg/gitg-cell-renderer-path.c b/gitg/gitg-cell-renderer-path.c
index 9f547b1..837cff1 100644
--- a/gitg/gitg-cell-renderer-path.c
+++ b/gitg/gitg-cell-renderer-path.c
@@ -320,10 +320,16 @@ draw_indicator(GitgCellRendererPath *self, cairo_t *context, const GdkRectangle
static void
renderer_render(GtkCellRenderer *renderer, cairo_t *cr, GtkWidget *widget, const GdkRectangle *area, const GdkRectangle *cell_area, GtkCellRendererState flags)
{
- GitgCellRendererPath *self = GITG_CELL_RENDERER_PATH(renderer);
+ GitgCellRendererPath *self;
+ GdkRectangle narea;
+ GdkRectangle ncell_area;
+
+ self = GITG_CELL_RENDERER_PATH (renderer);
self->priv->last_height = area->height;
+ cairo_save (cr);
+
gdk_cairo_rectangle (cr, area);
cairo_clip(cr);
@@ -335,11 +341,23 @@ renderer_render(GtkCellRenderer *renderer, cairo_t *cr, GtkWidget *widget, const
/* draw labels */
draw_labels(self, widget, cr, area);
- ((GdkRectangle *) area)->x += total_width(self, widget);
- ((GdkRectangle *) cell_area)->x += total_width(self, widget);
+ narea = *area;
+ ncell_area = *cell_area;
+
+ narea.x += total_width (self, widget);
+ ncell_area.x += total_width (self, widget);
- if (GTK_CELL_RENDERER_CLASS(parent_class)->render)
- GTK_CELL_RENDERER_CLASS(parent_class)->render(renderer, cr, widget, area, cell_area, flags);
+ cairo_restore (cr);
+
+ if (GTK_CELL_RENDERER_CLASS (parent_class)->render)
+ {
+ GTK_CELL_RENDERER_CLASS (parent_class)->render (renderer,
+ cr,
+ widget,
+ &narea,
+ &ncell_area,
+ flags);
+ }
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]