[empathy] factor out empathy_call_window_change_webcam()



commit d15f750dcfb31415cb6d8d39122593863e7fcd37
Author: Guillaume Desmottes <guillaume desmottes collabora co uk>
Date:   Mon Nov 21 11:43:51 2011 +0100

    factor out empathy_call_window_change_webcam()
    
    https://bugzilla.gnome.org/show_bug.cgi?id=664459

 src/empathy-call-window.c |   13 +++++++++++++
 src/empathy-call-window.h |    3 +++
 src/empathy-camera-menu.c |    4 +---
 3 files changed, 17 insertions(+), 3 deletions(-)
---
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index 732f45e..6e2df79 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -4175,3 +4175,16 @@ empathy_call_window_get_video_src (EmpathyCallWindow *self)
 {
   return EMPATHY_GST_VIDEO_SRC (self->priv->video_input);
 }
+
+void
+empathy_call_window_change_webcam (EmpathyCallWindow *self,
+    const gchar *device)
+{
+  EmpathyGstVideoSrc *video;
+
+  video = empathy_call_window_get_video_src (self);
+
+  empathy_call_window_play_camera (self, FALSE);
+  empathy_video_src_change_device (video, device);
+  empathy_call_window_play_camera (self, TRUE);
+}
diff --git a/src/empathy-call-window.h b/src/empathy-call-window.h
index 81cf170..abaae27 100644
--- a/src/empathy-call-window.h
+++ b/src/empathy-call-window.h
@@ -78,6 +78,9 @@ EmpathyGstVideoSrc *empathy_call_window_get_video_src (EmpathyCallWindow *window
 void empathy_call_window_play_camera (EmpathyCallWindow *self,
     gboolean play);
 
+void empathy_call_window_change_webcam (EmpathyCallWindow *self,
+    const gchar *device);
+
 G_END_DECLS
 
 #endif /* #ifndef __EMPATHY_CALL_WINDOW_H__*/
diff --git a/src/empathy-camera-menu.c b/src/empathy-camera-menu.c
index cee11d7..9633d84 100644
--- a/src/empathy-camera-menu.c
+++ b/src/empathy-camera-menu.c
@@ -146,9 +146,7 @@ empathy_camera_menu_activate_cb (GtkAction *action,
   if (!tp_strdiff (device, current_device))
     goto out;
 
-  empathy_call_window_play_camera (self->priv->window, FALSE);
-  empathy_video_src_change_device (video, device);
-  empathy_call_window_play_camera (self->priv->window, TRUE);
+  empathy_call_window_change_webcam (self->priv->window, device);
 
  out:
   g_free (current_device);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]