diff options
Diffstat (limited to 'libempathy-gtk/empathy-call-window.c')
-rw-r--r-- | libempathy-gtk/empathy-call-window.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/libempathy-gtk/empathy-call-window.c b/libempathy-gtk/empathy-call-window.c index baa169755..a1c7bd799 100644 --- a/libempathy-gtk/empathy-call-window.c +++ b/libempathy-gtk/empathy-call-window.c @@ -24,6 +24,7 @@ #include "config.h" #include <gtk/gtk.h> +#include <glib/gi18n.h> #include <libempathy/empathy-debug.h> @@ -104,6 +105,20 @@ call_window_capabilities_notify_cb (EmpathyContact *contact, } static void +call_window_name_notify_cb (EmpathyContact *contact, + GParamSpec *param, + EmpathyCallWindow *window) +{ + const gchar *name; + gchar *title; + + name = empathy_contact_get_name (contact); + title = g_strdup_printf (_("Call from %s"), name); + gtk_window_set_title (GTK_WINDOW (window->window), title); + g_free (title); +} + +static void call_window_status_notify_cb (EmpathyTpCall *call, GParamSpec *param, EmpathyCallWindow *window) @@ -124,7 +139,11 @@ call_window_status_notify_cb (EmpathyTpCall *call, g_signal_connect (contact, "notify::capabilities", G_CALLBACK (call_window_capabilities_notify_cb), window); + g_signal_connect (contact, "notify::name", + G_CALLBACK (call_window_name_notify_cb), + window); call_window_capabilities_notify_cb (contact, NULL, window); + call_window_name_notify_cb (contact, NULL, window); } } @@ -142,7 +161,7 @@ call_window_destroy_cb (GtkWidget *widget, g_slice_free (EmpathyCallWindow, window); } -void +GtkWidget * empathy_call_window_show (EmpathyTpCall *call) { EmpathyCallWindow *window; @@ -194,5 +213,7 @@ empathy_call_window_show (EmpathyTpCall *call) window); gtk_widget_show (window->window); + + return window->window; } |