Matthew Waters [Fri, 1 Sep 2017 05:00:12 +0000 (15:00 +1000)]
gtkglsink: expose the created display and context correctly
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.
Julien Isorce [Fri, 7 Jul 2017 15:15:12 +0000 (16:15 +0100)]
gl: do not include GL headers in public gstgl headers
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
Nicolas Dufresne [Tue, 16 May 2017 18:05:52 +0000 (14:05 -0400)]
Remove plugin specific static build option
Static and dynamic plugins now have the same interface. The standard
--enable-static/--enable-shared toggle are sufficient.
Thibault Saunier [Wed, 8 Mar 2017 18:01:13 +0000 (15:01 -0300)]
docs: Port all docstring to gtk-doc markdown
Matthew Waters [Tue, 14 Mar 2017 03:15:00 +0000 (14:15 +1100)]
gl: GL_ARRAY_BUFFER is not a part of VAO state
As a result we need to bind it on every draw in order to have the
correct state in the GL state machine.
Nicolas Dufresne [Sat, 4 Mar 2017 16:03:53 +0000 (11:03 -0500)]
Rename plugin filesnames to match plugin names
- 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
Juan Pablo Ugarte [Wed, 11 Jan 2017 13:32:23 +0000 (10:32 -0300)]
gl/examples/gtk: fixed compilation on systems without GL_GEOMETRY_SHADER
https://bugzilla.gnome.org/show_bug.cgi?id=777143
Matthew Waters [Thu, 12 Jan 2017 10:35:25 +0000 (21:35 +1100)]
gl/utils: also take care of the local GL context in query functions
Simplifies a deduplicates a lot of code in elements retrieving/setting
the local OpenGL context.
Matthew Waters [Wed, 5 Oct 2016 01:19:12 +0000 (12:19 +1100)]
gl: GST_GL_TYPE -> GST_TYPE_GL
Some deprecated symbols are kept for backwards compatibility
Matthew Waters [Fri, 9 Sep 2016 06:36:03 +0000 (16:36 +1000)]
meson: add build files for the gtk plugin
Nirbheek Chauhan [Sun, 27 Mar 2016 08:59:58 +0000 (14:29 +0530)]
gtk: Fix logging in base widget and fix desc of GL sink
Set a default category for gtkgstbasewidget lest the logging go to the 'default'
category where it can't be found easily
Matthew Waters [Fri, 25 Mar 2016 06:49:14 +0000 (17:49 +1100)]
gtk/gl: don't assert when gdk doesn't provide a GL context
Allows the application to check whether gtkglsink is supported by setting
the element to READY.
https://bugzilla.gnome.org/show_bug.cgi?id=764148
Vineeth TM [Wed, 9 Mar 2016 23:44:57 +0000 (08:44 +0900)]
gtkbasesink: post message to application for unhandled keyboard/mouse events
https://bugzilla.gnome.org/show_bug.cgi?id=763403
Vineeth TM [Fri, 4 Mar 2016 06:50:26 +0000 (15:50 +0900)]
bad: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763081
Sebastian Dröge [Sat, 5 Mar 2016 09:38:46 +0000 (11:38 +0200)]
gtk: examples: #define GST_USE_UNSTABLE_API and link with X11_LIBS
X11_LIBS is needed for XInitThreads() and without the #define we get
warnings about the GL API being still unstable.
Matthew Waters [Tue, 16 Feb 2016 08:59:13 +0000 (19:59 +1100)]
gtk(gl)sink: remove the signal handlers on finalize
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
Matthew Waters [Tue, 9 Feb 2016 01:14:04 +0000 (12:14 +1100)]
glsyncmeta: separate out gpu/cpu waits.
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.
Reynaldo H. Verdejo Pinochet [Tue, 17 Nov 2015 23:23:17 +0000 (15:23 -0800)]
Remove unnecessary NULL checks before g_free()
g_free() is NULL-safe
Matthew Waters [Tue, 10 Nov 2015 01:32:39 +0000 (12:32 +1100)]
gtk: add the overlaycomposition feature to the template caps
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
Matthew Waters [Mon, 19 Oct 2015 04:15:30 +0000 (15:15 +1100)]
gl: be consistent in gobject boilerpate
GST_GL_IS_* vs GST_IS_GL_*
git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g'
Matthew Waters [Sat, 17 Oct 2015 04:26:46 +0000 (15:26 +1100)]
glshaderelement: implement on-demand create-shader signalling
One may not have an GstGLContext available or current in the thread where one
would need to update the shader. Support this by signalling create-shader
whenever the one-shot 'update-shader' is set to TRUE.
Matthew Waters [Fri, 16 Oct 2015 15:40:50 +0000 (02:40 +1100)]
gtk: separate out the widget/window destroy callbacks
Fixes assertion due to the sink_finalize() being run before the widget destroy
callback.
https://bugzilla.gnome.org/show_bug.cgi?id=755969
Matthew Waters [Fri, 16 Oct 2015 14:08:29 +0000 (01:08 +1100)]
gl/examples: add a live shader demo using the new GstGLSLStage
Implemented with videotestsrc ! glshader ! glupload ! gtkglsink
Errors on an invalid shader compilation are ignored however any error
provided by the glsl compiler is printed to stdout.
Matthew Waters [Fri, 4 Sep 2015 06:02:32 +0000 (16:02 +1000)]
glshader: port to using GstGLSLStage objects for string management
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.
Matthew Waters [Tue, 29 Sep 2015 12:57:52 +0000 (22:57 +1000)]
gtk: add some GL debug statements to show up in GL traces
Matthew Waters [Mon, 28 Sep 2015 14:25:00 +0000 (00:25 +1000)]
gtk: fix assertion when the element has no peer
When proxying keyboard/navigation/mouse events, only unref a successfully
retreived peer pad.
https://bugzilla.gnome.org/show_bug.cgi?id=755738
Sebastian Dröge [Thu, 24 Sep 2015 16:51:39 +0000 (18:51 +0200)]
gtk: Only run from the main thread in stop() if we created the window
We're not doing anything at all from the main thread in other cases.
Thibault Saunier [Thu, 24 Sep 2015 13:52:40 +0000 (15:52 +0200)]
gtk: When setting format check if pending format changed
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
Thibault Saunier [Thu, 24 Sep 2015 13:51:28 +0000 (15:51 +0200)]
gtk: Do not forget to release OBJECT_LOCK on error path
https://bugzilla.gnome.org/show_bug.cgi?id=755542
Thibault Saunier [Thu, 24 Sep 2015 09:37:04 +0000 (11:37 +0200)]
gtk: Factor out a function to run a function on main thread
https://bugzilla.gnome.org/show_bug.cgi?id=755251
Thibault Saunier [Thu, 24 Sep 2015 08:51:31 +0000 (10:51 +0200)]
gtk: Marshall state changes in the main thread
Gtk is not MT safe thus we need to make sure that everything is done
in the main thread when working with it.
https://bugzilla.gnome.org/show_bug.cgi?id=755251
Thibault Saunier [Wed, 23 Sep 2015 09:42:51 +0000 (11:42 +0200)]
gtksink: Do not show window until we reach the PAUSED state
https://bugzilla.gnome.org/show_bug.cgi?id=755459
Thibault Saunier [Mon, 21 Sep 2015 08:47:15 +0000 (10:47 +0200)]
gtksink: Do not re destroy the GtkWindow if destroyed by the user
Otherwise we will get an ASSERT.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755249
Thibault Saunier [Sat, 19 Sep 2015 09:46:37 +0000 (11:46 +0200)]
gtkglsink: Hide and clean the GtkWindow we might create
When stopping the sink we should always hide the window.
https://bugzilla.gnome.org/show_bug.cgi?id=755249
Vineeth T M [Thu, 17 Sep 2015 04:35:02 +0000 (13:35 +0900)]
gl: Fix GError leaks during failures
https://bugzilla.gnome.org/show_bug.cgi?id=755140
Matthew Waters [Wed, 9 Sep 2015 14:07:18 +0000 (00:07 +1000)]
gtk, qt: more specifically define the compile time requirements
Otherwise we could include headers/configurations that will
never been installed.
https://bugzilla.gnome.org/show_bug.cgi?id=754732
Thibault Saunier [Fri, 4 Sep 2015 13:43:40 +0000 (15:43 +0200)]
gtk: Do not consider GtkEvents as handled
Applications might still want to use them
after the sink transformed them into
GstNavigation events
Tim-Philipp Müller [Mon, 31 Aug 2015 17:06:31 +0000 (18:06 +0100)]
gtk, qt, gl: fix typo in debug and error messages
Sebastian Dröge [Wed, 19 Aug 2015 10:52:21 +0000 (13:52 +0300)]
gtk/gl: Use our GL function table instead of directly calling GL functions
Otherwise we would have to link the plugin to the GL libraries directly.
Nicolas Dufresne [Sat, 15 Aug 2015 12:31:15 +0000 (14:31 +0200)]
glsink: Enable sync meta on pools we offer
As the upload is asynchronous, we need to enable the sync meta to
gain correct rendering. The buffer pool receiver don't know about
that.
Nicolas Dufresne [Sat, 15 Aug 2015 13:12:27 +0000 (15:12 +0200)]
gtkglsink: Add overlay composition support
Rendering composition overlay in GL with additional high resolution
overlay being added.
Nicolas Dufresne [Sat, 15 Aug 2015 13:08:11 +0000 (15:08 +0200)]
gtkglsink: Fix unsafe handling of buffer life time
We need to keep the active buffer (the one we have retreive a
texture id from) otherwise it's racy and upstream may upload
new content before we have rendered or during later redisplay.
Nicolas Dufresne [Fri, 14 Aug 2015 16:07:15 +0000 (18:07 +0200)]
gtkglsink: Remove reset path
The reset path is bogus and there is no reason to get rid of these
things during resize.
Matthew Waters [Tue, 11 Aug 2015 22:18:20 +0000 (00:18 +0200)]
gtk: fix motion event name
s/motion/mouse/
Fixes hover interaction with DVD menus
Matthew Waters [Tue, 11 Aug 2015 22:14:14 +0000 (00:14 +0200)]
gtk: correct navigation events for window scaling
i.e. take into account the possiblity of scaling in the sink
or through GDK_SCALE.
Fixes DVD Menus with a scaled gtkwidget
Matthew Waters [Tue, 11 Aug 2015 11:34:59 +0000 (13:34 +0200)]
gtk: implement GstNavigation interface
Now we can push key/mouse input into the pipeline for DVD use cases.
Julien Isorce [Tue, 21 Jul 2015 10:23:21 +0000 (11:23 +0100)]
gstglwidget: use gst_gl_display_create_context
Also handle the failure case.
https://bugzilla.gnome.org/show_bug.cgi?id=750310
Thibault Saunier [Mon, 20 Jul 2015 09:09:20 +0000 (11:09 +0200)]
gtk: Log GDK GL error when failling creating GdkGLContext
Matthew Waters [Sat, 18 Jul 2015 07:19:18 +0000 (17:19 +1000)]
glcontext: fix get_current_gl_api on x11/nvidia drivers
They require to get_proc_address some functions through the
platform specific {glX,egl}GetProcAddress rather than the default
GL library symbol lookup.
Nicolas Dufresne [Fri, 17 Jul 2015 20:00:01 +0000 (16:00 -0400)]
gtkgstglwidget: Cleanup unused private member
new_buffer has been moved to base class. Also cleanup
the properties comment, which are also all moved into
the base class.
Nicolas Dufresne [Fri, 17 Jul 2015 19:57:37 +0000 (15:57 -0400)]
gtksink: "widget" must be access from main thread
Document that "widget" property must be accessed from the
main thread (where GTK is running). This is the same for
state transition on these elements. It is very natural to
do so un GTK applications.
Nicolas Dufresne [Fri, 17 Jul 2015 19:08:53 +0000 (15:08 -0400)]
gtkglsink: Don't leak vertex array and buffers
This is now possible since reset is always called from the
main thread.
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Fri, 17 Jul 2015 18:36:56 +0000 (14:36 -0400)]
gtkgstbasewidget: Fix black frame on resize
This is solved by only applying the new format when the next
buffer is to be rendered and on the GTK thread.
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Fri, 17 Jul 2015 17:05:05 +0000 (13:05 -0400)]
gtkgstbasewidget: Pass already parsed VideoInfo
As the base sink already parse the caps into VideoInfo it
makes sense to pass in VideoInfo to the widget instead.
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Thu, 16 Jul 2015 20:49:32 +0000 (16:49 -0400)]
gtkglsink: Port to GstGtkBaseSink base class
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Thu, 16 Jul 2015 20:00:37 +0000 (16:00 -0400)]
gtksink: Port to GstGtkBaseSink
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Thu, 16 Jul 2015 19:59:59 +0000 (15:59 -0400)]
gtkbasesink: Create a base class
This contains all the common code between the gtkglsink and
gtksink.
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Thu, 16 Jul 2015 18:30:42 +0000 (14:30 -0400)]
gtkglsink: Port to GtkGstBaseWidget
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Thu, 16 Jul 2015 16:55:11 +0000 (12:55 -0400)]
gtksink: Port to GtkGstBaseWidget
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Thu, 16 Jul 2015 16:51:34 +0000 (12:51 -0400)]
gtk: Add GtkGstBaseWidget
This is a "pseudo" base class. Basically it's a shared instance
and class structure and a shared set of function between the
two widget. It cannot have it's own type like normal base class
since the one instance will implement GtkGLArea while the other
implements GtkDrawingAreay. To workaround this, the parent instance
and class is a union of both.
https://bugzilla.gnome.org/show_bug.cgi?id=752441
Nicolas Dufresne [Wed, 15 Jul 2015 21:35:22 +0000 (17:35 -0400)]
gtkgstglwidget: Remove unused gl_caps
Nicolas Dufresne [Wed, 15 Jul 2015 20:56:33 +0000 (16:56 -0400)]
gtksink: Create a window if the widget is unparented
The same way as it's now done with the gtkglsink, create a top
level window if the widget is not parented.
https://bugzilla.gnome.org/show_bug.cgi?id=751104
Nicolas Dufresne [Wed, 15 Jul 2015 18:35:02 +0000 (14:35 -0400)]
gtksink: Ensure the copy pasted code remains the same
Move back the default property at the same place they are in the
other sink. This helps when using a diff viewer to synchronized
this unfortunate copy paste.
https://bugzilla.gnome.org/show_bug.cgi?id=751104
Nicolas Dufresne [Wed, 15 Jul 2015 18:32:42 +0000 (14:32 -0400)]
gtk: Fix race between queue_draw and destroy
In GTK dispose can be called before the last ref is reached. This
happens when you close the container window. The dispose will be
explicitly called, and destroyed notify will be fired. This patch
fixes this race by properly tracking the widget state.
In the sink, we now set the widget pointer to NULL, so the widget
will properly get created again if you set your pipeline to NULL
state after the widget was destroy, and set it back to PLAYING.
https://bugzilla.gnome.org/show_bug.cgi?id=751104
Nicolas Dufresne [Wed, 15 Jul 2015 15:47:51 +0000 (11:47 -0400)]
gtkgstwidget: Add missing break in get_property
Nicolas Dufresne [Wed, 15 Jul 2015 15:44:30 +0000 (11:44 -0400)]
gtksinks: Remove undefined private structure
The classes contains a private structure which are not defined,
hence unused.
Matthew Waters [Thu, 9 Jul 2015 03:03:23 +0000 (13:03 +1000)]
gtk: add to the generic/states test
Xavier Claessens [Wed, 17 Jun 2015 13:36:57 +0000 (09:36 -0400)]
GstGtkGLSink: Ensure widget has a toplevel parent
Checking for a parent is not enough, it must have a toplevel one.
If widget has no toplevel parent then add it in a GtkWindow, that
make it usable from gst-launch-1.0.
https://bugzilla.gnome.org/show_bug.cgi?id=751104
Xavier Claessens [Wed, 17 Jun 2015 13:36:40 +0000 (09:36 -0400)]
GstGtkGLSink: Post error if widget gets destroyed
https://bugzilla.gnome.org/show_bug.cgi?id=751104
Xavier Claessens [Tue, 16 Jun 2015 20:21:26 +0000 (16:21 -0400)]
GstGtkGLSink: fix possible warning in finalize
If the element is finalized before going in READY state
the widget could still be NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=751104
Thibault Saunier [Mon, 6 Jul 2015 17:33:35 +0000 (19:33 +0200)]
gtkglsink: Release the widget lock when trying to get the GL context
Otherwise we might be waiting for the lock on the main loop (for
example in the ->render vmethod) and thus we will deadlock.
Sebastian Dröge [Mon, 15 Jun 2015 19:32:43 +0000 (21:32 +0200)]
gtkglwidget: Const'ify another array
Sebastian Dröge [Mon, 15 Jun 2015 19:29:46 +0000 (21:29 +0200)]
gtkglwidget: Calculate the viewport size ourselves
Getting the current viewport and modifying it relatively will produce an
interesting feedback loop during widget resizing. Over a few frames we
will gradually move the viewport a bit until it converged again, adding
unnecessary additional borders at the top and left.
Sebastian Dröge [Mon, 15 Jun 2015 19:24:01 +0000 (21:24 +0200)]
gtk: Use the display width/height for the widget's preferred width/height
Sebastian Dröge [Mon, 15 Jun 2015 18:45:11 +0000 (20:45 +0200)]
gtksink: Add support for xRGB/BGRx
Sebastian Dröge [Mon, 15 Jun 2015 18:39:59 +0000 (20:39 +0200)]
gtk: Cairo color formats are in native endianness, GStreamer's in memory order
CAIRO_FORMAT_ARGB32 is ARGB on big endian and BGRA on little endian.
Sebastian Dröge [Mon, 15 Jun 2015 18:35:38 +0000 (20:35 +0200)]
gtk: Implement ignore-alpha property and enable it by default
Sebastian Dröge [Mon, 15 Jun 2015 18:13:57 +0000 (20:13 +0200)]
gtk: Sync properties from the sink to the widget upon widget creation
Matthew Waters [Mon, 15 Jun 2015 08:28:37 +0000 (18:28 +1000)]
gtk: implement pixel and display aspect ratio handling
Matthew Waters [Mon, 15 Jun 2015 04:35:35 +0000 (14:35 +1000)]
gtk: silence unused variable warnings for unsupported winsys'
Matthew Waters [Mon, 15 Jun 2015 04:33:08 +0000 (14:33 +1000)]
gtk: implement basic wayland GL support
Thibault Saunier [Fri, 12 Jun 2015 13:39:56 +0000 (15:39 +0200)]
gtk: Do not try to activate a NULL GLContext
At that point in the code nothing guarantees it exists
Matthew Waters [Fri, 12 Jun 2015 05:17:30 +0000 (15:17 +1000)]
gtk: implement video aspect-ratio handling
For both the software and the GL sink's.
Doesn't deal with the pixel-aspect-ratio field at all yet.
Matthew Waters [Fri, 12 Jun 2015 02:40:50 +0000 (12:40 +1000)]
gtk: fix a couple of typos
Matthew Waters [Fri, 12 Jun 2015 02:29:37 +0000 (12:29 +1000)]
gtkglsink: reset the context/display in READY_TO_NULL
Fixes context propagation in pipelines with upstream GL elements.
Nicolas Dufresne [Thu, 11 Jun 2015 16:41:10 +0000 (12:41 -0400)]
gstgtk: No need to realize the widget
The widget already does that.
Nicolas Dufresne [Thu, 11 Jun 2015 16:38:53 +0000 (12:38 -0400)]
gstgtk: Don't leak the widget
g_object_get() returns a ref, gtk_container_add() only ref_sink().
That mean we still need to unref afterward. This leak was hiding
a reference bug previously present.
Nicolas Dufresne [Thu, 11 Jun 2015 16:10:23 +0000 (12:10 -0400)]
gstgtk: Allow doing gst-inspect-1.0 on these elements
This patch allow going gst-inspect-1.0 on these elements removing
ugly crash that was previously occurring. The method consist of
making the widget creation as lazy as possible. This way we don't
endup doing gtk_init() before the application. We also ref_sink()
the widget, so we don't crash if the parent widget is discarded,
and cleanly error out with GL if the widget has no parent window,
because calling gtk_widget_realized() can only be done if the widget
has been parented to a window).
Thibault Saunier [Thu, 11 Jun 2015 13:02:44 +0000 (15:02 +0200)]
gtk: Do not try to initialize display if we have not have a GLContext yet
Sebastian Dröge [Thu, 11 Jun 2015 12:58:27 +0000 (14:58 +0200)]
gtk: Add missing CFLAGS to example
Matthew Waters [Thu, 18 Dec 2014 06:00:30 +0000 (17:00 +1100)]
Implement gtk sinks
two sinks are provided. gtksink which is a cairo/software based renderer
and gtkglsink which utilises the GL support in gtk and gstreamer.
Matthew Waters [Tue, 29 Apr 2014 06:38:55 +0000 (16:38 +1000)]
gl/examples: move to -bad
- fix all the compiler errors
- give them their own gl directory
Руслан Ижбулатов [Tue, 18 Mar 2014 00:08:50 +0000 (00:08 +0000)]
gl: fix the use of always-defined macros
After
2a0f0399ae226089c2ba07b1b904741b856f37af GST_GL_* macros are always
defined to 0 or 1. Don't use #ifdef ... or #if defined() on them.
https://bugzilla.gnome.org/show_bug.cgi?id=726591
Matthew Waters [Sun, 29 Dec 2013 06:29:53 +0000 (17:29 +1100)]
[864/906] examples: update to gtk3
Sebastian Dröge [Wed, 17 Jul 2013 09:22:02 +0000 (11:22 +0200)]
[771/906] gl: Some less long/ulong/gulong usage
Mathieu Duponchelle [Tue, 16 Jul 2013 16:27:07 +0000 (18:27 +0200)]
[769/906] tests/examples: fix and port some of the examples.
Realize widgets, remove glupload element.
Sebastian Dröge [Wed, 10 Jul 2013 09:24:34 +0000 (11:24 +0200)]
[729/906] gl: Include config.h everywhere
Sebastian Dröge [Fri, 28 Jun 2013 09:00:46 +0000 (11:00 +0200)]
[720/906] examples: Stop using deprecated GLib thread API
Matthew Waters [Thu, 8 Nov 2012 11:53:56 +0000 (22:53 +1100)]
[603/906] update FSF address
Matthew Waters [Tue, 14 Aug 2012 04:41:19 +0000 (14:41 +1000)]
[560/906] examples: update for bus api changes and glimagesink changes