aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/empathy-status-icon.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/empathy-status-icon.c b/src/empathy-status-icon.c
index 0f3fff1b7..08129b61d 100644
--- a/src/empathy-status-icon.c
+++ b/src/empathy-status-icon.c
@@ -119,6 +119,17 @@ notification_approve_cb (NotifyNotification *notification,
}
static void
+notification_decline_cb (NotifyNotification *notification,
+ gchar *action,
+ EmpathyStatusIcon *icon)
+{
+ EmpathyStatusIconPriv *priv = GET_PRIV (icon);
+
+ if (priv->event)
+ empathy_event_decline (priv->event);
+}
+
+static void
add_notification_actions (EmpathyStatusIcon *self,
NotifyNotification *notification)
{
@@ -131,6 +142,16 @@ add_notification_actions (EmpathyStatusIcon *self,
self, NULL);
break;
+ case EMPATHY_EVENT_TYPE_VOIP:
+ notify_notification_add_action (notification,
+ "reject", _("Reject"), (NotifyActionCallback) notification_decline_cb,
+ self, NULL);
+
+ notify_notification_add_action (notification,
+ "answer", _("Answer"), (NotifyActionCallback) notification_approve_cb,
+ self, NULL);
+ break;
+
default:
break;
}