diff options
author | Romain Perier <mrpouet@gentoo.org> | 2010-01-02 20:33:54 +0000 |
---|---|---|
committer | Romain Perier <mrpouet@gentoo.org> | 2010-01-02 20:33:54 +0000 |
commit | 3df66496b4a4bc324d71c05d587e06fc73c41707 (patch) | |
tree | 1c9b2a7dec7b9e0b16b7fb2ef680c25927918d3d /www-client/epiphany-extensions | |
parent | Version bump. (diff) | |
download | gentoo-2-3df66496b4a4bc324d71c05d587e06fc73c41707.tar.gz gentoo-2-3df66496b4a4bc324d71c05d587e06fc73c41707.tar.bz2 gentoo-2-3df66496b4a4bc324d71c05d587e06fc73c41707.zip |
Fix auto-scroller broken with middle click, per bug #294712. Patch imported from upstream bug #589560.
(Portage version: 2.2_rc61/cvs/Linux x86_64)
Diffstat (limited to 'www-client/epiphany-extensions')
3 files changed, 200 insertions, 2 deletions
diff --git a/www-client/epiphany-extensions/ChangeLog b/www-client/epiphany-extensions/ChangeLog index dacec4cb707d..b09d4118d45f 100644 --- a/www-client/epiphany-extensions/ChangeLog +++ b/www-client/epiphany-extensions/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for www-client/epiphany-extensions -# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/ChangeLog,v 1.117 2009/10/29 21:40:50 eva Exp $ +# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/ChangeLog,v 1.118 2010/01/02 20:33:54 mrpouet Exp $ + +*epiphany-extensions-2.28.1-r1 (02 Jan 2010) + + 02 Jan 2010; Romain Perier <mrpouet@gentoo.org> + +epiphany-extensions-2.28.1-r1.ebuild, + +files/epiphany-extensions-2.28.1-auto-scroller-broken.patch: + Fix auto-scroller broken with middle click, per bug #294712. Patch + imported from upstream bug #589560. *epiphany-extensions-2.28.1 (29 Oct 2009) diff --git a/www-client/epiphany-extensions/epiphany-extensions-2.28.1-r1.ebuild b/www-client/epiphany-extensions/epiphany-extensions-2.28.1-r1.ebuild new file mode 100644 index 000000000000..fe9c6a8f0608 --- /dev/null +++ b/www-client/epiphany-extensions/epiphany-extensions-2.28.1-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/epiphany-extensions/epiphany-extensions-2.28.1-r1.ebuild,v 1.1 2010/01/02 20:33:54 mrpouet Exp $ + +EAPI="2" + +inherit gnome2 eutils versionator + +MY_MAJORV=$(get_version_component_range 1-2) + +DESCRIPTION="Extensions for the Epiphany web browser" +HOMEPAGE="http://www.gnome.org/projects/epiphany/extensions.html" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="dbus examples pcre" + +RDEPEND=">=www-client/epiphany-${MY_MAJORV} + app-text/opensp + >=dev-libs/glib-2.15.5 + >=gnome-base/gconf-2.0 + >=dev-libs/libxml2-2.6 + >=x11-libs/gtk+-2.12.0 + >=gnome-base/libglade-2 + >=net-libs/webkit-gtk-1.1 + + dbus? ( >=dev-libs/dbus-glib-0.34 ) + pcre? ( >=dev-libs/libpcre-3.9-r2 )" +DEPEND="${RDEPEND} + >=dev-util/intltool-0.40 + >=dev-util/pkgconfig-0.20 + >=app-text/gnome-doc-utils-0.3.2" +# eautoreconf dependencies: +# gnome-base/gnome-common + +DOCS="AUTHORS ChangeLog HACKING NEWS README" + +# FIXME: Open security issues: +# FIXME: - adblock ( https://bugzilla.gnome.org/show_bug.cgi?id=595255 ) +# FIXME: broken extensions: +# FIXME: - gestures ( https://bugzilla.gnome.org/show_bug.cgi?id=563099 ) +# FIXME: - session-saver ( https://bugzilla.gnome.org/show_bug.cgi?id=316245 ) +# FIXME: - sidebar: hangs ( https://bugzilla.gnome.org/show_bug.cgi?id=594481 ) + +pkg_setup() { + local extensions="" + + extensions="actions auto-reload auto-scroller certificates \ + error-viewer extensions-manager-ui \ + java-console livehttpheaders page-info permissions \ + push-scroller select-stylesheet \ + smart-bookmarks soup-fly tab-groups tab-states" + use dbus && extensions="${extensions} rss" + + use pcre && extensions="${extensions} greasemonkey" + + use examples && extensions="${extensions} sample" + + G2CONF="${G2CONF} + --disable-maintainer-mode + --with-extensions=$(echo "${extensions}" | sed -e 's/[[:space:]]\+/,/g')" +} + +src_prepare() { + gnome2_src_prepare + # auto-scroller is broken and makes middle click be unable to open links in new tabs, + # bug 294712 + epatch "${FILESDIR}/${P}-auto-scroller-broken.patch" +} + +src_install() { + gnome2_src_install + find "${D}" -name "*.la" -delete || die "remove of la files failed" +} diff --git a/www-client/epiphany-extensions/files/epiphany-extensions-2.28.1-auto-scroller-broken.patch b/www-client/epiphany-extensions/files/epiphany-extensions-2.28.1-auto-scroller-broken.patch new file mode 100644 index 000000000000..bc048d5fcabd --- /dev/null +++ b/www-client/epiphany-extensions/files/epiphany-extensions-2.28.1-auto-scroller-broken.patch @@ -0,0 +1,115 @@ +From c3584c630ac8ec80288f56bdb3ecc350b533d07e Mon Sep 17 00:00:00 2001 +From: Xan Lopez <xan@gnome.org> +Date: Tue, 22 Sep 2009 10:43:09 +0000 +Subject: Fix auto-scroller extension to use the new WebKitHitTestResult stuff + +Upstream Bug #589560,#600140 +Dowstream Bug #294712 + +--- +diff --git a/extensions/auto-scroller/ephy-auto-scroller-extension.c b/extensions/auto-scroller/ephy-auto-scroller-extension.c +index 188cc44..f6c54fa 100644 +--- a/extensions/auto-scroller/ephy-auto-scroller-extension.c ++++ b/extensions/auto-scroller/ephy-auto-scroller-extension.c +@@ -55,21 +55,23 @@ ensure_auto_scroller (EphyWindow *window) + return scroller; + } + +-#if 0 + static gboolean +-dom_mouse_down_cb (EphyEmbed *embed, +- EphyEmbedEvent *event, ++dom_mouse_down_cb (EphyWebView *view, ++ GdkEventButton *event, + EphyWindow *window) + { + EphyAutoScroller *scroller; +- EphyEmbedEventContext context; ++ guint context; + guint button, x, y; ++ WebKitHitTestResult *hit_test; + +- button = ephy_embed_event_get_button (event); +- context = ephy_embed_event_get_context (event); ++ button = event->button; ++ hit_test = webkit_web_view_get_hit_test_result (WEBKIT_WEB_VIEW (view), event); ++ g_object_get (hit_test, "context", &context, NULL); ++ g_object_unref (hit_test); + +- if (button != 2 || (context & EPHY_EMBED_CONTEXT_INPUT) || +- (context & EPHY_EMBED_CONTEXT_LINK)) ++ if (button != 2 || (context & WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE) || ++ (context & WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK)) + { + return FALSE; + } +@@ -77,31 +79,9 @@ dom_mouse_down_cb (EphyEmbed *embed, + scroller = ensure_auto_scroller (window); + g_return_val_if_fail (scroller != NULL, FALSE); + +- ephy_embed_event_get_coords (event, &x, &y); +- ephy_auto_scroller_start (scroller, embed, x, y); +- +- return TRUE; +-} +-#endif +- +-static gboolean +-button_press_cb (GtkWidget *widget, +- GdkEventButton *event, +- EphyWindow *window) +-{ +- EphyAutoScroller *scroller; +- EphyEmbed *embed = (EphyEmbed*) gtk_widget_get_parent (widget); +- +- // FIXME: This will swallow middle clicks on inputs and links. +- if (event->button != 2) +- { +- return FALSE; +- } +- +- scroller = ensure_auto_scroller (window); +- g_return_val_if_fail (scroller != NULL, FALSE); +- +- ephy_auto_scroller_start (scroller, embed, event->x_root, event->y_root); ++ x = (guint)event->x_root; ++ y = (guint)event->y_root; ++ ephy_auto_scroller_start (scroller, EPHY_GET_EMBED_FROM_EPHY_WEB_VIEW (view), x, y); + + return TRUE; + } +@@ -123,14 +103,9 @@ impl_attach_tab (EphyExtension *ext, + + g_return_if_fail (embed != NULL); + +-#if 0 +- g_signal_connect_object (embed, "ge-dom-mouse-down", +- G_CALLBACK (dom_mouse_down_cb), window, 0); +-#endif +- + web_view = EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (embed); +- g_signal_connect_object (web_view, "button_press_event", +- G_CALLBACK (button_press_cb), window, 0); ++ g_signal_connect_object (web_view, "button-press-event", ++ G_CALLBACK (dom_mouse_down_cb), window, 0); + } + + static void +@@ -143,14 +118,9 @@ impl_detach_tab (EphyExtension *ext, + + g_return_if_fail (embed != NULL); + +-#if 0 +- g_signal_handlers_disconnect_by_func +- (embed, G_CALLBACK (dom_mouse_down_cb), window); +-#endif +- + web_view = EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (embed); + g_signal_handlers_disconnect_by_func +- (web_view, G_CALLBACK (button_press_cb), window); ++ (web_view, G_CALLBACK (dom_mouse_down_cb), window); + } + + static void +-- +cgit v0.8.3.1 |