gl/x11: use xcb instead of libX11
authorMatthew Waters <matthew@centricular.com>
Thu, 30 Jun 2016 14:07:23 +0000 (00:07 +1000)
committerTim-Philipp Müller <tim@centricular.com>
Sat, 9 Dec 2017 19:32:24 +0000 (19:32 +0000)
commit0e56bead42446c54e1a0ebd5f5e5aa0812eb9a4a
treed3bab6826c26d4e2a84a99274c1246a2322add10
parentaf493eb6b2197a7ec6f05114e10ead713c880c5d
gl/x11: use xcb instead of libX11

- xcb is supposedly thread-safe!

videotestsrc ! glimagesink now doesn't spuriously result in a
'call XInitThreads()' error however if anybody else is using X11,
then XInitThreads() still needs to be called and multiple glimagesink's
still need XInitThreads().

Everything still takes libX11 handles as they are compatible with the xcb
variants.  Unfortunately we cannot move fully over to xcb due to GLX being
entirely based on Xlib.  It's also impossible to transform a xcb_connection
to a Display which means we require X11 handles.
gst-libs/gst/gl/x11/Makefile.am
gst-libs/gst/gl/x11/gstgldisplay_x11.c
gst-libs/gst/gl/x11/gstgldisplay_x11.h
gst-libs/gst/gl/x11/gstglwindow_x11.c
gst-libs/gst/gl/x11/xcb_event_source.c [moved from gst-libs/gst/gl/x11/x11_event_source.c with 52% similarity]
gst-libs/gst/gl/x11/xcb_event_source.h [moved from gst-libs/gst/gl/x11/x11_event_source.h with 81% similarity]