Fix cairo rendering on large subwindows

We get the real pixmap size and use as cairo surface size rather
than doing some magic to try to get clipping on the right hand size
(and the magic looks wrong anyway).

The previous code could result in the width/height being to big for
the cairo 28.4 fix point size and thus not drawing anything.

This fixes bug #588076.
This commit is contained in:
Alexander Larsson 2009-07-24 21:41:37 +02:00
parent ee876f94b1
commit a504784b4b

View File

@ -2501,13 +2501,8 @@ gdk_window_begin_paint_region (GdkWindow *window,
paint->x_offset = -private->abs_x + implicit_paint->x_offset;
paint->y_offset = -private->abs_y + implicit_paint->y_offset;
/* It would be nice if we had some cairo support here so we
could set the clip rect on the cairo surface */
width = private->abs_x + private->width;
height = private->abs_y + private->height;
gdk_drawable_get_size (paint->pixmap, &width, &height);
paint->surface = _gdk_drawable_create_cairo_surface (paint->pixmap, width, height);
}
else
{