aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-05-10 20:14:05 +0800
committerEmilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>2011-05-13 15:15:40 +0800
commit0adc963c14c89f572e7f9d26e0984166146cb70a (patch)
tree7fc20710ad46c55a4f1b2e82062a651cd521e225
parentdd9215e12d48621835098ebe4aaea1c99e585b36 (diff)
downloadgsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.tar
gsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.tar.gz
gsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.tar.bz2
gsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.tar.lz
gsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.tar.xz
gsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.tar.zst
gsoc2013-empathy-0adc963c14c89f572e7f9d26e0984166146cb70a.zip
A contact doesn't support video if we have no camera
-rw-r--r--libempathy/empathy-contact.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/libempathy/empathy-contact.c b/libempathy/empathy-contact.c
index 42faad483..955ee885f 100644
--- a/libempathy/empathy-contact.c
+++ b/libempathy/empathy-contact.c
@@ -40,6 +40,7 @@
#endif
#include "empathy-contact.h"
+#include "empathy-camera-monitor.h"
#include "empathy-utils.h"
#include "empathy-enum-types.h"
#include "empathy-marshal.h"
@@ -1223,8 +1224,18 @@ empathy_contact_can_do_action (EmpathyContact *self,
sensitivity = empathy_contact_can_voip_audio (self);
break;
case EMPATHY_ACTION_VIDEO_CALL:
- sensitivity = empathy_contact_can_voip_video (self);
- break;
+ {
+ EmpathyCameraMonitor *monitor;
+
+ monitor = empathy_camera_monitor_dup_singleton ();
+
+ sensitivity = empathy_contact_can_voip_video (self);
+ sensitivity = sensitivity &&
+ empathy_camera_monitor_get_available (monitor);
+
+ g_object_unref (monitor);
+ break;
+ }
case EMPATHY_ACTION_VIEW_LOGS:
sensitivity = contact_has_log (self);
break;