From: Xavier Claessens Date: Sun, 18 May 2008 16:49:20 +0000 (+0000) Subject: Popup context menu when menu key is pressed. Fixes bug #531414 (Baptiste Mille-Mathias). X-Git-Url: https://git.0d.be/?p=empathy.git;a=commitdiff_plain;h=7afd0f35a920d5a47088327dc69e7d861bef9693 Popup context menu when menu key is pressed. Fixes bug #531414 (Baptiste Mille-Mathias). svn path=/trunk/; revision=1109 --- diff --git a/libempathy-gtk/empathy-contact-list-view.c b/libempathy-gtk/empathy-contact-list-view.c index 3c4d234b..1b44d50c 100644 --- a/libempathy-gtk/empathy-contact-list-view.c +++ b/libempathy-gtk/empathy-contact-list-view.c @@ -28,6 +28,7 @@ #include #include +#include #include #include @@ -440,6 +441,24 @@ contact_list_view_button_press_event_cb (EmpathyContactListView *view, return FALSE; } +static gboolean +contact_list_view_key_press_event_cb (EmpathyContactListView *view, + GdkEventKey *event, + gpointer user_data) +{ + if (event->keyval == GDK_Menu) { + MenuPopupData *data; + + data = g_slice_new (MenuPopupData); + data->view = view; + data->button = event->keyval; + data->time = event->time; + g_idle_add (contact_list_view_popup_menu_idle_cb, data); + } + + return FALSE; +} + static void contact_list_view_row_activated_cb (EmpathyContactListView *view, GtkTreePath *path, @@ -1030,6 +1049,10 @@ empathy_contact_list_view_init (EmpathyContactListView *view) "button-press-event", G_CALLBACK (contact_list_view_button_press_event_cb), NULL); + g_signal_connect (view, + "key-press-event", + G_CALLBACK (contact_list_view_key_press_event_cb), + NULL); g_signal_connect (view, "row-activated", G_CALLBACK (contact_list_view_row_activated_cb),