mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-09-19 21:40:22 +00:00
gdk: add alpha to the offscreen window's surface if its visual is RGBA
This commit is contained in:
parent
c2f29f2cef
commit
0f2d1547f8
@ -156,16 +156,19 @@ _gdk_offscreen_window_create_surface (GdkWindow *offscreen,
|
||||
GdkWindowObject *private = (GdkWindowObject *) offscreen;
|
||||
cairo_surface_t *similar;
|
||||
cairo_surface_t *surface;
|
||||
cairo_content_t content = CAIRO_CONTENT_COLOR;
|
||||
|
||||
g_return_val_if_fail (GDK_IS_OFFSCREEN_WINDOW (private->impl), NULL);
|
||||
|
||||
similar = _gdk_drawable_ref_cairo_surface ((GdkWindow *)private->parent);
|
||||
|
||||
surface = cairo_surface_create_similar (similar,
|
||||
/* FIXME: use visual */
|
||||
CAIRO_CONTENT_COLOR,
|
||||
width,
|
||||
height);
|
||||
if (gdk_window_get_visual (offscreen) ==
|
||||
gdk_screen_get_rgba_visual (gdk_window_get_screen (offscreen)))
|
||||
{
|
||||
content = CAIRO_CONTENT_COLOR_ALPHA;
|
||||
}
|
||||
|
||||
surface = cairo_surface_create_similar (similar, content, width, height);
|
||||
|
||||
cairo_surface_destroy (similar);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user