summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Riemann <friemann@gnome.org>2015-10-11 16:23:04 +0200
committerFelix Riemann <friemann@gnome.org>2015-10-21 20:46:05 +0200
commit6c8285c58cabefec57784af407d1db2e542fc1af (patch)
tree3e6c70da0e65cc0affb5814d185270f80f3eddc3
parent25602162f7332f903f6d3b2f7b57ced5e064fd0e (diff)
downloadeog-6c8285c58cabefec57784af407d1db2e542fc1af.tar.gz
EogScrollView: Allow triggering popup menu via Shift+F10
https://bugzilla.gnome.org/show_bug.cgi?id=754985
-rw-r--r--src/eog-scroll-view.c24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/eog-scroll-view.c b/src/eog-scroll-view.c
index 47ba09dd..8b7b13de 100644
--- a/src/eog-scroll-view.c
+++ b/src/eog-scroll-view.c
@@ -2744,15 +2744,23 @@ static gboolean
view_on_button_press_event_cb (GtkWidget *view, GdkEventButton *event,
gpointer user_data)
{
- /* Ignore double-clicks and triple-clicks */
- if (event->button == 3 && event->type == GDK_BUTTON_PRESS)
- {
- eog_scroll_view_popup_menu (EOG_SCROLL_VIEW (view), event);
+ /* Ignore double-clicks and triple-clicks */
+ if (gdk_event_triggers_context_menu ((const GdkEvent*) event)
+ && event->type == GDK_BUTTON_PRESS)
+ {
+ eog_scroll_view_popup_menu (EOG_SCROLL_VIEW (view), event);
- return TRUE;
- }
+ return TRUE;
+ }
- return FALSE;
+ return FALSE;
+}
+
+static gboolean
+eog_scroll_view_popup_menu_handler (GtkWidget *widget, gpointer user_data)
+{
+ eog_scroll_view_popup_menu (EOG_SCROLL_VIEW (widget), NULL);
+ return TRUE;
}
void
@@ -2770,6 +2778,8 @@ eog_scroll_view_set_popup (EogScrollView *view,
g_signal_connect (G_OBJECT (view), "button_press_event",
G_CALLBACK (view_on_button_press_event_cb), NULL);
+ g_signal_connect (G_OBJECT (view), "popup-menu",
+ G_CALLBACK (eog_scroll_view_popup_menu_handler), NULL);
}
static gboolean