mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-11 03:10:09 +00:00
gdk: Create surfaces directly, not from the source drawable
The notion of a source drawable does not make a lot of sense for windows that are not backed by a drawable, such as GdkOffscreenWindow after converting it to cairo_surface_t.
This commit is contained in:
parent
2bedd205c5
commit
6d27362620
@ -3843,16 +3843,13 @@ gdk_window_ref_cairo_surface (GdkDrawable *drawable)
|
|||||||
if (!private->cairo_surface)
|
if (!private->cairo_surface)
|
||||||
{
|
{
|
||||||
int width, height;
|
int width, height;
|
||||||
GdkDrawable *source;
|
|
||||||
|
|
||||||
/* It would be nice if we had some cairo support here so we
|
/* It would be nice if we had some cairo support here so we
|
||||||
could set the clip rect on the cairo surface */
|
could set the clip rect on the cairo surface */
|
||||||
width = private->abs_x + private->width;
|
width = private->abs_x + private->width;
|
||||||
height = private->abs_y + private->height;
|
height = private->abs_y + private->height;
|
||||||
|
|
||||||
source = _gdk_drawable_get_source_drawable (drawable);
|
private->cairo_surface = _gdk_drawable_create_cairo_surface (drawable, width, height);
|
||||||
|
|
||||||
private->cairo_surface = _gdk_drawable_create_cairo_surface (source, width, height);
|
|
||||||
|
|
||||||
if (private->cairo_surface)
|
if (private->cairo_surface)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user