diff options
author | Sjoerd Simons <sjoerd.simons@collabora.co.uk> | 2011-02-23 19:39:35 +0800 |
---|---|---|
committer | Emilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk> | 2011-06-09 17:20:06 +0800 |
commit | c850d9b17d93c4e964c95bbaa526008f2431f912 (patch) | |
tree | b6d5e36d9ceb7487120f4886636851499d844071 /src/empathy-call-window.c | |
parent | 612006042bfb3455072203b6afc3f1c6aa1462a0 (diff) | |
download | gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.tar gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.tar.gz gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.tar.bz2 gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.tar.lz gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.tar.xz gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.tar.zst gsoc2013-empathy-c850d9b17d93c4e964c95bbaa526008f2431f912.zip |
Only change the UI in the main thread
Diffstat (limited to 'src/empathy-call-window.c')
-rw-r--r-- | src/empathy-call-window.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c index 0a349d8b8..ad4e5bcec 100644 --- a/src/empathy-call-window.c +++ b/src/empathy-call-window.c @@ -2442,6 +2442,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 @@ -2469,8 +2479,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: |