aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ephy-gui.c
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@gnome.org>2004-07-02 17:03:42 +0800
committerMarco Pesenti Gritti <marco@src.gnome.org>2004-07-02 17:03:42 +0800
commit6dadef323fb59daefac69200014b1d5f238a911a (patch)
treef44b28f70a91dee49b95ebbc8d5c7a86a7ea9f3c /lib/ephy-gui.c
parent5788200966658bf840916954af8718426d33c177 (diff)
downloadgsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.tar
gsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.tar.gz
gsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.tar.bz2
gsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.tar.lz
gsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.tar.xz
gsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.tar.zst
gsoc2013-epiphany-6dadef323fb59daefac69200014b1d5f238a911a.zip
Move in the bookmarks dir.
2004-07-02 Marco Pesenti Gritti <marco@gnome.org> * src/bookmarks/ephy-favorites-menu.c: * src/bookmarks/ephy-favorites-menu.h: Move in the bookmarks dir. * lib/ephy-gui.c: (ephy_gui_select_row_by_key), (ephy_gui_is_middle_click): * lib/ephy-gui.h: Add a function to check if menus was activated by a middle or a ctrl+click (which is equivalent in epiphany) * lib/ephy-marshal.list: * src/Makefile.am: * src/bookmarks/Makefile.am: * src/bookmarks/ephy-bookmark-action.c: (activate_cb), (ephy_bookmark_action_class_init): * src/bookmarks/ephy-bookmark-action.h: * src/bookmarks/ephy-bookmarks-menu.c: (open_bookmark_cb), (create_menu): * src/bookmarks/ephy-bookmarksbar.c: (bookmark_open_in_tab_cb), (bookmark_open_cb), (ephy_bookmarksbar_action_request): * src/bookmarks/ephy-topic-action.c: (menu_activate_cb), (ephy_topic_action_class_init): * src/bookmarks/ephy-topic-action.h: Add signals to open bookmarks in new window/tab. I'll need them for context menus. Use them for middle/ctrl click.
Diffstat (limited to 'lib/ephy-gui.c')
-rw-r--r--lib/ephy-gui.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/ephy-gui.c b/lib/ephy-gui.c
index 09ef4ef4a..88460dc78 100644
--- a/lib/ephy-gui.c
+++ b/lib/ephy-gui.c
@@ -35,6 +35,7 @@
#include <gtk/gtkimage.h>
#include <gtk/gtklabel.h>
#include <gtk/gtkstock.h>
+#include <gtk/gtkmain.h>
/* Styles for tab labels */
GtkStyle *loading_text_style = NULL;
@@ -214,3 +215,34 @@ ephy_gui_select_row_by_key (GtkTreeView *treeview, gint column, guint32 unicode)
return TRUE;
}
+
+gboolean
+ephy_gui_is_middle_click (void)
+{
+ gboolean new_tab = FALSE;
+ GdkEvent *event;
+
+ event = gtk_get_current_event ();
+ if (event != NULL)
+ {
+ if (event->type == GDK_BUTTON_RELEASE)
+ {
+ guint modifiers, button, state;
+
+ modifiers = gtk_accelerator_get_default_mod_mask ();
+ button = event->button.button;
+ state = event->button.state;
+
+ /* middle-click or control-click */
+ if ((button == 1 && ((state & modifiers) == GDK_CONTROL_MASK)) ||
+ (button == 2))
+ {
+ new_tab = TRUE;
+ }
+ }
+
+ gdk_event_free (event);
+ }
+
+ return new_tab;
+}