Matthew Waters
9cbb652b66
[794/906] context: add subclasses for the different platforms (egl, glx, wgl, etc)
...
- most code taken from the Window subclasses
- tested combinations: xEGL, GLX, Wayland+EGL, Cocoa (under GNUStep), WGL (Wine)
2017-12-09 19:31:30 +00:00
Julien Isorce
b56bf26dce
[791/906] glwindow/x11: remove X11EventSource as soon as the window is deleted
...
gst_gl_window_x11_send_message do not use XSendEvent anymore
2017-12-09 19:31:30 +00:00
Sebastian Dröge
5b1dd556de
[762/906] glimagesink: Fix some memory leaks and properly set up the buffer pool
2017-12-09 19:31:30 +00:00
Sebastian Dröge
4f23429abb
[761/906] x11: Protect event display connection with a mutex
...
We use it from different threads and need to serialize the
accesses to it.
2017-12-09 19:31:30 +00:00
Sebastian Dröge
9810469db0
[760/906] x11: Always use the same display connection from the GL thread
...
The other display connection might be used by async calls from elsewhere
at the same time.
https://bugzilla.gnome.org/show_bug.cgi?id=704247
2017-12-09 19:31:30 +00:00
Sebastian Dröge
b2934152ce
[752/906] glwindow: Add destroy notifies for the data of the callbacks
...
And actually call the close callback when the window is closed.
2017-12-09 19:31:29 +00:00
Sebastian Dröge
09795ef023
[740/906] x11: Allow setting window handle before creating the context
2017-12-09 19:31:29 +00:00
Sebastian Dröge
764e682cd0
[739/906] x11: Don't leak main context and main loop
2017-12-09 19:31:29 +00:00
Matthew Waters
3c2810c3d6
[725/906] x11: use GMainContext/GMainLoop
...
allows us to be reentrant
https://bugzilla.gnome.org/show_bug.cgi?id=703445
2017-12-09 19:31:29 +00:00
Matthew Waters
4f117323b8
[705/906] x11: don't shutdown in _finalize
...
The window's loop could be still running when _finalize is called
and if we destroy the display connection it will never be closed.
Add _open and _close vfuncs to GstGLWindow so that subclasses can
start up and shutdown at the right time.
2017-12-09 19:31:28 +00:00
Matthew Waters
9e7af77dc8
[703/906] x11: don't segfault if destroy_cb is NULL
2017-12-09 19:31:28 +00:00
Matthew Waters
5818b015d6
[702/906] x11: fix segfault if the x11 backend is instantiated but not used
2017-12-09 19:31:28 +00:00
Matthew Waters
957b4cf08b
[692/906] window_x11: add XError trapping
...
some functions in GLX can fail if the implementation does not support
certain features we ask for (i.e. GL 3) bringing down the entire
application
2017-12-09 19:31:27 +00:00
Matthew Waters
7d4d1f50d4
[669/906] window: seperate object creation and context creation
2017-12-09 19:31:27 +00:00
Matthew Waters
e983f02e87
[642/906] add gstglconfig.h for apps to find out what our capabilites are
...
ie libgstgl can be compiled with any combination of opengl/gles2
2017-12-09 19:31:26 +00:00
Matthew Waters
59cb56fa4d
[636/906] window_x11: compact debug info
2017-12-09 19:31:26 +00:00
Matthew Waters
c3526080aa
[629/906] window: add GError for error handling of context creation
2017-12-09 19:31:26 +00:00
Matthew Waters
0be301af24
[621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window
2017-12-09 19:31:26 +00:00
Matthew Waters
d169907472
[617/906] fix 'set but not used' compiler warnings
2017-12-09 19:31:26 +00:00
Matthew Waters
80fdf4c30c
[616/906] move window-specific code into seperate subfolders
2017-12-09 19:31:26 +00:00