aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-05-12 22:19:39 +0800
committerEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-05-13 15:15:40 +0800
commit0879f69af510eed6bafe43722ce95e4164e5a8bf (patch)
treebe70ef9809bca1aedd6c87a612ed8468e54d0e4a
parent0adc963c14c89f572e7f9d26e0984166146cb70a (diff)
downloadgsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.tar
gsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.tar.gz
gsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.tar.bz2
gsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.tar.lz
gsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.tar.xz
gsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.tar.zst
gsoc2013-empathy-0879f69af510eed6bafe43722ce95e4164e5a8bf.zip
Bind 'Video call' menu items to available cameras
-rw-r--r--libempathy-gtk/empathy-individual-menu.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-individual-menu.c b/libempathy-gtk/empathy-individual-menu.c
index 1f01d8d54..5324c5013 100644
--- a/libempathy-gtk/empathy-individual-menu.c
+++ b/libempathy-gtk/empathy-individual-menu.c
@@ -31,6 +31,7 @@
#include <folks/folks.h>
#include <folks/folks-telepathy.h>
+#include <libempathy/empathy-camera-monitor.h>
#include <libempathy/empathy-dispatcher.h>
#include <libempathy/empathy-individual-manager.h>
#include <libempathy/empathy-chatroom-manager.h>
@@ -664,6 +665,7 @@ empathy_individual_video_call_menu_item_new (FolksIndividual *individual,
{
GtkWidget *item;
GtkWidget *image;
+ EmpathyCameraMonitor *monitor;
g_return_val_if_fail (FOLKS_IS_INDIVIDUAL (individual) ||
EMPATHY_IS_CONTACT (contact),
@@ -688,6 +690,11 @@ empathy_individual_video_call_menu_item_new (FolksIndividual *individual,
EMPATHY_ACTION_VIDEO_CALL);
}
+ monitor = empathy_camera_monitor_dup_singleton ();
+ g_object_set_data_full (G_OBJECT (item), "monitor", monitor, g_object_unref);
+ g_object_bind_property (monitor, "available", item, "sensitive",
+ G_BINDING_SYNC_CREATE);
+
return item;
}