aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSjoerd Simons <sjoerd.simons@collabora.co.uk>2011-02-23 19:39:35 +0800
committerSjoerd Simons <sjoerd.simons@collabora.co.uk>2011-02-23 22:50:44 +0800
commit89a7b20c0c51ccaa2ad28a185672f4f472cd2e20 (patch)
treef09dc4a987e4514a9a71750388a45331d24102b5 /src
parentac766b706727ba8efdcb6132cd426d4882a82581 (diff)
downloadgsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.tar
gsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.tar.gz
gsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.tar.bz2
gsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.tar.lz
gsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.tar.xz
gsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.tar.zst
gsoc2013-empathy-89a7b20c0c51ccaa2ad28a185672f4f472cd2e20.zip
Only change the UI in the main thread
Diffstat (limited to 'src')
-rw-r--r--src/empathy-call-window.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index 04da28780..5e28002b8 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -2436,6 +2436,16 @@ empathy_call_window_connected (gpointer user_data)
return FALSE;
}
+static gboolean
+emapthy_call_window_show_video_output_cb (gpointer user_data)
+{
+ EmpathyCallWindow *self = EMPATHY_CALL_WINDOW (user_data);
+
+ gtk_widget_hide (self->priv->remote_user_avatar_widget);
+ gtk_widget_show (self->priv->video_output);
+
+ return FALSE;
+}
/* Called from the streaming thread */
static gboolean
@@ -2463,8 +2473,7 @@ empathy_call_window_src_added_cb (EmpathyCallHandler *handler,
pad = empathy_call_window_get_audio_sink_pad (self);
break;
case TP_MEDIA_STREAM_TYPE_VIDEO:
- gtk_widget_hide (priv->remote_user_avatar_widget);
- gtk_widget_show (priv->video_output);
+ g_idle_add (emapthy_call_window_show_video_output_cb, self);
pad = empathy_call_window_get_video_sink_pad (self);
break;
default: