The following series implements the x11 client-side support for local-only shared OpenGL scanout rendering. The implementation doesn't rely on gtkglarea since: - it's quite recent (3.16 while rhel7 is currently 3.14) - using gtkglarea isn't possible without either uncovenient API changes (new widget) or ABI break (SpiceDisplay widget to inherit from something more flexible than GtkDrawingArea) - gtkglarea uses various gdk backends to setup GL context, such as glx, however dmabuf import requires egl. I have a gtk3/gtkglarea-based branch, which will bring wayland support. I would suggest to do first a release with gtk2/x11/egl support before deprecating gtk2 and bumping gtk requirements. v3->v4: - fix rebase v2->v3: after code review session with the team - remove gslice usage - drop gles in favour of desktop gl (probably more appropriate) - explain the rationale for boxed scanout property and const getter in commit details - some indent fixes v1->v2: - add some error handling code, fix gl objects leaks - improve egl code to be compatible with future wayland series - misc spellings Marc-André Lureau (5): build-sys: bump to spice-protocol 0.12.11 Add spice_channel_unix_read_fd() build-sys: check for epoxy-egl support glib: add local GL scanout support gtk: add spice-widget GL scanout support configure.ac | 27 +- doc/reference/spice-gtk-sections.txt | 1 + src/Makefile.am | 9 + src/channel-display.c | 170 ++++++++++- src/channel-display.h | 19 ++ src/map-file | 4 + src/spice-channel-priv.h | 3 + src/spice-channel.c | 68 +++++ src/spice-glib-sym-file | 4 + src/spice-marshal.txt | 1 + src/spice-widget-egl.c | 576 +++++++++++++++++++++++++++++++++++ src/spice-widget-priv.h | 30 ++ src/spice-widget.c | 151 +++++++-- 13 files changed, 1039 insertions(+), 24 deletions(-) create mode 100644 src/spice-widget-egl.c -- 2.5.0 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel