aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJonathan Tellier <jonathan.tellier@gmail.com>2009-07-03 00:08:43 +0800
committerjtellier <jonathan.tellier@collabora.co.uk>2009-07-03 00:08:43 +0800
commit9fe194288e580fcbd79fcae90050ccb8b6380a63 (patch)
treee852b5515218042a5ac459e68090f3946a618c8e /src
parent5dae9d1185b972651a7c7e8d4431f8dcdd2e0cd3 (diff)
downloadgsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.tar
gsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.tar.gz
gsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.tar.bz2
gsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.tar.lz
gsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.tar.xz
gsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.tar.zst
gsoc2013-empathy-9fe194288e580fcbd79fcae90050ccb8b6380a63.zip
Added functions to determine if a contact has video capabilities
Activating the "Video Call" button only if the remote contact support video. The call window's "Send Video" is only sensitive if the contact has video capabilities.
Diffstat (limited to 'src')
-rw-r--r--src/empathy-call-window.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index a71e9c8be..520a92821 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -809,7 +809,6 @@ static void
init_contact_avatar_with_size (EmpathyContact *contact, GtkWidget *image_widget,
gint size)
{
-
GdkPixbuf *pixbuf_avatar = NULL;
if (contact != NULL)
@@ -1347,6 +1346,8 @@ empathy_call_window_connected (gpointer user_data)
EmpathyCallWindow *self = EMPATHY_CALL_WINDOW (user_data);
EmpathyCallWindowPriv *priv = GET_PRIV (self);
EmpathyTpCall *call;
+ gboolean can_send_video = priv->video_input != NULL && priv->contact != NULL
+ && empathy_contact_can_voip_video (priv->contact);
g_object_get (priv->handler, "tp-call", &call, NULL);
@@ -1357,9 +1358,10 @@ empathy_call_window_connected (gpointer user_data)
gtk_widget_set_sensitive (priv->dtmf_panel, TRUE);
if (priv->video_input == NULL)
- empathy_call_window_set_send_video (self, FALSE);
+ empathy_call_window_set_send_video (self, FALSE);
- priv->sending_video = empathy_tp_call_is_sending_video (call);
+ priv->sending_video = can_send_video ?
+ empathy_tp_call_is_sending_video (call) : FALSE;
gtk_action_set_sensitive (priv->show_preview, TRUE);
gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (priv->show_preview),
@@ -1370,8 +1372,8 @@ empathy_call_window_connected (gpointer user_data)
gtk_toggle_tool_button_set_active (
GTK_TOGGLE_TOOL_BUTTON (priv->camera_button),
priv->sending_video && priv->video_input != NULL);
- gtk_widget_set_sensitive (priv->camera_button, priv->video_input != NULL);
- gtk_action_set_sensitive (priv->send_video, priv->video_input != NULL);
+ gtk_widget_set_sensitive (priv->camera_button, can_send_video);
+ gtk_action_set_sensitive (priv->send_video, can_send_video);
gtk_action_set_sensitive (priv->redial, FALSE);
gtk_widget_set_sensitive (priv->redial_button, FALSE);