From: Sebastian Dröge Date: Mon, 20 Feb 2012 13:09:28 +0000 (+0100) Subject: seek: Explicitely call gst_x_overlay_expose() from the GtkDrawingArea expose/draw... X-Git-Tag: RELEASE-0.11.3~94^2~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=662830c21d6d03938289c5bc509674bf5d6a230e;p=platform%2Fupstream%2Fgst-plugins-base.git seek: Explicitely call gst_x_overlay_expose() from the GtkDrawingArea expose/draw signal --- diff --git a/tests/examples/seek/seek.c b/tests/examples/seek/seek.c index 3f63f35..2222323 100644 --- a/tests/examples/seek/seek.c +++ b/tests/examples/seek/seek.c @@ -2459,6 +2459,7 @@ msg_clock_lost (GstBus * bus, GstMessage * message, GstPipeline * data) #if defined (GDK_WINDOWING_X11) || defined (GDK_WINDOWING_WIN32) +static GstElement *xoverlay_element = NULL; static gulong embed_xid = 0; /* We set the xid here in response to the prepare-xwindow-id message via a @@ -2473,6 +2474,8 @@ bus_sync_handler (GstBus * bus, GstMessage * message, GstPipeline * data) gst_structure_has_name (message->structure, "prepare-xwindow-id")) { GstElement *element = GST_ELEMENT (GST_MESSAGE_SRC (message)); + xoverlay_element = element; + g_print ("got prepare-xwindow-id, setting XID %lu\n", embed_xid); if (g_object_class_find_property (G_OBJECT_GET_CLASS (element), @@ -2506,6 +2509,10 @@ draw_cb (GtkWidget * widget, cairo_t * cr, gpointer data) cairo_fill (cr); return TRUE; } + + if (xoverlay_element) + gst_x_overlay_expose (GST_X_OVERLAY (xoverlay_element)); + return FALSE; }