diff src/redraw_man.c @ 25:29937c26bb01

Fix bug of a dark line appear when animating. - Don't setup clips on buffer surface. - But, apply clips on XLib surface.
author Thinker K.F. Li <thinker@branda.to>
date Sun, 03 Aug 2008 02:19:32 +0800
parents e598bc809c0f
children d50f33040de6
line wrap: on
line diff
--- a/src/redraw_man.c	Sun Aug 03 02:08:31 2008 +0800
+++ b/src/redraw_man.c	Sun Aug 03 02:19:32 2008 +0800
@@ -495,7 +495,7 @@
 }
 
 #ifndef UNITTEST
-static void clean_clip(cairo_t *cr) {
+static void clean_canvas(cairo_t *cr) {
     cairo_pattern_t *pt;
 
     pt = cairo_get_source(cr);
@@ -532,7 +532,7 @@
     cairo_paint(rdman->backend);
 }
 #else /* UNITTEST */
-static void clean_clip(cairo_t *cr) {
+static void clean_canvas(cairo_t *cr) {
 }
 
 static void make_clip(cairo_t *cr, int n_dirty_areas,
@@ -630,8 +630,7 @@
     n_dirty_areas = rdman->n_dirty_areas;
     dirty_areas = rdman->dirty_areas;
     if(n_dirty_areas > 0) {
-	make_clip(rdman->cr, n_dirty_areas, dirty_areas);
-	clean_clip(rdman->cr);
+	clean_canvas(rdman->cr);
 	draw_shapes_in_areas(rdman, n_dirty_areas, dirty_areas);
 	copy_cr_2_backend(rdman, rdman->n_dirty_areas, rdman->dirty_areas);
 	rdman->n_dirty_areas = 0;