summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-06-19 18:10:43 +0200
committerFlorian Bruhin <me@the-compiler.org>2020-06-22 19:46:47 +0200
commit144f540f9292f1c1df44412942c4f15b1fd7904a (patch)
treea29b21ae238f96a4b26be37c250b0a87b0e09a64
parent356c0bc1bb05b6890ab4eb3f2485327361f002b9 (diff)
downloadqutebrowser-144f540f9292f1c1df44412942c4f15b1fd7904a.tar.gz
qutebrowser-144f540f9292f1c1df44412942c4f15b1fd7904a.zip
Add AbstractTabPrivate.toggle_inspector
-rw-r--r--qutebrowser/browser/browsertab.py12
-rw-r--r--qutebrowser/browser/commands.py10
2 files changed, 12 insertions, 10 deletions
diff --git a/qutebrowser/browser/browsertab.py b/qutebrowser/browser/browsertab.py
index e464de6a2..0e1029305 100644
--- a/qutebrowser/browser/browsertab.py
+++ b/qutebrowser/browser/browsertab.py
@@ -45,7 +45,7 @@ from qutebrowser.config import config
from qutebrowser.utils import (utils, objreg, usertypes, log, qtutils,
urlutils, message)
from qutebrowser.misc import miscwidgets, objects, sessions
-from qutebrowser.browser import eventfilter
+from qutebrowser.browser import eventfilter, inspector
from qutebrowser.qt import sip
if typing.TYPE_CHECKING:
@@ -846,6 +846,16 @@ class AbstractTabPrivate:
"""
raise NotImplementedError
+ def toggle_inspector(self, position: inspector.Position) -> None:
+ """Show/hide (and if needed, create) the web inspector for this tab."""
+ tabdata = self._tab.data
+ if tabdata.inspector is None:
+ tabdata.inspector = inspector.create(
+ splitter=tabdata.splitter,
+ win_id=self._tab.win_id)
+ tabdata.inspector.inspect(self._widget.page())
+ tabdata.inspector.set_position(position)
+
class AbstractTab(QWidget):
diff --git a/qutebrowser/browser/commands.py b/qutebrowser/browser/commands.py
index ab1dc0699..7c1857204 100644
--- a/qutebrowser/browser/commands.py
+++ b/qutebrowser/browser/commands.py
@@ -1256,16 +1256,8 @@ class CommandDispatcher:
(right/left/top/bottom/window).
"""
tab = self._current_widget()
- # FIXME:qtwebengine have a proper API for this
- page = tab._widget.page() # pylint: disable=protected-access
-
try:
- if tab.data.inspector is None:
- tab.data.inspector = inspector.create(
- splitter=tab.data.splitter,
- win_id=tab.win_id)
- tab.data.inspector.inspect(page)
- tab.data.inspector.set_position(position)
+ tab.private_api.toggle_inspector(position)
except inspector.WebInspectorError as e:
raise cmdutils.CommandError(e)