From f4e6cbe11974883a3883536461c0be08f75cdd39 Mon Sep 17 00:00:00 2001 From: Jonny Lamb Date: Fri, 23 Oct 2009 13:33:39 +0100 Subject: ft-manager: allow closing the dialog with C-w or Esc Signed-off-by: Jonny Lamb --- src/empathy-ft-manager.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/empathy-ft-manager.c') diff --git a/src/empathy-ft-manager.c b/src/empathy-ft-manager.c index bc4f2a7b7..9f6c1f327 100644 --- a/src/empathy-ft-manager.c +++ b/src/empathy-ft-manager.c @@ -33,6 +33,7 @@ #include #include +#include #define DEBUG_FLAG EMPATHY_DEBUG_FT #include @@ -950,6 +951,21 @@ ft_manager_destroy_cb (GtkWidget *widget, g_object_unref (manager); } +static gboolean +ft_manager_key_press_event_cb (GtkWidget *widget, + GdkEventKey *event, + gpointer user_data) +{ + if ((event->state & GDK_CONTROL_MASK && event->keyval == GDK_w) + || event->keyval == GDK_Escape) + { + gtk_widget_destroy (widget); + return TRUE; + } + + return FALSE; +} + static void ft_manager_build_ui (EmpathyFTManager *manager) { @@ -978,6 +994,7 @@ ft_manager_build_ui (EmpathyFTManager *manager) "ft_manager_dialog", "response", ft_manager_response_cb, "ft_manager_dialog", "delete-event", ft_manager_delete_event_cb, "ft_manager_dialog", "configure-event", ft_manager_configure_event_cb, + "ft_manager_dialog", "key-press-event", ft_manager_key_press_event_cb, NULL); empathy_builder_unref_and_keep_widget (gui, priv->window); -- cgit v1.2.3