[Telepathy-commits] [telepathy-stream-engine/master] Hide widget if the embedded signals notifies us of an unembed

Olivier Crête tester at TesterBox.tester.ca
Mon Jan 5 10:51:26 PST 2009


---
 src/videosink.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/videosink.c b/src/videosink.c
index ca8dfd7..7f8baba 100644
--- a/src/videosink.c
+++ b/src/videosink.c
@@ -206,6 +206,17 @@ delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data)
   return TRUE;
 }
 
+static void
+embedded_event (GtkWidget *widget, gpointer user_data)
+{
+  gboolean embedded;
+
+  g_object_get (widget, "embedded", &embedded, NULL);
+
+  if (embedded)
+    gtk_widget_show (widget);
+}
+
 static GObject *
 tp_stream_engine_video_sink_constructor (GType type,
     guint n_props,
@@ -227,7 +238,7 @@ tp_stream_engine_video_sink_constructor (GType type,
   self->priv->delete_event_handler_id = g_signal_connect (self->priv->plug,
       "delete-event", G_CALLBACK (delete_event), self);
   self->priv->embedded_handler_id = g_signal_connect (self->priv->plug,
-      "embedded", G_CALLBACK (gtk_widget_show), NULL);
+      "embedded", G_CALLBACK (embedded_event), NULL);
 
   self->priv->window_id = gtk_plug_get_id (GTK_PLUG (self->priv->plug));
 
-- 
1.5.6.5




More information about the Telepathy-commits mailing list