[cairo] Enabling GTK drawing area alpha channel
Tobias Hoffmann
lcairo-list at thax.hardliners.org
Tue May 17 04:35:37 PDT 2011
Emmanuel Thomas-Maurin wrote:
> The cairo surface format is created as 32-bit with an alpha channel.
> Then the drawing area seems to have a 24-bit format
> (gdk_visual_get_system()->depth = 24).
>
> My question is: Is it possible to have a 32-bit depth or to enable
> transparency for GTK drawing areas (other than gtk_window_set_opacity()
> for the whole window) ?
>
> Thanks for any hints.
>
Hint: Don't use the default visual for the widget:
GdkColormap *rgba = gdk_screen_get_rgba_colormap (screen); // GTK3:
gdk_screen_get_rgba_visual(screen), etc...
if (rgba && gdk_screen_is_composited (screen)) {
gtk_widget_set_colormap(GTK_WIDGET(drawing_area), rgba);
}
HTH,
Tobias
More information about the cairo
mailing list