aboutsummaryrefslogtreecommitdiffstats
path: root/src/ephy-go-action.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ephy-go-action.c')
-rw-r--r--src/ephy-go-action.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/ephy-go-action.c b/src/ephy-go-action.c
index 25e5e5e53..a7a0c29b4 100644
--- a/src/ephy-go-action.c
+++ b/src/ephy-go-action.c
@@ -79,6 +79,15 @@ create_tool_item (GtkAction *action)
}
static void
+button_clicked_cb (GtkWidget *widget,
+ GdkEventButton *event,
+ gpointer user_data)
+{
+ if (event->button == 1 || event->button == 2)
+ gtk_action_activate (GTK_ACTION (user_data));
+}
+
+static void
connect_proxy (GtkAction *action,
GtkWidget *proxy)
{
@@ -86,9 +95,9 @@ connect_proxy (GtkAction *action,
if (GTK_IS_TOOL_ITEM (proxy))
{
- g_signal_connect_object (GTK_BIN (proxy)->child, "clicked",
- G_CALLBACK (gtk_action_activate), action,
- G_CONNECT_SWAPPED);
+ g_signal_connect (GTK_BIN (proxy)->child, "button-press-event",
+ G_CALLBACK (button_clicked_cb), action
+ );
}
}