summaryrefslogtreecommitdiff
path: root/qutebrowser/browser/webelem.py
diff options
context:
space:
mode:
Diffstat (limited to 'qutebrowser/browser/webelem.py')
-rw-r--r--qutebrowser/browser/webelem.py49
1 files changed, 37 insertions, 12 deletions
diff --git a/qutebrowser/browser/webelem.py b/qutebrowser/browser/webelem.py
index a79af7c02..d47e84c02 100644
--- a/qutebrowser/browser/webelem.py
+++ b/qutebrowser/browser/webelem.py
@@ -143,8 +143,9 @@ class AbstractWebElement(collections.abc.MutableMapping): # type: ignore[type-a
"""Insert the given text into the element."""
raise NotImplementedError
- def rect_on_view(self, *, elem_geometry: QtCore.QRect = None,
- no_js: bool = False) -> QtCore.QRect:
+ def rect_on_view(
+ self, *, elem_geometry: QtCore.QRect = None, no_js: bool = False
+ ) -> QtCore.QRect:
"""Get the geometry of the element relative to the webview.
Args:
@@ -336,8 +337,11 @@ class AbstractWebElement(collections.abc.MutableMapping): # type: ignore[type-a
"""Move cursor to end after clicking."""
raise NotImplementedError
- def _click_fake_event(self, click_target: usertypes.ClickTarget,
- button: QtCore.Qt.MouseButton = QtCore.Qt.LeftButton) -> None:
+ def _click_fake_event(
+ self,
+ click_target: usertypes.ClickTarget,
+ button: QtCore.Qt.MouseButton = QtCore.Qt.LeftButton,
+ ) -> None:
"""Send a fake click event to the element."""
pos = self._mouse_pos()
@@ -346,7 +350,8 @@ class AbstractWebElement(collections.abc.MutableMapping): # type: ignore[type-a
target_modifiers = {
usertypes.ClickTarget.normal: QtCore.Qt.NoModifier,
- usertypes.ClickTarget.window: QtCore.Qt.AltModifier | QtCore.Qt.ShiftModifier,
+ usertypes.ClickTarget.window: QtCore.Qt.AltModifier
+ | QtCore.Qt.ShiftModifier,
usertypes.ClickTarget.tab: QtCore.Qt.ControlModifier,
usertypes.ClickTarget.tab_bg: QtCore.Qt.ControlModifier,
}
@@ -358,9 +363,23 @@ class AbstractWebElement(collections.abc.MutableMapping): # type: ignore[type-a
modifiers = cast(QtCore.Qt.KeyboardModifiers, target_modifiers[click_target])
events = [
- QtGui.QMouseEvent(QtCore.QEvent.MouseMove, pos, QtCore.Qt.NoButton, QtCore.Qt.NoButton, QtCore.Qt.NoModifier),
- QtGui.QMouseEvent(QtCore.QEvent.MouseButtonPress, pos, button, button, modifiers),
- QtGui.QMouseEvent(QtCore.QEvent.MouseButtonRelease, pos, button, QtCore.Qt.NoButton, modifiers),
+ QtGui.QMouseEvent(
+ QtCore.QEvent.MouseMove,
+ pos,
+ QtCore.Qt.NoButton,
+ QtCore.Qt.NoButton,
+ QtCore.Qt.NoModifier,
+ ),
+ QtGui.QMouseEvent(
+ QtCore.QEvent.MouseButtonPress, pos, button, button, modifiers
+ ),
+ QtGui.QMouseEvent(
+ QtCore.QEvent.MouseButtonRelease,
+ pos,
+ button,
+ QtCore.Qt.NoButton,
+ modifiers,
+ ),
]
for evt in events:
@@ -444,11 +463,17 @@ class AbstractWebElement(collections.abc.MutableMapping): # type: ignore[type-a
def hover(self) -> None:
"""Simulate a mouse hover over the element."""
pos = self._mouse_pos()
- event = QtGui.QMouseEvent(QtCore.QEvent.MouseMove, pos, QtCore.Qt.NoButton, QtCore.Qt.NoButton,
- QtCore.Qt.NoModifier)
+ event = QtGui.QMouseEvent(
+ QtCore.QEvent.MouseMove,
+ pos,
+ QtCore.Qt.NoButton,
+ QtCore.Qt.NoButton,
+ QtCore.Qt.NoModifier,
+ )
self._tab.send_event(event)
def right_click(self) -> None:
"""Simulate a right-click on the element."""
- self._click_fake_event(usertypes.ClickTarget.normal,
- button=QtCore.Qt.RightButton)
+ self._click_fake_event(
+ usertypes.ClickTarget.normal, button=QtCore.Qt.RightButton
+ )