aboutsummaryrefslogtreecommitdiffstats
path: root/embed/ephy-embed-popup-bw.c
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@it.gnome.org>2003-06-16 00:15:10 +0800
committerMarco Pesenti Gritti <mpeseng@src.gnome.org>2003-06-16 00:15:10 +0800
commitd5b5f70b1cca8ea489ca5be9900d0b47275b5a23 (patch)
treed797809cd8b2903ba01dde9b147b1a65291d5b32 /embed/ephy-embed-popup-bw.c
parent41eafad36cb938d63f242ccd8dc2ad4988653614 (diff)
downloadgsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.tar
gsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.tar.gz
gsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.tar.bz2
gsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.tar.lz
gsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.tar.xz
gsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.tar.zst
gsoc2013-epiphany-d5b5f70b1cca8ea489ca5be9900d0b47275b5a23.zip
Shift+F10 show context menus on the embed. (Less invasive way until
2003-06-15 Marco Pesenti Gritti <marco@it.gnome.org> * embed/ephy-embed-event.c: (ephy_embed_event_init): * embed/ephy-embed-event.h: * embed/ephy-embed-popup-bw.c: (popup_menu_at_coords), (ephy_embed_popup_bw_show_impl): * embed/ephy-embed.c: (ephy_embed_base_init): * embed/ephy-embed.h: * embed/mozilla/EventContext.cpp: * embed/mozilla/EventContext.h: * embed/mozilla/mozilla-embed.cpp: * src/ephy-tab.c: (popup_menu_at_coords), (ephy_tab_show_embed_popup), (ephy_tab_context_menu_cb), (ephy_tab_init): Shift+F10 show context menus on the embed. (Less invasive way until gtkmozembed has a context_menu signal) From galeon.
Diffstat (limited to 'embed/ephy-embed-popup-bw.c')
-rw-r--r--embed/ephy-embed-popup-bw.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/embed/ephy-embed-popup-bw.c b/embed/ephy-embed-popup-bw.c
index 553f73205..f72e44e6e 100644
--- a/embed/ephy-embed-popup-bw.c
+++ b/embed/ephy-embed-popup-bw.c
@@ -162,6 +162,17 @@ ephy_embed_popup_bw_new (BonoboWindow *window)
}
static void
+popup_menu_at_coords (GtkMenu *menu, gint *x, gint *y, gboolean *push_in,
+ gpointer user_data)
+{
+ EphyEmbedEvent *event = user_data;
+
+ *x = event->x;
+ *y = event->y;
+ *push_in = FALSE;
+}
+
+static void
ephy_embed_popup_bw_show_impl (EphyEmbedPopup *pp,
EphyEmbed *embed)
{
@@ -181,7 +192,7 @@ ephy_embed_popup_bw_show_impl (EphyEmbedPopup *pp,
ephy_embed_popup_get_popup_path (EPHY_EMBED_POPUP (p)));
gtk_menu_popup (GTK_MENU (p->priv->menu),
- NULL, NULL, NULL, NULL,
+ NULL, NULL, button == 2 ? popup_menu_at_coords : NULL, event,
button, gtk_get_current_event_time ());
}