summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-06-30 21:32:11 +0200
committerFlorian Bruhin <me@the-compiler.org>2020-07-10 16:21:42 +0200
commit05ba5476b9dc1f5a1a4f20e43daf2b2ee408fe16 (patch)
tree0e398f02731baa94805f478a118324ab01edd7c1
parent8ade7d22f23db3758f4a2eb11d73e1cb923fef00 (diff)
downloadqutebrowser-05ba5476b9dc1f5a1a4f20e43daf2b2ee408fe16.tar.gz
qutebrowser-05ba5476b9dc1f5a1a4f20e43daf2b2ee408fe16.zip
Suppress context menu properly with rocker gestures
For some reason, the event filter stopped inhibiting the context menu with Qt 5.9 (or possibly 5.8). (cherry picked from commit 0ed215d81f9a6db8da1aab08c89e6031fb157984) Remove unnecessary return (cherry picked from commit 815920657687a0f8f237a85711573afdb91d072c)
-rw-r--r--qutebrowser/browser/eventfilter.py12
-rw-r--r--qutebrowser/browser/webengine/webview.py7
2 files changed, 7 insertions, 12 deletions
diff --git a/qutebrowser/browser/eventfilter.py b/qutebrowser/browser/eventfilter.py
index d91502092..002949a2b 100644
--- a/qutebrowser/browser/eventfilter.py
+++ b/qutebrowser/browser/eventfilter.py
@@ -116,7 +116,6 @@ class TabEventFilter(QObject):
QEvent.MouseButtonPress: self._handle_mouse_press,
QEvent.MouseButtonRelease: self._handle_mouse_release,
QEvent.Wheel: self._handle_wheel,
- QEvent.ContextMenu: self._handle_context_menu,
QEvent.KeyRelease: self._handle_key_release,
}
self._ignore_wheel_event = False
@@ -210,17 +209,6 @@ class TabEventFilter(QObject):
return False
- def _handle_context_menu(self, _e):
- """Suppress context menus if rocker gestures are turned on.
-
- Args:
- e: The QContextMenuEvent.
-
- Return:
- True if the event should be filtered, False otherwise.
- """
- return config.val.input.mouse.rocker_gestures
-
def _handle_key_release(self, e):
"""Ignore repeated key release events going to the website.
diff --git a/qutebrowser/browser/webengine/webview.py b/qutebrowser/browser/webengine/webview.py
index 7d194fe8a..40ac12f11 100644
--- a/qutebrowser/browser/webengine/webview.py
+++ b/qutebrowser/browser/webengine/webview.py
@@ -151,6 +151,13 @@ class WebEngineView(QWebEngineView):
tab = shared.get_tab(self._win_id, target)
return tab._widget # pylint: disable=protected-access
+ def contextMenuEvent(self, ev):
+ """Prevent context menus when rocker gestures are enabled."""
+ if config.val.input.mouse.rocker_gestures:
+ ev.ignore()
+ return
+ super().contextMenuEvent(ev)
+
class WebEnginePage(QWebEnginePage):