ui/gtk: use GtkGlArea on wayland only
For dma-buf support we need a egl context. The gtk x11 backend uses glx contexts though. We can't use the GtkGlArea widget on x11 because of that, so use our own gtk-egl code instead. wayland continues to use the GtkGlArea widget. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20180306090951.22932-5-kraxel@redhat.com
This commit is contained in:
parent
2f92f37c9e
commit
4c70280592
9
ui/gtk.c
9
ui/gtk.c
@ -2440,12 +2440,15 @@ static void early_gtk_display_init(DisplayOptions *opts)
|
|||||||
assert(opts->type == DISPLAY_TYPE_GTK);
|
assert(opts->type == DISPLAY_TYPE_GTK);
|
||||||
if (opts->has_gl && opts->gl) {
|
if (opts->has_gl && opts->gl) {
|
||||||
#if defined(CONFIG_OPENGL)
|
#if defined(CONFIG_OPENGL)
|
||||||
#if defined(CONFIG_GTK_GL)
|
#if defined(CONFIG_GTK_GL) && defined(GDK_WINDOWING_WAYLAND)
|
||||||
|
if (GDK_IS_WAYLAND_DISPLAY(gdk_display_get_default())) {
|
||||||
gtk_use_gl_area = true;
|
gtk_use_gl_area = true;
|
||||||
gtk_gl_area_init();
|
gtk_gl_area_init();
|
||||||
#else
|
}
|
||||||
gtk_egl_init();
|
|
||||||
#endif
|
#endif
|
||||||
|
{
|
||||||
|
gtk_egl_init();
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user