summaryrefslogtreecommitdiff
path: root/ext/gtk
Commit message (Collapse)AuthorAgeFilesLines
* gtk: Scroll events dispatch supportPhilippe Normand2021-07-051-1/+47
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/567>
* gtk: Remove coordinates double-translationBastien Nocera2021-05-061-12/+2
| | | | | | | | | | | Remove our own translation in the mouse event capture code, as that translation will be done through the navigation interface. Tested by resizing the window created by: gst-launch-1.0 -v videotestsrc ! navigationtest ! glupload ! glcolorconvert ! tee name=t ! gtkglsink and checking that the cursor follows the mouse as expected. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/974>
* gtk: Translate navigation events coordinatesBastien Nocera2021-05-061-0/+13
| | | | | | | | If the application passed down some pointer coordinates, translate those from display coordinates to stream coordinates, so things work as expected even if the video is resized. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/974>
* gtk: Export _display_size_to_stream_size()Bastien Nocera2021-05-062-5/+10
| | | | | | | | Export _display_size_to_stream_size() so that GstNavigation implementors can translate from display coordinates to stream coordinates before pushing the events upstream to the DVD source, for example. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/974>
* gtk: allow per feature registrationStéphane Cerveau2021-03-295-9/+15
| | | | | | | | | | | | | Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876>
* build: update for gl pkg-config file splitMatthew Waters2020-08-071-3/+3
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/680>
* docs: mark more types as plugin APIMathieu Duponchelle2020-06-231-0/+2
|
* meson: Fix gstgl checks for qt and gtkNirbheek Chauhan2020-05-121-1/+2
| | | | | | Also rename from build_ to have_, which is more accurate. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/587>
* gtk: Use G_DECLARE_FINAL_TYPENiels De Graef2020-03-163-44/+7
|
* Remove autotools build systemTim-Philipp Müller2019-10-141-44/+0
|
* documentation: fix a number of typosAaron Boxer2019-10-051-1/+1
|
* gtkglsink: fix crash when widget is resized after element destructionGuillaume Desmottes2019-07-262-1/+51
| | | | | | Prevent _size_changed_cb() to be called after gtkglsink has been finalized. Fix #632
* dv, gtk, qt, osxaudio, osxvideo, waveform: add to plugins listTim-Philipp Müller2019-05-291-0/+1
| | | | | | | Makes sure the paths for these plugins are included in the uninstalled plugin paths list. And also for the docs. Fixes #604
* gtkgl: Also try retrieving an EGL context from Gdk with X11Matthew Waters2019-03-052-16/+47
| | | | | Some embedded platforms will use EGL instead of GLX within the X11 ecosystem.
* gtk/gl: Only unbind buffers/vertex attrib arrays if we can't directly bind ↵Sebastian Dröge2019-01-161-1/+2
| | | | | | | | | | the vertex array to 0 Binding the vertex array to 0 will unbind everything else already. In the previous order older versions of the Intel GL driver caused errors to be printed for every single call when disabling the vertex attrib arrays after binding the vertex array to 0.
* meson: Add feature options for all pluginsNirbheek Chauhan2018-07-271-1/+3
| | | | | | | Checks for GL, Qt5, and C++ are still automagic. FIXMEs have been added for these so they can be fixed later. https://bugzilla.gnome.org/show_bug.cgi?id=795107
* Update for g_type_class_add_private() deprecation in recent GLibTim-Philipp Müller2018-06-231-9/+6
| | | | https://gitlab.gnome.org/GNOME/glib/merge_requests/7
* Meson: Generate pc file for all plugins in goodXavier Claessens2018-04-251-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=794568
* gtk: fix compiler warning with recent glibArnaud Bonatti2018-02-211-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=793688
* gtk: hook up to meson buildTim-Philipp Müller2018-02-121-1/+1
|
* gtk: hook up to autotools buildTim-Philipp Müller2018-02-101-2/+0
|
* gtk: don't include uninstalled headerTim-Philipp Müller2017-12-191-1/+0
|
* gl: update plugins to use GstGL from -baseTim-Philipp Müller2017-12-192-13/+10
|
* gtk: Fix possibility of NULL variableEdward Hervey2017-11-241-0/+1
| | | | | | It's quite unlikely since it's initialized in instance initialization. CID #1417721
* Request minimum buffer even if need_pool is FALSENicolas Dufresne2017-09-061-10/+10
| | | | | | | When tee is used, it will not request a pool, but still it wants to know how many buffers are required. https://bugzilla.gnome.org/show_bug.cgi?id=730758
* gtkglsink: expose the created display and context correctlyMatthew Waters2017-09-052-0/+7
| | | | | | | | 1. Propagate the GstGLDisplay we create 2. Add the created GstGLContext to the propagated GstGLDisplay Otherwise with multi-branch GL pipelines involving gtkglsink, things will fall apart and errors will be genarated somewhere.
* gl: do not include GL headers in public gstgl headersJulien Isorce2017-08-223-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | Except for gst/gl/gstglfuncs.h It is up to the client app to include these headers. It is coherent with the fact that gstreamer-gl.pc does not require any egl.pc/gles.pc. I.e. it is the responsability of the app to search these headers within its build setup. For example gstreamer-vaapi includes explicitly EGL/egl.h and search for it in its configure.ac. For example with this patch, if an app includes the headers gst/gl/egl/gstglcontext_egl.h gst/gl/egl/gstgldisplay_egl.h gst/gl/egl/gstglmemoryegl.h it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h. Which is good because the app might want to use the gstgl api only without the need to bother about gl headers. Also added a test: cd tests/check && make libs/gstglheaders.check https://bugzilla.gnome.org/show_bug.cgi?id=784779
* Remove plugin specific static build optionNicolas Dufresne2017-05-161-1/+0
| | | | | Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient.
* docs: Port all docstring to gtk-doc markdownThibault Saunier2017-04-125-3/+7
|
* gl: GL_ARRAY_BUFFER is not a part of VAO stateMatthew Waters2017-03-141-4/+2
| | | | | As a result we need to bind it on every draw in order to have the correct state in the GL state machine.
* Rename plugin filesnames to match plugin namesNicolas Dufresne2017-03-082-9/+9
| | | | | | | | | | | | - libgstgtksink.so -> libgstgtk.so - libgstteletextdec.so -> libgstteletex.so - libgstcamerabin2.so -> libgstcamerabin.so - libgstonvif.so -> libgstrtponvif.so (meson only) - sdp -> sdpelem (avoid clash with libgstsdp) - gstsiren -> siren - libgstkmssink.so -> libgstkms.so https://bugzilla.gnome.org/show_bug.cgi?id=779344
* gl/utils: also take care of the local GL context in query functionsMatthew Waters2017-01-131-31/+3
| | | | | Simplifies a deduplicates a lot of code in elements retrieving/setting the local OpenGL context.
* gl: GST_GL_TYPE -> GST_TYPE_GLMatthew Waters2016-11-031-1/+1
| | | | Some deprecated symbols are kept for backwards compatibility
* meson: add build files for the gtk pluginMatthew Waters2016-09-091-0/+54
|
* gtk: Fix logging in base widget and fix desc of GL sinkNirbheek Chauhan2016-03-273-4/+15
| | | | | Set a default category for gtkgstbasewidget lest the logging go to the 'default' category where it can't be found easily
* gtk/gl: don't assert when gdk doesn't provide a GL contextMatthew Waters2016-03-251-1/+5
| | | | | | | Allows the application to check whether gtkglsink is supported by setting the element to READY. https://bugzilla.gnome.org/show_bug.cgi?id=764148
* gtkbasesink: post message to application for unhandled keyboard/mouse eventsVineeth TM2016-03-241-4/+8
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=763403
* bad: use new gst_element_class_add_static_pad_template()Vineeth TM2016-03-242-4/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=763081
* gtk(gl)sink: remove the signal handlers on finalizeMatthew Waters2016-02-162-3/+12
| | | | | | | | | | | It's possible that the sink element will be freed before the widget is destroyed. When the widget was eventually destroyed, it was attempting to access member variables of the freed sink struct which resulted in undefined behaviour. Fix by disconnecting our signal on finalize. https://bugzilla.gnome.org/show_bug.cgi?id=762098
* glsyncmeta: separate out gpu/cpu waits.Matthew Waters2016-02-091-0/+1
| | | | | | CPU waits are more expensive and are only required if the CPU is ever going to access the data. GPU waits perform inter-context synchronisation and are cheaper as they don't require CPU intervention.
* gtk: add the overlaycomposition feature to the template capsMatthew Waters2015-11-101-2/+5
| | | | | | | | There is a possibility that the _get_caps impl will be called with the feature in the filter caps which when interecting with the template, will return EMPTY and therefore fail negotiation. https://bugzilla.gnome.org/show_bug.cgi?id=757854
* gl: be consistent in gobject boilerpateMatthew Waters2015-10-191-1/+1
| | | | | | GST_GL_IS_* vs GST_IS_GL_* git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g'
* gtk: separate out the widget/window destroy callbacksMatthew Waters2015-10-171-7/+10
| | | | | | | Fixes assertion due to the sink_finalize() being run before the widget destroy callback. https://bugzilla.gnome.org/show_bug.cgi?id=755969
* glshader: port to using GstGLSLStage objects for string managementMatthew Waters2015-10-151-3/+9
| | | | | | A GstGLShader is now simply a collection of stages that are compiled and linked together into a program. The uniform/attribute interface has remained the same.
* gtk: add some GL debug statements to show up in GL tracesMatthew Waters2015-09-301-4/+10
|
* gtk: fix assertion when the element has no peerMatthew Waters2015-09-291-3/+5
| | | | | | | When proxying keyboard/navigation/mouse events, only unref a successfully retreived peer pad. https://bugzilla.gnome.org/show_bug.cgi?id=755738
* gtk: Only run from the main thread in stop() if we created the windowSebastian Dröge2015-09-241-2/+7
| | | | We're not doing anything at all from the main thread in other cases.
* gtk: When setting format check if pending format changedThibault Saunier2015-09-241-1/+1
| | | | | | | | | In case the format changed fast and the pending format is different than the currently set but the currently set is equal to the pending one we could end up having mismatch between the finally set format and the data stream format. https://bugzilla.gnome.org/show_bug.cgi?id=755542
* gtk: Do not forget to release OBJECT_LOCK on error pathThibault Saunier2015-09-241-4/+6
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=755542
* gtk: Factor out a function to run a function on main threadThibault Saunier2015-09-245-103/+114
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=755251