Move Backend enum to usertypes
Otherwise we have a cyclic import
This commit is contained in:
parent
34e39bed4e
commit
d2ece6b542
@ -453,7 +453,7 @@ class CommandDispatcher:
|
||||
self._open(url, tab, background, window)
|
||||
|
||||
@cmdutils.register(instance='command-dispatcher', scope='window',
|
||||
backend=tabmod.Backend.QtWebKit)
|
||||
backend=usertypes.Backend.QtWebKit)
|
||||
@cmdutils.argument('where', choices=['prev', 'next', 'up', 'increment',
|
||||
'decrement'])
|
||||
def navigate(self, where: str, tab=False, bg=False, window=False):
|
||||
@ -486,7 +486,7 @@ class CommandDispatcher:
|
||||
|
||||
if where in ['prev', 'next']:
|
||||
# FIXME:qtwebengine have a proper API for this
|
||||
if widget.backend == tabmod.Backend.QtWebEngine:
|
||||
if widget.backend == usertypes.Backend.QtWebEngine:
|
||||
raise cmdexc.CommandError(":navigate prev/next is not "
|
||||
"supported yet with QtWebEngine")
|
||||
page = widget._widget.page() # pylint: disable=protected-access
|
||||
@ -1126,7 +1126,7 @@ class CommandDispatcher:
|
||||
raise cmdexc.CommandError(str(e))
|
||||
|
||||
@cmdutils.register(instance='command-dispatcher', name='inspector',
|
||||
scope='window', backend=tabmod.Backend.QtWebKit)
|
||||
scope='window', backend=usertypes.Backend.QtWebKit)
|
||||
def toggle_inspector(self):
|
||||
"""Toggle the web inspector.
|
||||
|
||||
@ -1155,7 +1155,7 @@ class CommandDispatcher:
|
||||
tab.data.inspector.show()
|
||||
|
||||
@cmdutils.register(instance='command-dispatcher', scope='window',
|
||||
backend=tabmod.Backend.QtWebKit)
|
||||
backend=usertypes.Backend.QtWebKit)
|
||||
@cmdutils.argument('dest_old', hide=True)
|
||||
def download(self, url=None, dest_old=None, *, mhtml_=False, dest=None):
|
||||
"""Download a given URL, or current page if no URL given.
|
||||
@ -1329,7 +1329,7 @@ class CommandDispatcher:
|
||||
|
||||
@cmdutils.register(instance='command-dispatcher',
|
||||
modes=[KeyMode.insert], hide=True, scope='window',
|
||||
backend=tabmod.Backend.QtWebKit)
|
||||
backend=usertypes.Backend.QtWebKit)
|
||||
def open_editor(self):
|
||||
"""Open an external editor with the currently selected form field.
|
||||
|
||||
@ -1378,7 +1378,7 @@ class CommandDispatcher:
|
||||
|
||||
@cmdutils.register(instance='command-dispatcher',
|
||||
modes=[KeyMode.insert], hide=True, scope='window',
|
||||
needs_js=True, backend=tabmod.Backend.QtWebKit)
|
||||
needs_js=True, backend=usertypes.Backend.QtWebKit)
|
||||
def paste_primary(self):
|
||||
"""Paste the primary selection at cursor position."""
|
||||
# FIXME:qtwebengine have a proper API for this
|
||||
@ -1671,11 +1671,11 @@ class CommandDispatcher:
|
||||
"""
|
||||
tab = self._current_widget()
|
||||
|
||||
if tab.backend == tabmod.Backend.QtWebKit:
|
||||
if tab.backend == usertypes.Backend.QtWebKit:
|
||||
assert QWebPage is not None
|
||||
member = getattr(QWebPage, action, None)
|
||||
base = QWebPage.WebAction
|
||||
elif tab.backend == tabmod.Backend.QtWebEngine:
|
||||
elif tab.backend == usertypes.Backend.QtWebEngine:
|
||||
assert QWebEnginePage is not None
|
||||
member = getattr(QWebEnginePage, action, None)
|
||||
base = QWebEnginePage.WebAction
|
||||
|
@ -31,7 +31,6 @@ from PyQt5.QtGui import QMouseEvent
|
||||
from PyQt5.QtWebKit import QWebElement
|
||||
from PyQt5.QtWebKitWidgets import QWebPage
|
||||
|
||||
from qutebrowser.browser import tab as tabmod
|
||||
from qutebrowser.config import config
|
||||
from qutebrowser.keyinput import modeman, modeparsers
|
||||
from qutebrowser.browser.webkit import webelem
|
||||
@ -764,7 +763,7 @@ class HintManager(QObject):
|
||||
|
||||
@cmdutils.register(instance='hintmanager', scope='tab', name='hint',
|
||||
star_args_optional=True, maxsplit=2,
|
||||
backend=tabmod.Backend.QtWebKit)
|
||||
backend=usertypes.Backend.QtWebKit)
|
||||
@cmdutils.argument('win_id', win_id=True)
|
||||
def start(self, rapid=False, group=webelem.Group.all, target=Target.normal,
|
||||
*args, win_id):
|
||||
|
@ -33,9 +33,6 @@ from qutebrowser.utils import utils, objreg, usertypes, message
|
||||
tab_id_gen = itertools.count(0)
|
||||
|
||||
|
||||
Backend = usertypes.enum('Backend', ['QtWebKit', 'QtWebEngine'])
|
||||
|
||||
|
||||
def create(win_id, parent=None):
|
||||
"""Get a QtWebKit/QtWebEngine tab object.
|
||||
|
||||
|
@ -258,7 +258,7 @@ class WebEngineViewTab(tabmod.AbstractTab):
|
||||
self.search = WebEngineSearch(parent=self)
|
||||
self._set_widget(widget)
|
||||
self._connect_signals()
|
||||
self.backend = tabmod.Backend.QtWebEngine
|
||||
self.backend = usertypes.Backend.QtWebEngine
|
||||
|
||||
def openurl(self, url):
|
||||
self._widget.load(url)
|
||||
|
@ -462,7 +462,7 @@ class WebViewTab(tabmod.AbstractTab):
|
||||
self._set_widget(widget)
|
||||
self._connect_signals()
|
||||
self.zoom.set_default()
|
||||
self.backend = tabmod.Backend.QtWebKit
|
||||
self.backend = usertypes.Backend.QtWebKit
|
||||
|
||||
def openurl(self, url):
|
||||
self._widget.openurl(url)
|
||||
|
@ -29,7 +29,6 @@ from qutebrowser.commands import cmdexc, argparser
|
||||
from qutebrowser.utils import (log, utils, message, docutils, objreg,
|
||||
usertypes, typing)
|
||||
from qutebrowser.utils import debug as debug_utils
|
||||
from qutebrowser.browser import tab as tabmod
|
||||
|
||||
|
||||
class ArgInfo:
|
||||
@ -183,8 +182,8 @@ class Command:
|
||||
"{}: This command needs javascript enabled.".format(self.name))
|
||||
|
||||
backend_mapping = {
|
||||
'webkit': tabmod.Backend.QtWebKit,
|
||||
'webengine': tabmod.Backend.QtWebEngine,
|
||||
'webkit': usertypes.Backend.QtWebKit,
|
||||
'webengine': usertypes.Backend.QtWebEngine,
|
||||
}
|
||||
used_backend = backend_mapping[objreg.get('args').backend]
|
||||
if self.backend is not None and used_backend != self.backend:
|
||||
|
@ -251,6 +251,10 @@ LoadStatus = enum('LoadStatus', ['none', 'success', 'success_https', 'error',
|
||||
'warn', 'loading'])
|
||||
|
||||
|
||||
# Backend of a tab
|
||||
Backend = enum('Backend', ['QtWebKit', 'QtWebEngine'])
|
||||
|
||||
|
||||
class Question(QObject):
|
||||
|
||||
"""A question asked to the user, e.g. via the status bar.
|
||||
|
@ -23,7 +23,6 @@ import pytest
|
||||
|
||||
from qutebrowser.commands import cmdutils, cmdexc, argparser, command
|
||||
from qutebrowser.utils import usertypes, typing, objreg
|
||||
from qutebrowser.browser import tab as tabmod
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
@ -373,10 +372,10 @@ class TestRun:
|
||||
fake_args.backend = 'webkit'
|
||||
|
||||
@pytest.mark.parametrize('backend, used, ok', [
|
||||
(tabmod.Backend.QtWebEngine, 'webengine', True),
|
||||
(tabmod.Backend.QtWebEngine, 'webkit', False),
|
||||
(tabmod.Backend.QtWebKit, 'webengine', False),
|
||||
(tabmod.Backend.QtWebKit, 'webkit', True),
|
||||
(usertypes.Backend.QtWebEngine, 'webengine', True),
|
||||
(usertypes.Backend.QtWebEngine, 'webkit', False),
|
||||
(usertypes.Backend.QtWebKit, 'webengine', False),
|
||||
(usertypes.Backend.QtWebKit, 'webkit', True),
|
||||
(None, 'webengine', True),
|
||||
(None, 'webkit', True),
|
||||
])
|
||||
@ -402,7 +401,7 @@ class TestRun:
|
||||
display an error instead of crashing.
|
||||
"""
|
||||
@cmdutils.register(instance='doesnotexist',
|
||||
backend=tabmod.Backend.QtWebEngine)
|
||||
backend=usertypes.Backend.QtWebEngine)
|
||||
def fun(self):
|
||||
"""Blah."""
|
||||
pass
|
||||
|
Loading…
Reference in New Issue
Block a user