summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xmisc/userscripts/add-nextcloud-bookmarks2
-rwxr-xr-xmisc/userscripts/add-nextcloud-cookbook2
-rwxr-xr-xmisc/userscripts/qute-keepass4
-rw-r--r--qutebrowser/api/config.py2
-rw-r--r--qutebrowser/api/downloads.py2
-rw-r--r--qutebrowser/app.py6
-rw-r--r--qutebrowser/browser/browsertab.py16
-rw-r--r--qutebrowser/browser/commands.py4
-rw-r--r--qutebrowser/browser/downloads.py2
-rw-r--r--qutebrowser/browser/downloadview.py4
-rw-r--r--qutebrowser/browser/eventfilter.py2
-rw-r--r--qutebrowser/browser/greasemonkey.py2
-rw-r--r--qutebrowser/browser/hints.py4
-rw-r--r--qutebrowser/browser/history.py4
-rw-r--r--qutebrowser/browser/inspector.py6
-rw-r--r--qutebrowser/browser/navigate.py2
-rw-r--r--qutebrowser/browser/network/pac.py6
-rw-r--r--qutebrowser/browser/network/proxy.py4
-rw-r--r--qutebrowser/browser/pdfjs.py2
-rw-r--r--qutebrowser/browser/qtnetworkdownloads.py6
-rw-r--r--qutebrowser/browser/qutescheme.py2
-rw-r--r--qutebrowser/browser/shared.py2
-rw-r--r--qutebrowser/browser/signalfilter.py2
-rw-r--r--qutebrowser/browser/urlmarks.py2
-rw-r--r--qutebrowser/browser/webelem.py4
-rw-r--r--qutebrowser/browser/webengine/certificateerror.py4
-rw-r--r--qutebrowser/browser/webengine/interceptor.py4
-rw-r--r--qutebrowser/browser/webengine/notification.py14
-rw-r--r--qutebrowser/browser/webengine/tabhistory.py2
-rw-r--r--qutebrowser/browser/webengine/webenginedownloads.py4
-rw-r--r--qutebrowser/browser/webengine/webengineelem.py6
-rw-r--r--qutebrowser/browser/webengine/webengineinspector.py6
-rw-r--r--qutebrowser/browser/webengine/webenginequtescheme.py4
-rw-r--r--qutebrowser/browser/webengine/webenginesettings.py6
-rw-r--r--qutebrowser/browser/webengine/webenginetab.py12
-rw-r--r--qutebrowser/browser/webengine/webview.py6
-rw-r--r--qutebrowser/browser/webkit/cache.py2
-rw-r--r--qutebrowser/browser/webkit/certificateerror.py2
-rw-r--r--qutebrowser/browser/webkit/cookies.py4
-rw-r--r--qutebrowser/browser/webkit/http.py2
-rw-r--r--qutebrowser/browser/webkit/mhtml.py2
-rw-r--r--qutebrowser/browser/webkit/network/networkmanager.py4
-rw-r--r--qutebrowser/browser/webkit/network/networkreply.py4
-rw-r--r--qutebrowser/browser/webkit/network/webkitqutescheme.py4
-rw-r--r--qutebrowser/browser/webkit/tabhistory.py2
-rw-r--r--qutebrowser/browser/webkit/webkitelem.py6
-rw-r--r--qutebrowser/browser/webkit/webkithistory.py2
-rw-r--r--qutebrowser/browser/webkit/webkitinspector.py6
-rw-r--r--qutebrowser/browser/webkit/webkitsettings.py8
-rw-r--r--qutebrowser/browser/webkit/webkittab.py12
-rw-r--r--qutebrowser/browser/webkit/webpage.py12
-rw-r--r--qutebrowser/browser/webkit/webview.py6
-rw-r--r--qutebrowser/commands/argparser.py2
-rw-r--r--qutebrowser/commands/runners.py2
-rw-r--r--qutebrowser/commands/userscripts.py2
-rw-r--r--qutebrowser/completion/completer.py2
-rw-r--r--qutebrowser/completion/completiondelegate.py6
-rw-r--r--qutebrowser/completion/completionwidget.py4
-rw-r--r--qutebrowser/completion/models/completionmodel.py2
-rw-r--r--qutebrowser/completion/models/filepathcategory.py2
-rw-r--r--qutebrowser/completion/models/histcategory.py4
-rw-r--r--qutebrowser/completion/models/listcategory.py6
-rw-r--r--qutebrowser/completion/models/urlmodel.py2
-rw-r--r--qutebrowser/components/braveadblock.py2
-rw-r--r--qutebrowser/components/hostblock.py2
-rw-r--r--qutebrowser/components/misccommands.py4
-rw-r--r--qutebrowser/components/readlinecommands.py2
-rw-r--r--qutebrowser/components/utils/blockutils.py2
-rw-r--r--qutebrowser/config/config.py2
-rw-r--r--qutebrowser/config/configcommands.py2
-rw-r--r--qutebrowser/config/configfiles.py4
-rw-r--r--qutebrowser/config/configinit.py2
-rw-r--r--qutebrowser/config/configtypes.py8
-rw-r--r--qutebrowser/config/configutils.py6
-rw-r--r--qutebrowser/config/qtargs.py2
-rw-r--r--qutebrowser/config/stylesheet.py2
-rw-r--r--qutebrowser/config/websettings.py4
-rw-r--r--qutebrowser/extensions/interceptors.py2
-rw-r--r--qutebrowser/extensions/loader.py2
-rw-r--r--qutebrowser/keyinput/basekeyparser.py4
-rw-r--r--qutebrowser/keyinput/eventfilter.py4
-rw-r--r--qutebrowser/keyinput/keyutils.py4
-rw-r--r--qutebrowser/keyinput/modeman.py4
-rw-r--r--qutebrowser/keyinput/modeparsers.py4
-rw-r--r--qutebrowser/mainwindow/mainwindow.py6
-rw-r--r--qutebrowser/mainwindow/messageview.py4
-rw-r--r--qutebrowser/mainwindow/prompt.py4
-rw-r--r--qutebrowser/mainwindow/statusbar/bar.py4
-rw-r--r--qutebrowser/mainwindow/statusbar/command.py6
-rw-r--r--qutebrowser/mainwindow/statusbar/keystring.py2
-rw-r--r--qutebrowser/mainwindow/statusbar/percentage.py2
-rw-r--r--qutebrowser/mainwindow/statusbar/progress.py4
-rw-r--r--qutebrowser/mainwindow/statusbar/tabindex.py2
-rw-r--r--qutebrowser/mainwindow/statusbar/textbase.py6
-rw-r--r--qutebrowser/mainwindow/statusbar/url.py2
-rw-r--r--qutebrowser/mainwindow/tabbedbrowser.py4
-rw-r--r--qutebrowser/mainwindow/tabwidget.py6
-rw-r--r--qutebrowser/mainwindow/windowundo.py2
-rw-r--r--qutebrowser/misc/autoupdate.py2
-rw-r--r--qutebrowser/misc/backendproblem.py14
-rw-r--r--qutebrowser/misc/cmdhistory.py2
-rw-r--r--qutebrowser/misc/consolewidget.py6
-rw-r--r--qutebrowser/misc/crashdialog.py4
-rw-r--r--qutebrowser/misc/crashsignal.py4
-rw-r--r--qutebrowser/misc/earlyinit.py18
-rw-r--r--qutebrowser/misc/editor.py2
-rw-r--r--qutebrowser/misc/elf.py2
-rw-r--r--qutebrowser/misc/guiprocess.py2
-rw-r--r--qutebrowser/misc/httpclient.py4
-rw-r--r--qutebrowser/misc/ipc.py4
-rw-r--r--qutebrowser/misc/keyhintwidget.py4
-rw-r--r--qutebrowser/misc/lineparser.py2
-rw-r--r--qutebrowser/misc/miscwidgets.py6
-rw-r--r--qutebrowser/misc/msgbox.py4
-rw-r--r--qutebrowser/misc/objects.py2
-rw-r--r--qutebrowser/misc/pastebin.py2
-rw-r--r--qutebrowser/misc/quitter.py2
-rw-r--r--qutebrowser/misc/savemanager.py2
-rw-r--r--qutebrowser/misc/sessions.py2
-rw-r--r--qutebrowser/misc/sql.py4
-rw-r--r--qutebrowser/misc/throttle.py2
-rw-r--r--qutebrowser/misc/utilcmds.py4
-rw-r--r--qutebrowser/resources.py2
-rw-r--r--qutebrowser/utils/debug.py2
-rw-r--r--qutebrowser/utils/error.py2
-rw-r--r--qutebrowser/utils/jinja.py2
-rw-r--r--qutebrowser/utils/log.py2
-rw-r--r--qutebrowser/utils/message.py2
-rw-r--r--qutebrowser/utils/objreg.py6
-rw-r--r--qutebrowser/utils/qtutils.py10
-rw-r--r--qutebrowser/utils/standarddir.py4
-rw-r--r--qutebrowser/utils/urlmatch.py2
-rw-r--r--qutebrowser/utils/urlutils.py4
-rw-r--r--qutebrowser/utils/usertypes.py4
-rw-r--r--qutebrowser/utils/utils.py6
-rw-r--r--qutebrowser/utils/version.py12
-rw-r--r--scripts/dev/standardpaths_tester.py2
-rw-r--r--scripts/keytester.py2
-rw-r--r--scripts/opengl_info.py2
-rwxr-xr-xscripts/testbrowser/testbrowser_webengine.py6
-rwxr-xr-xscripts/testbrowser/testbrowser_webkit.py8
-rw-r--r--tests/conftest.py8
-rw-r--r--tests/end2end/conftest.py4
-rw-r--r--tests/end2end/features/test_downloads_bdd.py2
-rw-r--r--tests/end2end/features/test_editor_bdd.py2
-rw-r--r--tests/end2end/fixtures/notificationserver.py6
-rw-r--r--tests/end2end/fixtures/quteprocess.py4
-rw-r--r--tests/end2end/fixtures/test_testprocess.py2
-rw-r--r--tests/end2end/fixtures/testprocess.py4
-rw-r--r--tests/end2end/fixtures/webserver.py2
-rw-r--r--tests/end2end/test_dirbrowser.py2
-rw-r--r--tests/end2end/test_invocations.py2
-rw-r--r--tests/helpers/fixtures.py10
-rw-r--r--tests/helpers/messagemock.py2
-rw-r--r--tests/helpers/stubs.py8
-rw-r--r--tests/helpers/testutils.py6
-rw-r--r--tests/unit/browser/test_caret.py2
-rw-r--r--tests/unit/browser/test_downloadview.py2
-rw-r--r--tests/unit/browser/test_hints.py2
-rw-r--r--tests/unit/browser/test_history.py6
-rw-r--r--tests/unit/browser/test_inspector.py2
-rw-r--r--tests/unit/browser/test_navigate.py2
-rw-r--r--tests/unit/browser/test_pdfjs.py2
-rw-r--r--tests/unit/browser/test_qutescheme.py2
-rw-r--r--tests/unit/browser/test_signalfilter.py2
-rw-r--r--tests/unit/browser/test_urlmarks.py2
-rw-r--r--tests/unit/browser/webengine/test_webengine_cookies.py6
-rw-r--r--tests/unit/browser/webengine/test_webenginedownloads.py2
-rw-r--r--tests/unit/browser/webengine/test_webengineinterceptor.py2
-rw-r--r--tests/unit/browser/webkit/http/test_http.py2
-rw-r--r--tests/unit/browser/webkit/network/test_filescheme.py4
-rw-r--r--tests/unit/browser/webkit/network/test_networkreply.py4
-rw-r--r--tests/unit/browser/webkit/network/test_pac.py4
-rw-r--r--tests/unit/browser/webkit/test_cache.py4
-rw-r--r--tests/unit/browser/webkit/test_certificateerror.py2
-rw-r--r--tests/unit/browser/webkit/test_cookies.py4
-rw-r--r--tests/unit/browser/webkit/test_tabhistory.py4
-rw-r--r--tests/unit/browser/webkit/test_webkitelem.py2
-rw-r--r--tests/unit/commands/test_argparser.py2
-rw-r--r--tests/unit/commands/test_userscripts.py2
-rw-r--r--tests/unit/completion/test_completer.py4
-rw-r--r--tests/unit/completion/test_completiondelegate.py6
-rw-r--r--tests/unit/completion/test_completionmodel.py2
-rw-r--r--tests/unit/completion/test_completionwidget.py2
-rw-r--r--tests/unit/completion/test_models.py4
-rw-r--r--tests/unit/components/test_blockutils.py2
-rw-r--r--tests/unit/components/test_braveadblock.py2
-rw-r--r--tests/unit/components/test_hostblock.py2
-rw-r--r--tests/unit/components/test_readlinecommands.py2
-rw-r--r--tests/unit/config/test_config.py4
-rw-r--r--tests/unit/config/test_configcommands.py2
-rw-r--r--tests/unit/config/test_configfiles.py4
-rw-r--r--tests/unit/config/test_configtypes.py6
-rw-r--r--tests/unit/config/test_configutils.py4
-rw-r--r--tests/unit/config/test_qtargs_locale_workaround.py2
-rw-r--r--tests/unit/config/test_stylesheet.py2
-rw-r--r--tests/unit/javascript/conftest.py2
-rw-r--r--tests/unit/javascript/test_greasemonkey.py2
-rw-r--r--tests/unit/javascript/test_js_execution.py6
-rw-r--r--tests/unit/javascript/test_js_quirks.py2
-rw-r--r--tests/unit/keyinput/key_data.py2
-rw-r--r--tests/unit/keyinput/test_basekeyparser.py2
-rw-r--r--tests/unit/keyinput/test_bindingtrie.py2
-rw-r--r--tests/unit/keyinput/test_keyutils.py6
-rw-r--r--tests/unit/keyinput/test_modeman.py2
-rw-r--r--tests/unit/keyinput/test_modeparsers.py4
-rw-r--r--tests/unit/mainwindow/statusbar/test_textbase.py2
-rw-r--r--tests/unit/mainwindow/statusbar/test_url.py2
-rw-r--r--tests/unit/mainwindow/test_messageview.py2
-rw-r--r--tests/unit/mainwindow/test_prompt.py2
-rw-r--r--tests/unit/mainwindow/test_tabwidget.py2
-rw-r--r--tests/unit/misc/test_autoupdate.py2
-rw-r--r--tests/unit/misc/test_editor.py2
-rw-r--r--tests/unit/misc/test_guiprocess.py2
-rw-r--r--tests/unit/misc/test_ipc.py6
-rw-r--r--tests/unit/misc/test_miscwidgets.py4
-rw-r--r--tests/unit/misc/test_msgbox.py4
-rw-r--r--tests/unit/misc/test_pastebin.py2
-rw-r--r--tests/unit/misc/test_sessions.py2
-rw-r--r--tests/unit/misc/test_sql.py2
-rw-r--r--tests/unit/misc/test_throttle.py2
-rw-r--r--tests/unit/misc/test_utilcmds.py2
-rw-r--r--tests/unit/test_app.py2
-rw-r--r--tests/unit/utils/test_debug.py4
-rw-r--r--tests/unit/utils/test_error.py4
-rw-r--r--tests/unit/utils/test_jinja.py2
-rw-r--r--tests/unit/utils/test_log.py2
-rw-r--r--tests/unit/utils/test_qtutils.py4
-rw-r--r--tests/unit/utils/test_standarddir.py4
-rw-r--r--tests/unit/utils/test_urlmatch.py2
-rw-r--r--tests/unit/utils/test_urlutils.py4
-rw-r--r--tests/unit/utils/test_utils.py4
-rw-r--r--tests/unit/utils/test_version.py4
-rw-r--r--tests/unit/utils/usertypes/test_timer.py2
234 files changed, 434 insertions, 432 deletions
diff --git a/misc/userscripts/add-nextcloud-bookmarks b/misc/userscripts/add-nextcloud-bookmarks
index 86f4f5bc7..f1f8c3cea 100755
--- a/misc/userscripts/add-nextcloud-bookmarks
+++ b/misc/userscripts/add-nextcloud-bookmarks
@@ -41,7 +41,7 @@ from json import dumps
from os import environ, path
from sys import argv, exit
-from PyQt5.QtWidgets import QApplication, QInputDialog, QLineEdit
+from qutebrowser.qt.QtWidgets import QApplication, QInputDialog, QLineEdit
from requests import get, post
from requests.auth import HTTPBasicAuth
diff --git a/misc/userscripts/add-nextcloud-cookbook b/misc/userscripts/add-nextcloud-cookbook
index 3952bb16f..13a8d3aa5 100755
--- a/misc/userscripts/add-nextcloud-cookbook
+++ b/misc/userscripts/add-nextcloud-cookbook
@@ -37,7 +37,7 @@ import configparser
from os import environ, path
from sys import argv, exit
-from PyQt5.QtWidgets import QApplication, QInputDialog, QLineEdit
+from qutebrowser.qt.QtWidgets import QApplication, QInputDialog, QLineEdit
from requests import post
from requests.auth import HTTPBasicAuth
diff --git a/misc/userscripts/qute-keepass b/misc/userscripts/qute-keepass
index 285377ffc..9895c6c56 100755
--- a/misc/userscripts/qute-keepass
+++ b/misc/userscripts/qute-keepass
@@ -64,8 +64,8 @@ import shlex
import subprocess
import sys
-from PyQt5.QtCore import QUrl
-from PyQt5.QtWidgets import QApplication, QInputDialog, QLineEdit
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtWidgets import QApplication, QInputDialog, QLineEdit
try:
import pykeepass
diff --git a/qutebrowser/api/config.py b/qutebrowser/api/config.py
index 19e2b3c3e..45dc77e29 100644
--- a/qutebrowser/api/config.py
+++ b/qutebrowser/api/config.py
@@ -21,7 +21,7 @@
from typing import cast, Any
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.config import config
diff --git a/qutebrowser/api/downloads.py b/qutebrowser/api/downloads.py
index cd33f5709..646cf50b1 100644
--- a/qutebrowser/api/downloads.py
+++ b/qutebrowser/api/downloads.py
@@ -23,7 +23,7 @@
import io
-from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot, QUrl
+from qutebrowser.qt.QtCore import QObject, pyqtSignal, pyqtSlot, QUrl
from qutebrowser.browser import downloads, qtnetworkdownloads
from qutebrowser.utils import objreg
diff --git a/qutebrowser/app.py b/qutebrowser/app.py
index 663c33ffc..b7ad16513 100644
--- a/qutebrowser/app.py
+++ b/qutebrowser/app.py
@@ -46,9 +46,9 @@ import datetime
import argparse
from typing import Iterable, Optional
-from PyQt5.QtWidgets import QApplication, QWidget
-from PyQt5.QtGui import QDesktopServices, QPixmap, QIcon
-from PyQt5.QtCore import pyqtSlot, QUrl, QObject, QEvent, pyqtSignal, Qt
+from qutebrowser.qt.QtWidgets import QApplication, QWidget
+from qutebrowser.qt.QtGui import QDesktopServices, QPixmap, QIcon
+from qutebrowser.qt.QtCore import pyqtSlot, QUrl, QObject, QEvent, pyqtSignal, Qt
import qutebrowser
import qutebrowser.resources
diff --git a/qutebrowser/browser/browsertab.py b/qutebrowser/browser/browsertab.py
index 661c5f68b..4d98c0b8e 100644
--- a/qutebrowser/browser/browsertab.py
+++ b/qutebrowser/browser/browsertab.py
@@ -26,17 +26,17 @@ import dataclasses
from typing import (cast, TYPE_CHECKING, Any, Callable, Iterable, List, Optional,
Sequence, Set, Type, Union)
-from PyQt5.QtCore import (pyqtSignal, pyqtSlot, QUrl, QObject, QSizeF, Qt,
+from qutebrowser.qt.QtCore import (pyqtSignal, pyqtSlot, QUrl, QObject, QSizeF, Qt,
QEvent, QPoint, QRect)
-from PyQt5.QtGui import QKeyEvent, QIcon, QPixmap
-from PyQt5.QtWidgets import QWidget, QApplication, QDialog
-from PyQt5.QtPrintSupport import QPrintDialog, QPrinter
-from PyQt5.QtNetwork import QNetworkAccessManager
+from qutebrowser.qt.QtGui import QKeyEvent, QIcon, QPixmap
+from qutebrowser.qt.QtWidgets import QWidget, QApplication, QDialog
+from qutebrowser.qt.QtPrintSupport import QPrintDialog, QPrinter
+from qutebrowser.qt.QtNetwork import QNetworkAccessManager
if TYPE_CHECKING:
- from PyQt5.QtWebKit import QWebHistory, QWebHistoryItem
- from PyQt5.QtWebKitWidgets import QWebPage
- from PyQt5.QtWebEngineWidgets import (
+ from qutebrowser.qt.QtWebKit import QWebHistory, QWebHistoryItem
+ from qutebrowser.qt.QtWebKitWidgets import QWebPage
+ from qutebrowser.qt.QtWebEngineWidgets import (
QWebEngineHistory, QWebEngineHistoryItem, QWebEnginePage)
from qutebrowser.keyinput import modeman
diff --git a/qutebrowser/browser/commands.py b/qutebrowser/browser/commands.py
index 00d5e521f..01e5f8340 100644
--- a/qutebrowser/browser/commands.py
+++ b/qutebrowser/browser/commands.py
@@ -24,8 +24,8 @@ import shlex
import functools
from typing import cast, Callable, Dict, Union
-from PyQt5.QtWidgets import QApplication, QTabBar
-from PyQt5.QtCore import Qt, QUrl, QEvent, QUrlQuery
+from qutebrowser.qt.QtWidgets import QApplication, QTabBar
+from qutebrowser.qt.QtCore import Qt, QUrl, QEvent, QUrlQuery
from qutebrowser.commands import userscripts, runners
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/browser/downloads.py b/qutebrowser/browser/downloads.py
index 32bfd2693..53ac4775b 100644
--- a/qutebrowser/browser/downloads.py
+++ b/qutebrowser/browser/downloads.py
@@ -30,7 +30,7 @@ import tempfile
import enum
from typing import Any, Dict, IO, List, MutableSequence, Optional, Union
-from PyQt5.QtCore import (pyqtSlot, pyqtSignal, Qt, QObject, QModelIndex,
+from qutebrowser.qt.QtCore import (pyqtSlot, pyqtSignal, Qt, QObject, QModelIndex,
QTimer, QAbstractListModel, QUrl)
from qutebrowser.browser import pdfjs
diff --git a/qutebrowser/browser/downloadview.py b/qutebrowser/browser/downloadview.py
index 69c58741a..264f0f2a5 100644
--- a/qutebrowser/browser/downloadview.py
+++ b/qutebrowser/browser/downloadview.py
@@ -22,8 +22,8 @@
import functools
from typing import Callable, MutableSequence, Tuple, Union
-from PyQt5.QtCore import pyqtSlot, QSize, Qt
-from PyQt5.QtWidgets import QListView, QSizePolicy, QMenu, QStyleFactory
+from qutebrowser.qt.QtCore import pyqtSlot, QSize, Qt
+from qutebrowser.qt.QtWidgets import QListView, QSizePolicy, QMenu, QStyleFactory
from qutebrowser.browser import downloads
from qutebrowser.config import stylesheet
diff --git a/qutebrowser/browser/eventfilter.py b/qutebrowser/browser/eventfilter.py
index 0b5fab096..7c2e39f98 100644
--- a/qutebrowser/browser/eventfilter.py
+++ b/qutebrowser/browser/eventfilter.py
@@ -19,7 +19,7 @@
"""Event handling for a browser tab."""
-from PyQt5.QtCore import QObject, QEvent, Qt, QTimer
+from qutebrowser.qt.QtCore import QObject, QEvent, Qt, QTimer
from qutebrowser.config import config
from qutebrowser.utils import message, log, usertypes, qtutils
diff --git a/qutebrowser/browser/greasemonkey.py b/qutebrowser/browser/greasemonkey.py
index 5abb9a137..ececb595a 100644
--- a/qutebrowser/browser/greasemonkey.py
+++ b/qutebrowser/browser/greasemonkey.py
@@ -29,7 +29,7 @@ import textwrap
import dataclasses
from typing import cast, List, Sequence
-from PyQt5.QtCore import pyqtSignal, QObject, QUrl
+from qutebrowser.qt.QtCore import pyqtSignal, QObject, QUrl
from qutebrowser.utils import (log, standarddir, jinja, objreg, utils,
javascript, urlmatch, version, usertypes, message)
diff --git a/qutebrowser/browser/hints.py b/qutebrowser/browser/hints.py
index 2e4e8e4b4..a8d9f2777 100644
--- a/qutebrowser/browser/hints.py
+++ b/qutebrowser/browser/hints.py
@@ -30,8 +30,8 @@ from string import ascii_lowercase
from typing import (TYPE_CHECKING, Callable, Dict, Iterable, Iterator, List, Mapping,
MutableSequence, Optional, Sequence, Set)
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, Qt, QUrl
-from PyQt5.QtWidgets import QLabel
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, Qt, QUrl
+from qutebrowser.qt.QtWidgets import QLabel
from qutebrowser.config import config, configexc
from qutebrowser.keyinput import modeman, modeparsers, basekeyparser
diff --git a/qutebrowser/browser/history.py b/qutebrowser/browser/history.py
index d2046345f..4e5ce1147 100644
--- a/qutebrowser/browser/history.py
+++ b/qutebrowser/browser/history.py
@@ -25,8 +25,8 @@ import contextlib
import pathlib
from typing import cast, Mapping, MutableSequence, Optional
-from PyQt5.QtCore import pyqtSlot, QUrl, QObject, pyqtSignal
-from PyQt5.QtWidgets import QProgressDialog, QApplication
+from qutebrowser.qt.QtCore import pyqtSlot, QUrl, QObject, pyqtSignal
+from qutebrowser.qt.QtWidgets import QProgressDialog, QApplication
from qutebrowser.config import config
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/browser/inspector.py b/qutebrowser/browser/inspector.py
index 2b40e97e4..3ef031384 100644
--- a/qutebrowser/browser/inspector.py
+++ b/qutebrowser/browser/inspector.py
@@ -24,9 +24,9 @@ import binascii
import enum
from typing import cast, Optional
-from PyQt5.QtWidgets import QWidget
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QEvent
-from PyQt5.QtGui import QCloseEvent
+from qutebrowser.qt.QtWidgets import QWidget
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QEvent
+from qutebrowser.qt.QtGui import QCloseEvent
from qutebrowser.browser import eventfilter
from qutebrowser.config import configfiles
diff --git a/qutebrowser/browser/navigate.py b/qutebrowser/browser/navigate.py
index 6217c8d00..0e19b6428 100644
--- a/qutebrowser/browser/navigate.py
+++ b/qutebrowser/browser/navigate.py
@@ -23,7 +23,7 @@ import re
import posixpath
from typing import Optional, Set
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import webelem
from qutebrowser.config import config
diff --git a/qutebrowser/browser/network/pac.py b/qutebrowser/browser/network/pac.py
index 3a544c78f..e71a6b71e 100644
--- a/qutebrowser/browser/network/pac.py
+++ b/qutebrowser/browser/network/pac.py
@@ -23,11 +23,11 @@ import sys
import functools
from typing import Optional
-from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot, QUrl
-from PyQt5.QtNetwork import (QNetworkProxy, QNetworkRequest, QHostInfo,
+from qutebrowser.qt.QtCore import QObject, pyqtSignal, pyqtSlot, QUrl
+from qutebrowser.qt.QtNetwork import (QNetworkProxy, QNetworkRequest, QHostInfo,
QNetworkReply, QNetworkAccessManager,
QHostAddress)
-from PyQt5.QtQml import QJSEngine, QJSValue
+from qutebrowser.qt.QtQml import QJSEngine, QJSValue
from qutebrowser.utils import log, utils, qtutils, resources
diff --git a/qutebrowser/browser/network/proxy.py b/qutebrowser/browser/network/proxy.py
index 2c0187837..5a254117a 100644
--- a/qutebrowser/browser/network/proxy.py
+++ b/qutebrowser/browser/network/proxy.py
@@ -19,8 +19,8 @@
"""Handling of proxies."""
-from PyQt5.QtCore import QUrl, pyqtSlot
-from PyQt5.QtNetwork import QNetworkProxy, QNetworkProxyFactory
+from qutebrowser.qt.QtCore import QUrl, pyqtSlot
+from qutebrowser.qt.QtNetwork import QNetworkProxy, QNetworkProxyFactory
from qutebrowser.config import config, configtypes
from qutebrowser.utils import message, usertypes, urlutils, utils
diff --git a/qutebrowser/browser/pdfjs.py b/qutebrowser/browser/pdfjs.py
index c180c55f8..a40e2f431 100644
--- a/qutebrowser/browser/pdfjs.py
+++ b/qutebrowser/browser/pdfjs.py
@@ -22,7 +22,7 @@
import os
-from PyQt5.QtCore import QUrl, QUrlQuery
+from qutebrowser.qt.QtCore import QUrl, QUrlQuery
from qutebrowser.utils import resources, javascript, jinja, standarddir, log
from qutebrowser.config import config
diff --git a/qutebrowser/browser/qtnetworkdownloads.py b/qutebrowser/browser/qtnetworkdownloads.py
index 8adb7ea20..d3ae22d66 100644
--- a/qutebrowser/browser/qtnetworkdownloads.py
+++ b/qutebrowser/browser/qtnetworkdownloads.py
@@ -26,9 +26,9 @@ import functools
import dataclasses
from typing import Dict, IO, Optional
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, QTimer, QUrl
-from PyQt5.QtWidgets import QApplication
-from PyQt5.QtNetwork import QNetworkRequest, QNetworkReply, QNetworkAccessManager
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, QTimer, QUrl
+from qutebrowser.qt.QtWidgets import QApplication
+from qutebrowser.qt.QtNetwork import QNetworkRequest, QNetworkReply, QNetworkAccessManager
from qutebrowser.config import config, websettings
from qutebrowser.utils import message, usertypes, log, urlutils, utils, debug, objreg
diff --git a/qutebrowser/browser/qutescheme.py b/qutebrowser/browser/qutescheme.py
index 68e36d249..eb3c3c3aa 100644
--- a/qutebrowser/browser/qutescheme.py
+++ b/qutebrowser/browser/qutescheme.py
@@ -34,7 +34,7 @@ import collections
import secrets
from typing import TypeVar, Callable, Dict, List, Optional, Union, Sequence, Tuple
-from PyQt5.QtCore import QUrlQuery, QUrl
+from qutebrowser.qt.QtCore import QUrlQuery, QUrl
import qutebrowser
from qutebrowser.browser import pdfjs, downloads, history
diff --git a/qutebrowser/browser/shared.py b/qutebrowser/browser/shared.py
index f195bbf28..9ce032ee7 100644
--- a/qutebrowser/browser/shared.py
+++ b/qutebrowser/browser/shared.py
@@ -27,7 +27,7 @@ import netrc
import tempfile
from typing import Callable, Mapping, List, Optional, Iterable, Iterator
-from PyQt5.QtCore import QUrl, pyqtBoundSignal
+from qutebrowser.qt.QtCore import QUrl, pyqtBoundSignal
from qutebrowser.config import config
from qutebrowser.utils import (usertypes, message, log, objreg, jinja, utils,
diff --git a/qutebrowser/browser/signalfilter.py b/qutebrowser/browser/signalfilter.py
index 88ac4a65d..1b4cb985d 100644
--- a/qutebrowser/browser/signalfilter.py
+++ b/qutebrowser/browser/signalfilter.py
@@ -21,7 +21,7 @@
import functools
-from PyQt5.QtCore import QObject
+from qutebrowser.qt.QtCore import QObject
from qutebrowser.utils import debug, log, objreg
diff --git a/qutebrowser/browser/urlmarks.py b/qutebrowser/browser/urlmarks.py
index 944ec23d4..34ad0a21d 100644
--- a/qutebrowser/browser/urlmarks.py
+++ b/qutebrowser/browser/urlmarks.py
@@ -32,7 +32,7 @@ import functools
import collections
from typing import MutableMapping
-from PyQt5.QtCore import pyqtSignal, QUrl, QObject
+from qutebrowser.qt.QtCore import pyqtSignal, QUrl, QObject
from qutebrowser.utils import (message, usertypes, qtutils, urlutils,
standarddir, objreg, log)
diff --git a/qutebrowser/browser/webelem.py b/qutebrowser/browser/webelem.py
index 05b0eadb3..23ff6099c 100644
--- a/qutebrowser/browser/webelem.py
+++ b/qutebrowser/browser/webelem.py
@@ -22,8 +22,8 @@
from typing import cast, TYPE_CHECKING, Iterator, Optional, Set, Union
import collections.abc
-from PyQt5.QtCore import QUrl, Qt, QEvent, QTimer, QRect, QPoint
-from PyQt5.QtGui import QMouseEvent
+from qutebrowser.qt.QtCore import QUrl, Qt, QEvent, QTimer, QRect, QPoint
+from qutebrowser.qt.QtGui import QMouseEvent
from qutebrowser.config import config
from qutebrowser.keyinput import modeman
diff --git a/qutebrowser/browser/webengine/certificateerror.py b/qutebrowser/browser/webengine/certificateerror.py
index 4df7ce8ab..be6079e8a 100644
--- a/qutebrowser/browser/webengine/certificateerror.py
+++ b/qutebrowser/browser/webengine/certificateerror.py
@@ -19,8 +19,8 @@
"""Wrapper over a QWebEngineCertificateError."""
-from PyQt5.QtCore import QUrl
-from PyQt5.QtWebEngineWidgets import QWebEngineCertificateError
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineCertificateError
from qutebrowser.utils import usertypes, utils, debug
diff --git a/qutebrowser/browser/webengine/interceptor.py b/qutebrowser/browser/webengine/interceptor.py
index 0b1040c4d..d02f15df7 100644
--- a/qutebrowser/browser/webengine/interceptor.py
+++ b/qutebrowser/browser/webengine/interceptor.py
@@ -19,8 +19,8 @@
"""A request interceptor taking care of adblocking and custom headers."""
-from PyQt5.QtCore import QUrl, QByteArray
-from PyQt5.QtWebEngineCore import (QWebEngineUrlRequestInterceptor,
+from qutebrowser.qt.QtCore import QUrl, QByteArray
+from qutebrowser.qt.QtWebEngineCore import (QWebEngineUrlRequestInterceptor,
QWebEngineUrlRequestInfo)
from qutebrowser.config import websettings, config
diff --git a/qutebrowser/browser/webengine/notification.py b/qutebrowser/browser/webengine/notification.py
index 2b77a5ac4..d3e3b9788 100644
--- a/qutebrowser/browser/webengine/notification.py
+++ b/qutebrowser/browser/webengine/notification.py
@@ -50,18 +50,18 @@ import functools
import subprocess
from typing import Any, List, Dict, Optional, Iterator, TYPE_CHECKING
-from PyQt5.QtCore import (Qt, QObject, QVariant, QMetaType, QByteArray, pyqtSlot,
+from qutebrowser.qt.QtCore import (Qt, QObject, QVariant, QMetaType, QByteArray, pyqtSlot,
pyqtSignal, QTimer, QProcess, QUrl)
-from PyQt5.QtGui import QImage, QIcon, QPixmap
-from PyQt5.QtDBus import (QDBusConnection, QDBusInterface, QDBus, QDBusServiceWatcher,
+from qutebrowser.qt.QtGui import QImage, QIcon, QPixmap
+from qutebrowser.qt.QtDBus import (QDBusConnection, QDBusInterface, QDBus, QDBusServiceWatcher,
QDBusArgument, QDBusMessage, QDBusError)
-from PyQt5.QtWidgets import QSystemTrayIcon
+from qutebrowser.qt.QtWidgets import QSystemTrayIcon
if TYPE_CHECKING:
# putting these behind TYPE_CHECKING also means this module is importable
# on installs that don't have these
- from PyQt5.QtWebEngineCore import QWebEngineNotification
- from PyQt5.QtWebEngineWidgets import QWebEngineProfile
+ from qutebrowser.qt.QtWebEngineCore import QWebEngineNotification
+ from qutebrowser.qt.QtWebEngineWidgets import QWebEngineProfile
from qutebrowser.config import config
from qutebrowser.misc import objects
@@ -240,7 +240,7 @@ class NotificationBridgePresenter(QObject):
# Fixed in PyQtWebEngine 5.15.0
# PYQT_WEBENGINE_VERSION was added with PyQtWebEngine 5.13, but if we're here,
# we already did a version check above.
- from PyQt5.QtWebEngine import PYQT_WEBENGINE_VERSION
+ from qutebrowser.qt.QtWebEngine import PYQT_WEBENGINE_VERSION
if PYQT_WEBENGINE_VERSION < 0x050F00:
# PyQtWebEngine unrefs the callback after it's called, for some
# reason. So we call setNotificationPresenter again to *increase*
diff --git a/qutebrowser/browser/webengine/tabhistory.py b/qutebrowser/browser/webengine/tabhistory.py
index ab4b05fe9..80c0d80a5 100644
--- a/qutebrowser/browser/webengine/tabhistory.py
+++ b/qutebrowser/browser/webengine/tabhistory.py
@@ -19,7 +19,7 @@
"""QWebHistory serializer for QtWebEngine."""
-from PyQt5.QtCore import QByteArray, QDataStream, QIODevice, QUrl
+from qutebrowser.qt.QtCore import QByteArray, QDataStream, QIODevice, QUrl
from qutebrowser.utils import qtutils
diff --git a/qutebrowser/browser/webengine/webenginedownloads.py b/qutebrowser/browser/webengine/webenginedownloads.py
index a6a2a1b93..ef450ffde 100644
--- a/qutebrowser/browser/webengine/webenginedownloads.py
+++ b/qutebrowser/browser/webengine/webenginedownloads.py
@@ -23,8 +23,8 @@ import re
import os.path
import functools
-from PyQt5.QtCore import pyqtSlot, Qt, QUrl, QObject
-from PyQt5.QtWebEngineWidgets import QWebEngineDownloadItem
+from qutebrowser.qt.QtCore import pyqtSlot, Qt, QUrl, QObject
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineDownloadItem
from qutebrowser.browser import downloads, pdfjs
from qutebrowser.utils import (debug, usertypes, message, log, objreg, urlutils,
diff --git a/qutebrowser/browser/webengine/webengineelem.py b/qutebrowser/browser/webengine/webengineelem.py
index 5d4c6ad9a..542202c77 100644
--- a/qutebrowser/browser/webengine/webengineelem.py
+++ b/qutebrowser/browser/webengine/webengineelem.py
@@ -22,9 +22,9 @@
from typing import (
TYPE_CHECKING, Any, Callable, Dict, Iterator, Optional, Set, Tuple, Union)
-from PyQt5.QtCore import QRect, QEventLoop
-from PyQt5.QtWidgets import QApplication
-from PyQt5.QtWebEngineWidgets import QWebEngineSettings
+from qutebrowser.qt.QtCore import QRect, QEventLoop
+from qutebrowser.qt.QtWidgets import QApplication
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineSettings
from qutebrowser.utils import log, javascript, urlutils, usertypes, utils
from qutebrowser.browser import webelem
diff --git a/qutebrowser/browser/webengine/webengineinspector.py b/qutebrowser/browser/webengine/webengineinspector.py
index ae31c0bee..364228e09 100644
--- a/qutebrowser/browser/webengine/webengineinspector.py
+++ b/qutebrowser/browser/webengine/webengineinspector.py
@@ -21,9 +21,9 @@
import pathlib
-from PyQt5.QtCore import QLibraryInfo
-from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEnginePage
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtCore import QLibraryInfo
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineView, QWebEnginePage
+from qutebrowser.qt.QtWidgets import QWidget
from qutebrowser.browser import inspector
from qutebrowser.browser.webengine import webenginesettings
diff --git a/qutebrowser/browser/webengine/webenginequtescheme.py b/qutebrowser/browser/webengine/webenginequtescheme.py
index 64361f7c4..d79b30a86 100644
--- a/qutebrowser/browser/webengine/webenginequtescheme.py
+++ b/qutebrowser/browser/webengine/webenginequtescheme.py
@@ -19,8 +19,8 @@
"""QtWebEngine specific qute://* handlers and glue code."""
-from PyQt5.QtCore import QBuffer, QIODevice, QUrl
-from PyQt5.QtWebEngineCore import (QWebEngineUrlSchemeHandler,
+from qutebrowser.qt.QtCore import QBuffer, QIODevice, QUrl
+from qutebrowser.qt.QtWebEngineCore import (QWebEngineUrlSchemeHandler,
QWebEngineUrlRequestJob,
QWebEngineUrlScheme)
diff --git a/qutebrowser/browser/webengine/webenginesettings.py b/qutebrowser/browser/webengine/webenginesettings.py
index 5430cec77..862366a8e 100644
--- a/qutebrowser/browser/webengine/webenginesettings.py
+++ b/qutebrowser/browser/webengine/webenginesettings.py
@@ -28,9 +28,9 @@ import os
import operator
from typing import cast, Any, List, Optional, Tuple, Union, TYPE_CHECKING
-from PyQt5.QtGui import QFont
-from PyQt5.QtWidgets import QApplication
-from PyQt5.QtWebEngineWidgets import QWebEngineSettings, QWebEngineProfile
+from qutebrowser.qt.QtGui import QFont
+from qutebrowser.qt.QtWidgets import QApplication
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineSettings, QWebEngineProfile
from qutebrowser.browser import history
from qutebrowser.browser.webengine import (spell, webenginequtescheme, cookies,
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py
index 7d355d10e..1f0e0012f 100644
--- a/qutebrowser/browser/webengine/webenginetab.py
+++ b/qutebrowser/browser/webengine/webenginetab.py
@@ -26,11 +26,11 @@ import re
import html as html_utils
from typing import cast, Union, Optional
-from PyQt5.QtCore import (pyqtSignal, pyqtSlot, Qt, QPoint, QPointF, QTimer, QUrl,
+from qutebrowser.qt.QtCore import (pyqtSignal, pyqtSlot, Qt, QPoint, QPointF, QTimer, QUrl,
QObject)
-from PyQt5.QtNetwork import QAuthenticator
-from PyQt5.QtWidgets import QWidget
-from PyQt5.QtWebEngineWidgets import QWebEnginePage, QWebEngineScript, QWebEngineHistory
+from qutebrowser.qt.QtNetwork import QAuthenticator
+from qutebrowser.qt.QtWidgets import QWidget
+from qutebrowser.qt.QtWebEngineWidgets import QWebEnginePage, QWebEngineScript, QWebEngineHistory
from qutebrowser.config import config
from qutebrowser.browser import browsertab, eventfilter, shared, webelem, greasemonkey
@@ -126,7 +126,7 @@ class _WebEngineSearchWrapHandler:
try:
# pylint: disable=unused-import
- from PyQt5.QtWebEngineCore import QWebEngineFindTextResult
+ from qutebrowser.qt.QtWebEngineCore import QWebEngineFindTextResult
except ImportError:
# WORKAROUND for some odd PyQt/packaging bug where the
# findTextResult signal is available, but QWebEngineFindTextResult
@@ -1700,7 +1700,7 @@ class WebEngineTab(browsertab.AbstractTab):
try:
# pylint: disable=unused-import
- from PyQt5.QtWebEngineWidgets import (
+ from qutebrowser.qt.QtWebEngineWidgets import (
QWebEngineClientCertificateSelection)
except ImportError:
pass
diff --git a/qutebrowser/browser/webengine/webview.py b/qutebrowser/browser/webengine/webview.py
index 76ce1a42e..5b8da897d 100644
--- a/qutebrowser/browser/webengine/webview.py
+++ b/qutebrowser/browser/webengine/webview.py
@@ -21,9 +21,9 @@
from typing import List, Iterable
-from PyQt5.QtCore import pyqtSignal, QUrl
-from PyQt5.QtGui import QPalette
-from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEnginePage
+from qutebrowser.qt.QtCore import pyqtSignal, QUrl
+from qutebrowser.qt.QtGui import QPalette
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineView, QWebEnginePage
from qutebrowser.browser import shared
from qutebrowser.browser.webengine import webenginesettings, certificateerror
diff --git a/qutebrowser/browser/webkit/cache.py b/qutebrowser/browser/webkit/cache.py
index 8494a8477..257fb77a0 100644
--- a/qutebrowser/browser/webkit/cache.py
+++ b/qutebrowser/browser/webkit/cache.py
@@ -22,7 +22,7 @@
from typing import cast
import os.path
-from PyQt5.QtNetwork import QNetworkDiskCache
+from qutebrowser.qt.QtNetwork import QNetworkDiskCache
from qutebrowser.config import config
from qutebrowser.utils import utils, standarddir
diff --git a/qutebrowser/browser/webkit/certificateerror.py b/qutebrowser/browser/webkit/certificateerror.py
index 09237dae9..e85589baa 100644
--- a/qutebrowser/browser/webkit/certificateerror.py
+++ b/qutebrowser/browser/webkit/certificateerror.py
@@ -21,7 +21,7 @@
from typing import Sequence
-from PyQt5.QtNetwork import QSslError
+from qutebrowser.qt.QtNetwork import QSslError
from qutebrowser.utils import usertypes, utils, debug, jinja
diff --git a/qutebrowser/browser/webkit/cookies.py b/qutebrowser/browser/webkit/cookies.py
index 055ef64d8..3d2e49fe3 100644
--- a/qutebrowser/browser/webkit/cookies.py
+++ b/qutebrowser/browser/webkit/cookies.py
@@ -21,8 +21,8 @@
from typing import Sequence
-from PyQt5.QtNetwork import QNetworkCookie, QNetworkCookieJar
-from PyQt5.QtCore import pyqtSignal, QDateTime
+from qutebrowser.qt.QtNetwork import QNetworkCookie, QNetworkCookieJar
+from qutebrowser.qt.QtCore import pyqtSignal, QDateTime
from qutebrowser.config import config
from qutebrowser.utils import utils, standarddir, objreg, log
diff --git a/qutebrowser/browser/webkit/http.py b/qutebrowser/browser/webkit/http.py
index 5a7cd8b34..8437ccd24 100644
--- a/qutebrowser/browser/webkit/http.py
+++ b/qutebrowser/browser/webkit/http.py
@@ -25,7 +25,7 @@ import dataclasses
import os.path
from typing import Type
-from PyQt5.QtNetwork import QNetworkRequest
+from qutebrowser.qt.QtNetwork import QNetworkRequest
from qutebrowser.utils import log, utils
diff --git a/qutebrowser/browser/webkit/mhtml.py b/qutebrowser/browser/webkit/mhtml.py
index d9f2d484e..8dfc136e8 100644
--- a/qutebrowser/browser/webkit/mhtml.py
+++ b/qutebrowser/browser/webkit/mhtml.py
@@ -36,7 +36,7 @@ import quopri
import dataclasses
from typing import MutableMapping, Set, Tuple, Callable
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import downloads
from qutebrowser.browser.webkit import webkitelem
diff --git a/qutebrowser/browser/webkit/network/networkmanager.py b/qutebrowser/browser/webkit/network/networkmanager.py
index 17f4736b8..a3b1f08c8 100644
--- a/qutebrowser/browser/webkit/network/networkmanager.py
+++ b/qutebrowser/browser/webkit/network/networkmanager.py
@@ -24,8 +24,8 @@ import html
import dataclasses
from typing import TYPE_CHECKING, Dict, MutableMapping, Optional, Set
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, QUrl, QByteArray
-from PyQt5.QtNetwork import (QNetworkAccessManager, QNetworkReply, QSslSocket,
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, QUrl, QByteArray
+from qutebrowser.qt.QtNetwork import (QNetworkAccessManager, QNetworkReply, QSslSocket,
QNetworkProxy)
from qutebrowser.config import config
diff --git a/qutebrowser/browser/webkit/network/networkreply.py b/qutebrowser/browser/webkit/network/networkreply.py
index c1ead3209..4eff3cdba 100644
--- a/qutebrowser/browser/webkit/network/networkreply.py
+++ b/qutebrowser/browser/webkit/network/networkreply.py
@@ -26,8 +26,8 @@
"""Special network replies.."""
-from PyQt5.QtNetwork import QNetworkReply, QNetworkRequest
-from PyQt5.QtCore import pyqtSlot, QIODevice, QByteArray, QTimer
+from qutebrowser.qt.QtNetwork import QNetworkReply, QNetworkRequest
+from qutebrowser.qt.QtCore import pyqtSlot, QIODevice, QByteArray, QTimer
class FixedDataNetworkReply(QNetworkReply):
diff --git a/qutebrowser/browser/webkit/network/webkitqutescheme.py b/qutebrowser/browser/webkit/network/webkitqutescheme.py
index bccdd1acd..9e73f2ed5 100644
--- a/qutebrowser/browser/webkit/network/webkitqutescheme.py
+++ b/qutebrowser/browser/webkit/network/webkitqutescheme.py
@@ -19,8 +19,8 @@
"""QtWebKit specific qute://* handlers and glue code."""
-from PyQt5.QtCore import QUrl
-from PyQt5.QtNetwork import QNetworkReply, QNetworkAccessManager
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtNetwork import QNetworkReply, QNetworkAccessManager
from qutebrowser.browser import qutescheme
from qutebrowser.browser.webkit.network import networkreply
diff --git a/qutebrowser/browser/webkit/tabhistory.py b/qutebrowser/browser/webkit/tabhistory.py
index a707030d1..041a59d5b 100644
--- a/qutebrowser/browser/webkit/tabhistory.py
+++ b/qutebrowser/browser/webkit/tabhistory.py
@@ -21,7 +21,7 @@
from typing import Any, List, Mapping
-from PyQt5.QtCore import QByteArray, QDataStream, QIODevice, QUrl
+from qutebrowser.qt.QtCore import QByteArray, QDataStream, QIODevice, QUrl
from qutebrowser.utils import qtutils
diff --git a/qutebrowser/browser/webkit/webkitelem.py b/qutebrowser/browser/webkit/webkitelem.py
index 5bf96a610..b485e2383 100644
--- a/qutebrowser/browser/webkit/webkitelem.py
+++ b/qutebrowser/browser/webkit/webkitelem.py
@@ -21,9 +21,9 @@
from typing import cast, TYPE_CHECKING, Iterator, List, Optional, Set
-from PyQt5.QtCore import QRect, Qt
-from PyQt5.QtWebKit import QWebElement, QWebSettings
-from PyQt5.QtWebKitWidgets import QWebFrame
+from qutebrowser.qt.QtCore import QRect, Qt
+from qutebrowser.qt.QtWebKit import QWebElement, QWebSettings
+from qutebrowser.qt.QtWebKitWidgets import QWebFrame
from qutebrowser.config import config
from qutebrowser.utils import log, utils, javascript, usertypes
diff --git a/qutebrowser/browser/webkit/webkithistory.py b/qutebrowser/browser/webkit/webkithistory.py
index 6ffe65193..6f699afe9 100644
--- a/qutebrowser/browser/webkit/webkithistory.py
+++ b/qutebrowser/browser/webkit/webkithistory.py
@@ -21,7 +21,7 @@
import functools
-from PyQt5.QtWebKit import QWebHistoryInterface
+from qutebrowser.qt.QtWebKit import QWebHistoryInterface
from qutebrowser.utils import debug
from qutebrowser.misc import debugcachestats
diff --git a/qutebrowser/browser/webkit/webkitinspector.py b/qutebrowser/browser/webkit/webkitinspector.py
index 57bcd40ea..fc7d53d66 100644
--- a/qutebrowser/browser/webkit/webkitinspector.py
+++ b/qutebrowser/browser/webkit/webkitinspector.py
@@ -19,9 +19,9 @@
"""Customized QWebInspector for QtWebKit."""
-from PyQt5.QtWebKit import QWebSettings
-from PyQt5.QtWebKitWidgets import QWebInspector, QWebPage
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtWebKit import QWebSettings
+from qutebrowser.qt.QtWebKitWidgets import QWebInspector, QWebPage
+from qutebrowser.qt.QtWidgets import QWidget
from qutebrowser.browser import inspector
from qutebrowser.misc import miscwidgets
diff --git a/qutebrowser/browser/webkit/webkitsettings.py b/qutebrowser/browser/webkit/webkitsettings.py
index cac6236ce..d77461444 100644
--- a/qutebrowser/browser/webkit/webkitsettings.py
+++ b/qutebrowser/browser/webkit/webkitsettings.py
@@ -27,10 +27,10 @@ Module attributes:
from typing import cast
import os.path
-from PyQt5.QtCore import QUrl
-from PyQt5.QtGui import QFont
-from PyQt5.QtWebKit import QWebSettings
-from PyQt5.QtWebKitWidgets import QWebPage
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtGui import QFont
+from qutebrowser.qt.QtWebKit import QWebSettings
+from qutebrowser.qt.QtWebKitWidgets import QWebPage
from qutebrowser.config import config, websettings
from qutebrowser.config.websettings import AttributeInfo as Attr
diff --git a/qutebrowser/browser/webkit/webkittab.py b/qutebrowser/browser/webkit/webkittab.py
index 7a41b995c..3478eff20 100644
--- a/qutebrowser/browser/webkit/webkittab.py
+++ b/qutebrowser/browser/webkit/webkittab.py
@@ -24,12 +24,12 @@ import functools
import xml.etree.ElementTree
from typing import cast, Iterable, Optional
-from PyQt5.QtCore import pyqtSlot, Qt, QUrl, QPoint, QTimer, QSizeF, QSize
-from PyQt5.QtGui import QIcon
-from PyQt5.QtWidgets import QWidget
-from PyQt5.QtWebKitWidgets import QWebPage, QWebFrame
-from PyQt5.QtWebKit import QWebSettings, QWebHistory, QWebElement
-from PyQt5.QtPrintSupport import QPrinter
+from qutebrowser.qt.QtCore import pyqtSlot, Qt, QUrl, QPoint, QTimer, QSizeF, QSize
+from qutebrowser.qt.QtGui import QIcon
+from qutebrowser.qt.QtWidgets import QWidget
+from qutebrowser.qt.QtWebKitWidgets import QWebPage, QWebFrame
+from qutebrowser.qt.QtWebKit import QWebSettings, QWebHistory, QWebElement
+from qutebrowser.qt.QtPrintSupport import QPrinter
from qutebrowser.browser import browsertab, shared
from qutebrowser.browser.webkit import (webview, tabhistory, webkitelem,
diff --git a/qutebrowser/browser/webkit/webpage.py b/qutebrowser/browser/webkit/webpage.py
index ddbd78de2..8c9a43548 100644
--- a/qutebrowser/browser/webkit/webpage.py
+++ b/qutebrowser/browser/webkit/webpage.py
@@ -23,12 +23,12 @@ import html
import functools
from typing import cast
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QUrl, QPoint
-from PyQt5.QtGui import QDesktopServices
-from PyQt5.QtNetwork import QNetworkReply, QNetworkRequest
-from PyQt5.QtWidgets import QFileDialog
-from PyQt5.QtPrintSupport import QPrintDialog
-from PyQt5.QtWebKitWidgets import QWebPage, QWebFrame
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, Qt, QUrl, QPoint
+from qutebrowser.qt.QtGui import QDesktopServices
+from qutebrowser.qt.QtNetwork import QNetworkReply, QNetworkRequest
+from qutebrowser.qt.QtWidgets import QFileDialog
+from qutebrowser.qt.QtPrintSupport import QPrintDialog
+from qutebrowser.qt.QtWebKitWidgets import QWebPage, QWebFrame
from qutebrowser.config import websettings, config
from qutebrowser.browser import pdfjs, shared, downloads, greasemonkey
diff --git a/qutebrowser/browser/webkit/webview.py b/qutebrowser/browser/webkit/webview.py
index 289e29920..cb37c4ccd 100644
--- a/qutebrowser/browser/webkit/webview.py
+++ b/qutebrowser/browser/webkit/webview.py
@@ -19,9 +19,9 @@
"""The main browser widgets."""
-from PyQt5.QtCore import pyqtSignal, Qt, QUrl
-from PyQt5.QtWebKit import QWebSettings
-from PyQt5.QtWebKitWidgets import QWebView, QWebPage
+from qutebrowser.qt.QtCore import pyqtSignal, Qt, QUrl
+from qutebrowser.qt.QtWebKit import QWebSettings
+from qutebrowser.qt.QtWebKitWidgets import QWebView, QWebPage
from qutebrowser.config import config, stylesheet
from qutebrowser.keyinput import modeman
diff --git a/qutebrowser/commands/argparser.py b/qutebrowser/commands/argparser.py
index 2a11589f9..426b203ba 100644
--- a/qutebrowser/commands/argparser.py
+++ b/qutebrowser/commands/argparser.py
@@ -21,7 +21,7 @@
import argparse
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.commands import cmdexc
from qutebrowser.utils import utils, objreg, log
diff --git a/qutebrowser/commands/runners.py b/qutebrowser/commands/runners.py
index 5fb054455..edf092334 100644
--- a/qutebrowser/commands/runners.py
+++ b/qutebrowser/commands/runners.py
@@ -24,7 +24,7 @@ import re
import contextlib
from typing import TYPE_CHECKING, Callable, Dict, Iterator, Mapping, MutableMapping
-from PyQt5.QtCore import pyqtSlot, QUrl, QObject
+from qutebrowser.qt.QtCore import pyqtSlot, QUrl, QObject
from qutebrowser.api import cmdutils
from qutebrowser.commands import cmdexc, parser
diff --git a/qutebrowser/commands/userscripts.py b/qutebrowser/commands/userscripts.py
index 8282aa7c7..268687fad 100644
--- a/qutebrowser/commands/userscripts.py
+++ b/qutebrowser/commands/userscripts.py
@@ -24,7 +24,7 @@ import os.path
import tempfile
from typing import cast, Any, MutableMapping, Tuple
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QSocketNotifier
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QSocketNotifier
import qutebrowser
from qutebrowser.utils import message, log, objreg, standarddir, utils
diff --git a/qutebrowser/completion/completer.py b/qutebrowser/completion/completer.py
index 8b0de9d8a..c17f1f9b8 100644
--- a/qutebrowser/completion/completer.py
+++ b/qutebrowser/completion/completer.py
@@ -22,7 +22,7 @@
import dataclasses
from typing import TYPE_CHECKING
-from PyQt5.QtCore import pyqtSlot, QObject, QTimer
+from qutebrowser.qt.QtCore import pyqtSlot, QObject, QTimer
from qutebrowser.config import config
from qutebrowser.commands import parser, cmdexc
diff --git a/qutebrowser/completion/completiondelegate.py b/qutebrowser/completion/completiondelegate.py
index 9ea82e876..02ef5d8af 100644
--- a/qutebrowser/completion/completiondelegate.py
+++ b/qutebrowser/completion/completiondelegate.py
@@ -25,9 +25,9 @@ We use this to be able to highlight parts of the text.
import re
import html
-from PyQt5.QtWidgets import QStyle, QStyleOptionViewItem, QStyledItemDelegate
-from PyQt5.QtCore import QRectF, QRegularExpression, QSize, Qt
-from PyQt5.QtGui import (QIcon, QPalette, QTextDocument, QTextOption,
+from qutebrowser.qt.QtWidgets import QStyle, QStyleOptionViewItem, QStyledItemDelegate
+from qutebrowser.qt.QtCore import QRectF, QRegularExpression, QSize, Qt
+from qutebrowser.qt.QtGui import (QIcon, QPalette, QTextDocument, QTextOption,
QAbstractTextDocumentLayout, QSyntaxHighlighter,
QTextCharFormat)
diff --git a/qutebrowser/completion/completionwidget.py b/qutebrowser/completion/completionwidget.py
index dd8e267fe..c5afb47d5 100644
--- a/qutebrowser/completion/completionwidget.py
+++ b/qutebrowser/completion/completionwidget.py
@@ -25,8 +25,8 @@ subclasses to provide completions.
from typing import TYPE_CHECKING, Optional
-from PyQt5.QtWidgets import QTreeView, QSizePolicy, QStyleFactory, QWidget
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QItemSelectionModel, QSize
+from qutebrowser.qt.QtWidgets import QTreeView, QSizePolicy, QStyleFactory, QWidget
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, Qt, QItemSelectionModel, QSize
from qutebrowser.config import config, stylesheet
from qutebrowser.completion import completiondelegate
diff --git a/qutebrowser/completion/models/completionmodel.py b/qutebrowser/completion/models/completionmodel.py
index 236b25533..97fb2fff1 100644
--- a/qutebrowser/completion/models/completionmodel.py
+++ b/qutebrowser/completion/models/completionmodel.py
@@ -21,7 +21,7 @@
from typing import MutableSequence
-from PyQt5.QtCore import Qt, QModelIndex, QAbstractItemModel
+from qutebrowser.qt.QtCore import Qt, QModelIndex, QAbstractItemModel
from qutebrowser.utils import log, qtutils, utils
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/completion/models/filepathcategory.py b/qutebrowser/completion/models/filepathcategory.py
index fd2cb58ce..beb8757ed 100644
--- a/qutebrowser/completion/models/filepathcategory.py
+++ b/qutebrowser/completion/models/filepathcategory.py
@@ -31,7 +31,7 @@ import os
import os.path
from typing import List, Optional, Iterable
-from PyQt5.QtCore import QAbstractListModel, QModelIndex, QObject, Qt, QUrl
+from qutebrowser.qt.QtCore import QAbstractListModel, QModelIndex, QObject, Qt, QUrl
from qutebrowser.config import config
from qutebrowser.utils import log
diff --git a/qutebrowser/completion/models/histcategory.py b/qutebrowser/completion/models/histcategory.py
index 8dd1be838..b7423d69d 100644
--- a/qutebrowser/completion/models/histcategory.py
+++ b/qutebrowser/completion/models/histcategory.py
@@ -21,8 +21,8 @@
from typing import Optional
-from PyQt5.QtSql import QSqlQueryModel
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtSql import QSqlQueryModel
+from qutebrowser.qt.QtWidgets import QWidget
from qutebrowser.misc import sql
from qutebrowser.utils import debug, message, log
diff --git a/qutebrowser/completion/models/listcategory.py b/qutebrowser/completion/models/listcategory.py
index 352151ebb..c312be8e6 100644
--- a/qutebrowser/completion/models/listcategory.py
+++ b/qutebrowser/completion/models/listcategory.py
@@ -22,9 +22,9 @@
import re
from typing import Iterable, Tuple
-from PyQt5.QtCore import QSortFilterProxyModel, QRegularExpression
-from PyQt5.QtGui import QStandardItem, QStandardItemModel
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtCore import QSortFilterProxyModel, QRegularExpression
+from qutebrowser.qt.QtGui import QStandardItem, QStandardItemModel
+from qutebrowser.qt.QtWidgets import QWidget
from qutebrowser.completion.models import util
from qutebrowser.utils import qtutils, log
diff --git a/qutebrowser/completion/models/urlmodel.py b/qutebrowser/completion/models/urlmodel.py
index 56af1f7c7..73f6450c6 100644
--- a/qutebrowser/completion/models/urlmodel.py
+++ b/qutebrowser/completion/models/urlmodel.py
@@ -21,7 +21,7 @@
from typing import Dict, Sequence
-from PyQt5.QtCore import QAbstractItemModel
+from qutebrowser.qt.QtCore import QAbstractItemModel
from qutebrowser.completion.models import (completionmodel, filepathcategory,
listcategory, histcategory)
diff --git a/qutebrowser/components/braveadblock.py b/qutebrowser/components/braveadblock.py
index 977aa3ef2..65e8f470d 100644
--- a/qutebrowser/components/braveadblock.py
+++ b/qutebrowser/components/braveadblock.py
@@ -27,7 +27,7 @@ import contextlib
import subprocess
from typing import Optional, IO, Iterator
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.api import (
hook,
diff --git a/qutebrowser/components/hostblock.py b/qutebrowser/components/hostblock.py
index 191719f10..db35d3761 100644
--- a/qutebrowser/components/hostblock.py
+++ b/qutebrowser/components/hostblock.py
@@ -26,7 +26,7 @@ import logging
import pathlib
from typing import cast, IO, Set
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.api import (
hook,
diff --git a/qutebrowser/components/misccommands.py b/qutebrowser/components/misccommands.py
index fe908b7d2..655e88670 100644
--- a/qutebrowser/components/misccommands.py
+++ b/qutebrowser/components/misccommands.py
@@ -34,8 +34,8 @@ try:
except ImportError:
hunter = None
-from PyQt5.QtCore import Qt
-from PyQt5.QtPrintSupport import QPrintPreviewDialog
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtPrintSupport import QPrintPreviewDialog
from qutebrowser.api import cmdutils, apitypes, message, config
diff --git a/qutebrowser/components/readlinecommands.py b/qutebrowser/components/readlinecommands.py
index 4ac03041c..6f24fc556 100644
--- a/qutebrowser/components/readlinecommands.py
+++ b/qutebrowser/components/readlinecommands.py
@@ -22,7 +22,7 @@
import os
from typing import Iterable, Optional, MutableMapping, Any, Callable
-from PyQt5.QtWidgets import QApplication, QLineEdit
+from qutebrowser.qt.QtWidgets import QApplication, QLineEdit
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/components/utils/blockutils.py b/qutebrowser/components/utils/blockutils.py
index 98681a488..75acd84b8 100644
--- a/qutebrowser/components/utils/blockutils.py
+++ b/qutebrowser/components/utils/blockutils.py
@@ -24,7 +24,7 @@ import os
import functools
from typing import IO, List, Optional
-from PyQt5.QtCore import QUrl, QObject, pyqtSignal
+from qutebrowser.qt.QtCore import QUrl, QObject, pyqtSignal
from qutebrowser.api import downloads, message, config
diff --git a/qutebrowser/config/config.py b/qutebrowser/config/config.py
index 834709ae6..83c161b01 100644
--- a/qutebrowser/config/config.py
+++ b/qutebrowser/config/config.py
@@ -25,7 +25,7 @@ import functools
from typing import (TYPE_CHECKING, Any, Callable, Dict, Iterator, List, Mapping,
MutableMapping, MutableSequence, Optional, Tuple, cast)
-from PyQt5.QtCore import pyqtSignal, QObject, QUrl
+from qutebrowser.qt.QtCore import pyqtSignal, QObject, QUrl
from qutebrowser.commands import cmdexc, parser
from qutebrowser.config import configdata, configexc, configutils
diff --git a/qutebrowser/config/configcommands.py b/qutebrowser/config/configcommands.py
index 407c74214..1e1f4e726 100644
--- a/qutebrowser/config/configcommands.py
+++ b/qutebrowser/config/configcommands.py
@@ -23,7 +23,7 @@ import os.path
import contextlib
from typing import TYPE_CHECKING, Iterator, List, Optional, Any, Tuple
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.api import cmdutils
from qutebrowser.completion.models import configmodel
diff --git a/qutebrowser/config/configfiles.py b/qutebrowser/config/configfiles.py
index d97771fad..4998fa3f8 100644
--- a/qutebrowser/config/configfiles.py
+++ b/qutebrowser/config/configfiles.py
@@ -33,7 +33,7 @@ from typing import (TYPE_CHECKING, Any, Dict, Iterable, Iterator, List, Mapping,
MutableMapping, Optional, Tuple, cast)
import yaml
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QSettings, qVersion
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QSettings, qVersion
import qutebrowser
from qutebrowser.config import (configexc, config, configdata, configutils,
@@ -118,7 +118,7 @@ class StateConfig(configparser.ConfigParser):
Note that it's too early to use objects.backend here...
"""
try:
- import PyQt5.QtWebEngineWidgets # pylint: disable=unused-import
+ import qutebrowser.qt.QtWebEngineWidgets # pylint: disable=unused-import
except ImportError:
return 'no'
return str(version.qtwebengine_versions(avoid_init=True).webengine)
diff --git a/qutebrowser/config/configinit.py b/qutebrowser/config/configinit.py
index 15e587ea2..902d36344 100644
--- a/qutebrowser/config/configinit.py
+++ b/qutebrowser/config/configinit.py
@@ -23,7 +23,7 @@ import argparse
import os.path
import sys
-from PyQt5.QtWidgets import QMessageBox
+from qutebrowser.qt.QtWidgets import QMessageBox
from qutebrowser.api import config as configapi
from qutebrowser.config import (config, configdata, configfiles, configtypes,
diff --git a/qutebrowser/config/configtypes.py b/qutebrowser/config/configtypes.py
index d3d5e3fb8..86751f044 100644
--- a/qutebrowser/config/configtypes.py
+++ b/qutebrowser/config/configtypes.py
@@ -55,10 +55,10 @@ from typing import (Any, Callable, Dict as DictType, Iterable, Iterator,
List as ListType, Optional, Pattern, Sequence, Tuple, Union)
import yaml
-from PyQt5.QtCore import QUrl, Qt
-from PyQt5.QtGui import QColor
-from PyQt5.QtWidgets import QTabWidget, QTabBar
-from PyQt5.QtNetwork import QNetworkProxy
+from qutebrowser.qt.QtCore import QUrl, Qt
+from qutebrowser.qt.QtGui import QColor
+from qutebrowser.qt.QtWidgets import QTabWidget, QTabBar
+from qutebrowser.qt.QtNetwork import QNetworkProxy
from qutebrowser.misc import objects, debugcachestats
from qutebrowser.config import configexc, configutils
diff --git a/qutebrowser/config/configutils.py b/qutebrowser/config/configutils.py
index 480bbd85f..4e7f63114 100644
--- a/qutebrowser/config/configutils.py
+++ b/qutebrowser/config/configutils.py
@@ -28,9 +28,9 @@ from typing import (
TYPE_CHECKING, Any, Dict, Iterator, List, Optional, Sequence, Set, Union,
MutableMapping)
-from PyQt5.QtCore import QUrl
-from PyQt5.QtGui import QFontDatabase
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtGui import QFontDatabase
+from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.utils import utils, urlmatch, urlutils, usertypes, qtutils
from qutebrowser.config import configexc
diff --git a/qutebrowser/config/qtargs.py b/qutebrowser/config/qtargs.py
index 9e7f2620d..1152c4bc0 100644
--- a/qutebrowser/config/qtargs.py
+++ b/qutebrowser/config/qtargs.py
@@ -25,7 +25,7 @@ import argparse
import pathlib
from typing import Any, Dict, Iterator, List, Optional, Sequence, Tuple
-from PyQt5.QtCore import QLibraryInfo, QLocale
+from qutebrowser.qt.QtCore import QLibraryInfo, QLocale
from qutebrowser.config import config
from qutebrowser.misc import objects
diff --git a/qutebrowser/config/stylesheet.py b/qutebrowser/config/stylesheet.py
index 2927aec08..408e02989 100644
--- a/qutebrowser/config/stylesheet.py
+++ b/qutebrowser/config/stylesheet.py
@@ -22,7 +22,7 @@
import functools
from typing import Optional, FrozenSet
-from PyQt5.QtCore import pyqtSlot, QObject
+from qutebrowser.qt.QtCore import pyqtSlot, QObject
from qutebrowser.config import config
from qutebrowser.misc import debugcachestats
diff --git a/qutebrowser/config/websettings.py b/qutebrowser/config/websettings.py
index 41aeec6a3..e5f0f2d6f 100644
--- a/qutebrowser/config/websettings.py
+++ b/qutebrowser/config/websettings.py
@@ -25,8 +25,8 @@ import functools
import dataclasses
from typing import Any, Callable, Dict, Optional, Union
-from PyQt5.QtCore import QUrl, pyqtSlot, qVersion
-from PyQt5.QtGui import QFont
+from qutebrowser.qt.QtCore import QUrl, pyqtSlot, qVersion
+from qutebrowser.qt.QtGui import QFont
import qutebrowser
from qutebrowser.config import config
diff --git a/qutebrowser/extensions/interceptors.py b/qutebrowser/extensions/interceptors.py
index dfafeb7e3..0fd6883fc 100644
--- a/qutebrowser/extensions/interceptors.py
+++ b/qutebrowser/extensions/interceptors.py
@@ -23,7 +23,7 @@ import enum
import dataclasses
from typing import Callable, List, Optional
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
class ResourceType(enum.Enum):
diff --git a/qutebrowser/extensions/loader.py b/qutebrowser/extensions/loader.py
index 793f131c8..10e32fd15 100644
--- a/qutebrowser/extensions/loader.py
+++ b/qutebrowser/extensions/loader.py
@@ -27,7 +27,7 @@ import argparse
import dataclasses
from typing import Callable, Iterator, List, Optional, Tuple
-from PyQt5.QtCore import pyqtSlot
+from qutebrowser.qt.QtCore import pyqtSlot
from qutebrowser import components
from qutebrowser.config import config
diff --git a/qutebrowser/keyinput/basekeyparser.py b/qutebrowser/keyinput/basekeyparser.py
index 4db1d5d76..ac76f63e3 100644
--- a/qutebrowser/keyinput/basekeyparser.py
+++ b/qutebrowser/keyinput/basekeyparser.py
@@ -24,8 +24,8 @@ import types
import dataclasses
from typing import Mapping, MutableMapping, Optional, Sequence
-from PyQt5.QtCore import pyqtSignal, QObject, Qt
-from PyQt5.QtGui import QKeySequence, QKeyEvent
+from qutebrowser.qt.QtCore import pyqtSignal, QObject, Qt
+from qutebrowser.qt.QtGui import QKeySequence, QKeyEvent
from qutebrowser.config import config
from qutebrowser.utils import usertypes, log, utils
diff --git a/qutebrowser/keyinput/eventfilter.py b/qutebrowser/keyinput/eventfilter.py
index f0d85b0ec..e64401c3c 100644
--- a/qutebrowser/keyinput/eventfilter.py
+++ b/qutebrowser/keyinput/eventfilter.py
@@ -21,8 +21,8 @@
from typing import cast
-from PyQt5.QtCore import pyqtSlot, QObject, QEvent
-from PyQt5.QtGui import QKeyEvent, QWindow
+from qutebrowser.qt.QtCore import pyqtSlot, QObject, QEvent
+from qutebrowser.qt.QtGui import QKeyEvent, QWindow
from qutebrowser.keyinput import modeman
from qutebrowser.misc import quitter, objects
diff --git a/qutebrowser/keyinput/keyutils.py b/qutebrowser/keyinput/keyutils.py
index f74c59aa7..b5c172ce4 100644
--- a/qutebrowser/keyinput/keyutils.py
+++ b/qutebrowser/keyinput/keyutils.py
@@ -35,8 +35,8 @@ import itertools
import dataclasses
from typing import cast, overload, Iterable, Iterator, List, Mapping, Optional, Union
-from PyQt5.QtCore import Qt, QEvent
-from PyQt5.QtGui import QKeySequence, QKeyEvent
+from qutebrowser.qt.QtCore import Qt, QEvent
+from qutebrowser.qt.QtGui import QKeySequence, QKeyEvent
from qutebrowser.utils import utils
diff --git a/qutebrowser/keyinput/modeman.py b/qutebrowser/keyinput/modeman.py
index 3c47fafe3..ffee91061 100644
--- a/qutebrowser/keyinput/modeman.py
+++ b/qutebrowser/keyinput/modeman.py
@@ -23,8 +23,8 @@ import functools
import dataclasses
from typing import Mapping, Callable, MutableMapping, Union, Set, cast
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QObject, QEvent
-from PyQt5.QtGui import QKeyEvent
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, Qt, QObject, QEvent
+from qutebrowser.qt.QtGui import QKeyEvent
from qutebrowser.commands import runners
from qutebrowser.keyinput import modeparsers, basekeyparser
diff --git a/qutebrowser/keyinput/modeparsers.py b/qutebrowser/keyinput/modeparsers.py
index bd5d4e801..a7def4a9c 100644
--- a/qutebrowser/keyinput/modeparsers.py
+++ b/qutebrowser/keyinput/modeparsers.py
@@ -27,8 +27,8 @@ import traceback
import enum
from typing import TYPE_CHECKING, Sequence
-from PyQt5.QtCore import pyqtSlot, Qt, QObject
-from PyQt5.QtGui import QKeySequence, QKeyEvent
+from qutebrowser.qt.QtCore import pyqtSlot, Qt, QObject
+from qutebrowser.qt.QtGui import QKeySequence, QKeyEvent
from qutebrowser.browser import hints
from qutebrowser.commands import cmdexc
diff --git a/qutebrowser/mainwindow/mainwindow.py b/qutebrowser/mainwindow/mainwindow.py
index 7f62c2dc4..8270871e7 100644
--- a/qutebrowser/mainwindow/mainwindow.py
+++ b/qutebrowser/mainwindow/mainwindow.py
@@ -25,10 +25,10 @@ import itertools
import functools
from typing import List, MutableSequence, Optional, Tuple, cast
-from PyQt5.QtCore import (pyqtBoundSignal, pyqtSlot, QRect, QPoint, QTimer, Qt,
+from qutebrowser.qt.QtCore import (pyqtBoundSignal, pyqtSlot, QRect, QPoint, QTimer, Qt,
QCoreApplication, QEventLoop, QByteArray)
-from PyQt5.QtWidgets import QWidget, QVBoxLayout, QSizePolicy
-from PyQt5.QtGui import QPalette
+from qutebrowser.qt.QtWidgets import QWidget, QVBoxLayout, QSizePolicy
+from qutebrowser.qt.QtGui import QPalette
from qutebrowser.commands import runners
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/mainwindow/messageview.py b/qutebrowser/mainwindow/messageview.py
index 58fcb3683..c4a9a9b40 100644
--- a/qutebrowser/mainwindow/messageview.py
+++ b/qutebrowser/mainwindow/messageview.py
@@ -21,8 +21,8 @@
from typing import MutableSequence, Optional
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, QTimer, Qt
-from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel, QSizePolicy
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, QTimer, Qt
+from qutebrowser.qt.QtWidgets import QWidget, QVBoxLayout, QLabel, QSizePolicy
from qutebrowser.config import config, stylesheet
from qutebrowser.utils import usertypes
diff --git a/qutebrowser/mainwindow/prompt.py b/qutebrowser/mainwindow/prompt.py
index 6fea16093..edebdae4b 100644
--- a/qutebrowser/mainwindow/prompt.py
+++ b/qutebrowser/mainwindow/prompt.py
@@ -26,9 +26,9 @@ import functools
import dataclasses
from typing import Deque, MutableSequence, Optional, cast
-from PyQt5.QtCore import (pyqtSlot, pyqtSignal, Qt, QTimer, QDir, QModelIndex,
+from qutebrowser.qt.QtCore import (pyqtSlot, pyqtSignal, Qt, QTimer, QDir, QModelIndex,
QItemSelectionModel, QObject, QEventLoop)
-from PyQt5.QtWidgets import (QWidget, QGridLayout, QVBoxLayout, QLineEdit,
+from qutebrowser.qt.QtWidgets import (QWidget, QGridLayout, QVBoxLayout, QLineEdit,
QLabel, QFileSystemModel, QTreeView, QSizePolicy,
QSpacerItem)
diff --git a/qutebrowser/mainwindow/statusbar/bar.py b/qutebrowser/mainwindow/statusbar/bar.py
index 8bad290be..52b042238 100644
--- a/qutebrowser/mainwindow/statusbar/bar.py
+++ b/qutebrowser/mainwindow/statusbar/bar.py
@@ -22,9 +22,9 @@
import enum
import dataclasses
-from PyQt5.QtCore import (pyqtSignal, pyqtSlot, # type: ignore[attr-defined]
+from qutebrowser.qt.QtCore import (pyqtSignal, pyqtSlot, # type: ignore[attr-defined]
pyqtProperty, Qt, QSize, QTimer)
-from PyQt5.QtWidgets import QWidget, QHBoxLayout, QStackedLayout, QSizePolicy
+from qutebrowser.qt.QtWidgets import QWidget, QHBoxLayout, QStackedLayout, QSizePolicy
from qutebrowser.browser import browsertab
from qutebrowser.config import config, stylesheet
diff --git a/qutebrowser/mainwindow/statusbar/command.py b/qutebrowser/mainwindow/statusbar/command.py
index 92408d34f..936a4310d 100644
--- a/qutebrowser/mainwindow/statusbar/command.py
+++ b/qutebrowser/mainwindow/statusbar/command.py
@@ -20,9 +20,9 @@
"""The commandline in the statusbar."""
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, Qt, QSize
-from PyQt5.QtGui import QKeyEvent
-from PyQt5.QtWidgets import QSizePolicy, QWidget
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, Qt, QSize
+from qutebrowser.qt.QtGui import QKeyEvent
+from qutebrowser.qt.QtWidgets import QSizePolicy, QWidget
from qutebrowser.keyinput import modeman, modeparsers
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/mainwindow/statusbar/keystring.py b/qutebrowser/mainwindow/statusbar/keystring.py
index 590dbda93..e0d7b32e6 100644
--- a/qutebrowser/mainwindow/statusbar/keystring.py
+++ b/qutebrowser/mainwindow/statusbar/keystring.py
@@ -19,7 +19,7 @@
"""Keychain string displayed in the statusbar."""
-from PyQt5.QtCore import pyqtSlot
+from qutebrowser.qt.QtCore import pyqtSlot
from qutebrowser.mainwindow.statusbar import textbase
from qutebrowser.utils import usertypes
diff --git a/qutebrowser/mainwindow/statusbar/percentage.py b/qutebrowser/mainwindow/statusbar/percentage.py
index 122a4d4b4..756b4dea6 100644
--- a/qutebrowser/mainwindow/statusbar/percentage.py
+++ b/qutebrowser/mainwindow/statusbar/percentage.py
@@ -19,7 +19,7 @@
"""Scroll percentage displayed in the statusbar."""
-from PyQt5.QtCore import pyqtSlot, Qt
+from qutebrowser.qt.QtCore import pyqtSlot, Qt
from qutebrowser.mainwindow.statusbar import textbase
from qutebrowser.misc import throttle
diff --git a/qutebrowser/mainwindow/statusbar/progress.py b/qutebrowser/mainwindow/statusbar/progress.py
index 9d56cd03f..32ee3978f 100644
--- a/qutebrowser/mainwindow/statusbar/progress.py
+++ b/qutebrowser/mainwindow/statusbar/progress.py
@@ -19,8 +19,8 @@
"""The progress bar in the statusbar."""
-from PyQt5.QtCore import pyqtSlot, QSize
-from PyQt5.QtWidgets import QProgressBar, QSizePolicy
+from qutebrowser.qt.QtCore import pyqtSlot, QSize
+from qutebrowser.qt.QtWidgets import QProgressBar, QSizePolicy
from qutebrowser.config import stylesheet
from qutebrowser.utils import utils, usertypes
diff --git a/qutebrowser/mainwindow/statusbar/tabindex.py b/qutebrowser/mainwindow/statusbar/tabindex.py
index 635d3817b..083601de3 100644
--- a/qutebrowser/mainwindow/statusbar/tabindex.py
+++ b/qutebrowser/mainwindow/statusbar/tabindex.py
@@ -19,7 +19,7 @@
"""TabIndex displayed in the statusbar."""
-from PyQt5.QtCore import pyqtSlot
+from qutebrowser.qt.QtCore import pyqtSlot
from qutebrowser.mainwindow.statusbar import textbase
diff --git a/qutebrowser/mainwindow/statusbar/textbase.py b/qutebrowser/mainwindow/statusbar/textbase.py
index cb454b902..646d1bf8e 100644
--- a/qutebrowser/mainwindow/statusbar/textbase.py
+++ b/qutebrowser/mainwindow/statusbar/textbase.py
@@ -19,9 +19,9 @@
"""Base text widgets for statusbar."""
-from PyQt5.QtCore import Qt
-from PyQt5.QtWidgets import QLabel, QSizePolicy
-from PyQt5.QtGui import QPainter
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtWidgets import QLabel, QSizePolicy
+from qutebrowser.qt.QtGui import QPainter
from qutebrowser.utils import qtutils, utils
diff --git a/qutebrowser/mainwindow/statusbar/url.py b/qutebrowser/mainwindow/statusbar/url.py
index 99818e284..45d3b8c65 100644
--- a/qutebrowser/mainwindow/statusbar/url.py
+++ b/qutebrowser/mainwindow/statusbar/url.py
@@ -21,7 +21,7 @@
import enum
-from PyQt5.QtCore import (pyqtSlot, pyqtProperty, # type: ignore[attr-defined]
+from qutebrowser.qt.QtCore import (pyqtSlot, pyqtProperty, # type: ignore[attr-defined]
QUrl)
from qutebrowser.mainwindow.statusbar import textbase
diff --git a/qutebrowser/mainwindow/tabbedbrowser.py b/qutebrowser/mainwindow/tabbedbrowser.py
index a96f6d583..ce2b8c8e9 100644
--- a/qutebrowser/mainwindow/tabbedbrowser.py
+++ b/qutebrowser/mainwindow/tabbedbrowser.py
@@ -27,8 +27,8 @@ import dataclasses
from typing import (
Any, Deque, List, Mapping, MutableMapping, MutableSequence, Optional, Tuple)
-from PyQt5.QtWidgets import QSizePolicy, QWidget, QApplication
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QTimer, QUrl
+from qutebrowser.qt.QtWidgets import QSizePolicy, QWidget, QApplication
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QTimer, QUrl
from qutebrowser.config import config
from qutebrowser.keyinput import modeman
diff --git a/qutebrowser/mainwindow/tabwidget.py b/qutebrowser/mainwindow/tabwidget.py
index 511c2c309..38bcef3a9 100644
--- a/qutebrowser/mainwindow/tabwidget.py
+++ b/qutebrowser/mainwindow/tabwidget.py
@@ -24,12 +24,12 @@ import contextlib
import dataclasses
from typing import Optional, cast
-from PyQt5.QtCore import (pyqtSignal, pyqtSlot, Qt, QSize, QRect, QPoint,
+from qutebrowser.qt.QtCore import (pyqtSignal, pyqtSlot, Qt, QSize, QRect, QPoint,
QTimer, QUrl)
-from PyQt5.QtWidgets import (QTabWidget, QTabBar, QSizePolicy, QCommonStyle,
+from qutebrowser.qt.QtWidgets import (QTabWidget, QTabBar, QSizePolicy, QCommonStyle,
QStyle, QStylePainter, QStyleOptionTab,
QStyleFactory, QWidget)
-from PyQt5.QtGui import QIcon, QPalette, QColor
+from qutebrowser.qt.QtGui import QIcon, QPalette, QColor
from qutebrowser.utils import qtutils, objreg, utils, usertypes, log
from qutebrowser.config import config, stylesheet
diff --git a/qutebrowser/mainwindow/windowundo.py b/qutebrowser/mainwindow/windowundo.py
index ea7e1a987..3317288ce 100644
--- a/qutebrowser/mainwindow/windowundo.py
+++ b/qutebrowser/mainwindow/windowundo.py
@@ -23,7 +23,7 @@ import collections
import dataclasses
from typing import MutableSequence, cast, TYPE_CHECKING
-from PyQt5.QtCore import QObject, QByteArray
+from qutebrowser.qt.QtCore import QObject, QByteArray
from qutebrowser.config import config
from qutebrowser.mainwindow import mainwindow
diff --git a/qutebrowser/misc/autoupdate.py b/qutebrowser/misc/autoupdate.py
index 73afdde54..dcf34cfce 100644
--- a/qutebrowser/misc/autoupdate.py
+++ b/qutebrowser/misc/autoupdate.py
@@ -21,7 +21,7 @@
import json
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QUrl
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QUrl
from qutebrowser.misc import httpclient
diff --git a/qutebrowser/misc/backendproblem.py b/qutebrowser/misc/backendproblem.py
index 3e14719e0..675899867 100644
--- a/qutebrowser/misc/backendproblem.py
+++ b/qutebrowser/misc/backendproblem.py
@@ -29,10 +29,10 @@ import argparse
import dataclasses
from typing import Any, List, Sequence, Tuple, Optional
-from PyQt5.QtCore import Qt
-from PyQt5.QtWidgets import (QDialog, QPushButton, QHBoxLayout, QVBoxLayout, QLabel,
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtWidgets import (QDialog, QPushButton, QHBoxLayout, QVBoxLayout, QLabel,
QMessageBox, QWidget)
-from PyQt5.QtNetwork import QSslSocket
+from qutebrowser.qt.QtNetwork import QSslSocket
from qutebrowser.config import config, configfiles
from qutebrowser.utils import (usertypes, version, qtutils, log, utils,
@@ -270,9 +270,9 @@ class _BackendProblemChecker:
results = _BackendImports()
try:
- from PyQt5 import QtWebKit
- from PyQt5.QtWebKit import qWebKitVersion
- from PyQt5 import QtWebKitWidgets
+ from qutebrowser.qt import QtWebKit
+ from qutebrowser.qt.QtWebKit import qWebKitVersion
+ from qutebrowser.qt import QtWebKitWidgets
except (ImportError, ValueError) as e:
results.webkit_error = str(e)
else:
@@ -280,7 +280,7 @@ class _BackendProblemChecker:
results.webkit_error = "Unsupported legacy QtWebKit found"
try:
- from PyQt5 import QtWebEngineWidgets
+ from qutebrowser.qt import QtWebEngineWidgets
except (ImportError, ValueError) as e:
results.webengine_error = str(e)
diff --git a/qutebrowser/misc/cmdhistory.py b/qutebrowser/misc/cmdhistory.py
index e4218832c..ca19b5bce 100644
--- a/qutebrowser/misc/cmdhistory.py
+++ b/qutebrowser/misc/cmdhistory.py
@@ -21,7 +21,7 @@
from typing import MutableSequence
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, QObject
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, QObject
from qutebrowser.utils import usertypes, log, standarddir, objreg
from qutebrowser.misc import lineparser
diff --git a/qutebrowser/misc/consolewidget.py b/qutebrowser/misc/consolewidget.py
index a826a4ed8..f109b0a65 100644
--- a/qutebrowser/misc/consolewidget.py
+++ b/qutebrowser/misc/consolewidget.py
@@ -23,9 +23,9 @@ import sys
import code
from typing import MutableSequence
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, Qt
-from PyQt5.QtWidgets import QTextEdit, QWidget, QVBoxLayout, QApplication
-from PyQt5.QtGui import QTextCursor
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, Qt
+from qutebrowser.qt.QtWidgets import QTextEdit, QWidget, QVBoxLayout, QApplication
+from qutebrowser.qt.QtGui import QTextCursor
from qutebrowser.config import stylesheet
from qutebrowser.misc import cmdhistory, miscwidgets
diff --git a/qutebrowser/misc/crashdialog.py b/qutebrowser/misc/crashdialog.py
index 430553433..d3afd9888 100644
--- a/qutebrowser/misc/crashdialog.py
+++ b/qutebrowser/misc/crashdialog.py
@@ -30,8 +30,8 @@ import datetime
import enum
from typing import List, Tuple
-from PyQt5.QtCore import pyqtSlot, Qt, QSize
-from PyQt5.QtWidgets import (QDialog, QLabel, QTextEdit, QPushButton,
+from qutebrowser.qt.QtCore import pyqtSlot, Qt, QSize
+from qutebrowser.qt.QtWidgets import (QDialog, QLabel, QTextEdit, QPushButton,
QVBoxLayout, QHBoxLayout, QCheckBox,
QDialogButtonBox, QMessageBox)
diff --git a/qutebrowser/misc/crashsignal.py b/qutebrowser/misc/crashsignal.py
index d94d3ec54..8a6771795 100644
--- a/qutebrowser/misc/crashsignal.py
+++ b/qutebrowser/misc/crashsignal.py
@@ -32,9 +32,9 @@ import faulthandler
import dataclasses
from typing import TYPE_CHECKING, Optional, MutableMapping, cast, List
-from PyQt5.QtCore import (pyqtSlot, qInstallMessageHandler, QObject,
+from qutebrowser.qt.QtCore import (pyqtSlot, qInstallMessageHandler, QObject,
QSocketNotifier, QTimer, QUrl)
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.api import cmdutils
from qutebrowser.misc import earlyinit, crashdialog, ipc, objects
diff --git a/qutebrowser/misc/earlyinit.py b/qutebrowser/misc/earlyinit.py
index 4b3df4db2..dd51799e8 100644
--- a/qutebrowser/misc/earlyinit.py
+++ b/qutebrowser/misc/earlyinit.py
@@ -78,8 +78,8 @@ def _die(message, exception=None):
message: The message to display.
exception: The exception object if we're handling an exception.
"""
- from PyQt5.QtWidgets import QApplication, QMessageBox
- from PyQt5.QtCore import Qt
+ from qutebrowser.qt.QtWidgets import QApplication, QMessageBox
+ from qutebrowser.qt.QtCore import Qt
if (('--debug' in sys.argv or '--no-err-windows' in sys.argv) and
exception is not None):
print(file=sys.stderr)
@@ -162,10 +162,10 @@ def check_pyqt():
def qt_version(qversion=None, qt_version_str=None):
"""Get a Qt version string based on the runtime/compiled versions."""
if qversion is None:
- from PyQt5.QtCore import qVersion
+ from qutebrowser.qt.QtCore import qVersion
qversion = qVersion()
if qt_version_str is None:
- from PyQt5.QtCore import QT_VERSION_STR
+ from qutebrowser.qt.QtCore import QT_VERSION_STR
qt_version_str = QT_VERSION_STR
if qversion != qt_version_str:
@@ -176,9 +176,9 @@ def qt_version(qversion=None, qt_version_str=None):
def check_qt_version():
"""Check if the Qt version is recent enough."""
- from PyQt5.QtCore import QT_VERSION, PYQT_VERSION, PYQT_VERSION_STR
+ from qutebrowser.qt.QtCore import QT_VERSION, PYQT_VERSION, PYQT_VERSION_STR
try:
- from PyQt5.QtCore import QVersionNumber, QLibraryInfo
+ from qutebrowser.qt.QtCore import QVersionNumber, QLibraryInfo
qt_ver = QLibraryInfo.version().normalized()
recent_qt_runtime = qt_ver >= QVersionNumber(5, 12) # type: ignore[operator]
except (ImportError, AttributeError):
@@ -200,7 +200,7 @@ def check_qt_version():
def check_ssl_support():
"""Check if SSL support is available."""
try:
- from PyQt5.QtNetwork import QSslSocket # pylint: disable=unused-import
+ from qutebrowser.qt.QtNetwork import QSslSocket # pylint: disable=unused-import
except ImportError:
_die("Fatal error: Your Qt is built without SSL support.")
@@ -252,7 +252,7 @@ def configure_pyqt():
Doing this means we can't use the interactive shell anymore (which we don't
anyways), but we can use pdb instead.
"""
- from PyQt5 import QtCore
+ from qutebrowser.qt import QtCore
QtCore.pyqtRemoveInputHook()
try:
QtCore.pyqt5_enable_new_onexit_scheme(True) # type: ignore[attr-defined]
@@ -293,7 +293,7 @@ def webengine_early_import():
error messages in backendproblem.py are accurate.
"""
try:
- from PyQt5 import QtWebEngineWidgets # pylint: disable=unused-import
+ from qutebrowser.qt import QtWebEngineWidgets # pylint: disable=unused-import
except ImportError:
pass
diff --git a/qutebrowser/misc/editor.py b/qutebrowser/misc/editor.py
index 3ef84284d..7a23763d8 100644
--- a/qutebrowser/misc/editor.py
+++ b/qutebrowser/misc/editor.py
@@ -22,7 +22,7 @@
import os
import tempfile
-from PyQt5.QtCore import (pyqtSignal, pyqtSlot, QObject, QProcess,
+from qutebrowser.qt.QtCore import (pyqtSignal, pyqtSlot, QObject, QProcess,
QFileSystemWatcher)
from qutebrowser.config import config
diff --git a/qutebrowser/misc/elf.py b/qutebrowser/misc/elf.py
index bf824880a..f9514939f 100644
--- a/qutebrowser/misc/elf.py
+++ b/qutebrowser/misc/elf.py
@@ -67,7 +67,7 @@ import mmap
import pathlib
from typing import Any, IO, ClassVar, Dict, Optional, Tuple, cast
-from PyQt5.QtCore import QLibraryInfo
+from qutebrowser.qt.QtCore import QLibraryInfo
from qutebrowser.utils import log, version
diff --git a/qutebrowser/misc/guiprocess.py b/qutebrowser/misc/guiprocess.py
index e14169f93..f4a26a61c 100644
--- a/qutebrowser/misc/guiprocess.py
+++ b/qutebrowser/misc/guiprocess.py
@@ -25,7 +25,7 @@ import shlex
import shutil
from typing import Mapping, Sequence, Dict, Optional
-from PyQt5.QtCore import (pyqtSlot, pyqtSignal, QObject, QProcess,
+from qutebrowser.qt.QtCore import (pyqtSlot, pyqtSignal, QObject, QProcess,
QProcessEnvironment, QByteArray, QUrl, Qt)
from qutebrowser.utils import message, log, utils, usertypes, version
diff --git a/qutebrowser/misc/httpclient.py b/qutebrowser/misc/httpclient.py
index d4a8e7673..8fdafb9f6 100644
--- a/qutebrowser/misc/httpclient.py
+++ b/qutebrowser/misc/httpclient.py
@@ -23,8 +23,8 @@ import functools
import urllib.parse
from typing import MutableMapping
-from PyQt5.QtCore import pyqtSignal, QObject, QTimer
-from PyQt5.QtNetwork import (QNetworkAccessManager, QNetworkRequest,
+from qutebrowser.qt.QtCore import pyqtSignal, QObject, QTimer
+from qutebrowser.qt.QtNetwork import (QNetworkAccessManager, QNetworkRequest,
QNetworkReply)
from qutebrowser.utils import log
diff --git a/qutebrowser/misc/ipc.py b/qutebrowser/misc/ipc.py
index 77b9e8f6c..5ff9b97e8 100644
--- a/qutebrowser/misc/ipc.py
+++ b/qutebrowser/misc/ipc.py
@@ -26,8 +26,8 @@ import getpass
import binascii
import hashlib
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, Qt
-from PyQt5.QtNetwork import QLocalSocket, QLocalServer, QAbstractSocket
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, Qt
+from qutebrowser.qt.QtNetwork import QLocalSocket, QLocalServer, QAbstractSocket
import qutebrowser
from qutebrowser.utils import log, usertypes, error, standarddir, utils
diff --git a/qutebrowser/misc/keyhintwidget.py b/qutebrowser/misc/keyhintwidget.py
index 93d9af09d..5471cc29d 100644
--- a/qutebrowser/misc/keyhintwidget.py
+++ b/qutebrowser/misc/keyhintwidget.py
@@ -28,8 +28,8 @@ import html
import fnmatch
import re
-from PyQt5.QtWidgets import QLabel, QSizePolicy
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt
+from qutebrowser.qt.QtWidgets import QLabel, QSizePolicy
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, Qt
from qutebrowser.config import config, stylesheet
from qutebrowser.utils import utils, usertypes
diff --git a/qutebrowser/misc/lineparser.py b/qutebrowser/misc/lineparser.py
index fee87354f..5793b783d 100644
--- a/qutebrowser/misc/lineparser.py
+++ b/qutebrowser/misc/lineparser.py
@@ -24,7 +24,7 @@ import os.path
import contextlib
from typing import Sequence
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, QObject
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, QObject
from qutebrowser.utils import log, utils, qtutils
from qutebrowser.config import config
diff --git a/qutebrowser/misc/miscwidgets.py b/qutebrowser/misc/miscwidgets.py
index 4354ed2ab..73c74f5f3 100644
--- a/qutebrowser/misc/miscwidgets.py
+++ b/qutebrowser/misc/miscwidgets.py
@@ -21,11 +21,11 @@
from typing import Optional
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QSize, QTimer
-from PyQt5.QtWidgets import (QLineEdit, QWidget, QHBoxLayout, QLabel,
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, Qt, QSize, QTimer
+from qutebrowser.qt.QtWidgets import (QLineEdit, QWidget, QHBoxLayout, QLabel,
QStyleOption, QStyle, QLayout, QApplication,
QSplitter)
-from PyQt5.QtGui import QValidator, QPainter, QResizeEvent
+from qutebrowser.qt.QtGui import QValidator, QPainter, QResizeEvent
from qutebrowser.config import config, configfiles
from qutebrowser.utils import utils, log, usertypes
diff --git a/qutebrowser/misc/msgbox.py b/qutebrowser/misc/msgbox.py
index 4271c2639..2a607661e 100644
--- a/qutebrowser/misc/msgbox.py
+++ b/qutebrowser/misc/msgbox.py
@@ -19,8 +19,8 @@
"""Convenience functions to show message boxes."""
-from PyQt5.QtCore import Qt
-from PyQt5.QtWidgets import QMessageBox
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtWidgets import QMessageBox
from qutebrowser.misc import objects
from qutebrowser.utils import log
diff --git a/qutebrowser/misc/objects.py b/qutebrowser/misc/objects.py
index 00a1ef35d..6fde80d86 100644
--- a/qutebrowser/misc/objects.py
+++ b/qutebrowser/misc/objects.py
@@ -26,7 +26,7 @@ import argparse
from typing import TYPE_CHECKING, Any, Dict, Set, Union, cast
if TYPE_CHECKING:
- from PyQt5.QtWidgets import QApplication
+ from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.utils import usertypes
from qutebrowser.commands import command
diff --git a/qutebrowser/misc/pastebin.py b/qutebrowser/misc/pastebin.py
index a4e0a196f..84697caca 100644
--- a/qutebrowser/misc/pastebin.py
+++ b/qutebrowser/misc/pastebin.py
@@ -21,7 +21,7 @@
import urllib.parse
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QUrl
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QUrl
class PastebinClient(QObject):
diff --git a/qutebrowser/misc/quitter.py b/qutebrowser/misc/quitter.py
index 905429989..d893a4540 100644
--- a/qutebrowser/misc/quitter.py
+++ b/qutebrowser/misc/quitter.py
@@ -31,7 +31,7 @@ import functools
import subprocess
from typing import Iterable, Mapping, MutableSequence, Sequence, cast
-from PyQt5.QtCore import QObject, pyqtSignal, QTimer
+from qutebrowser.qt.QtCore import QObject, pyqtSignal, QTimer
try:
import hunter
except ImportError:
diff --git a/qutebrowser/misc/savemanager.py b/qutebrowser/misc/savemanager.py
index 1b72734cb..baba0f42d 100644
--- a/qutebrowser/misc/savemanager.py
+++ b/qutebrowser/misc/savemanager.py
@@ -23,7 +23,7 @@ import os.path
import collections
from typing import MutableMapping
-from PyQt5.QtCore import pyqtSlot, QObject, QTimer
+from qutebrowser.qt.QtCore import pyqtSlot, QObject, QTimer
from qutebrowser.config import config
from qutebrowser.api import cmdutils
diff --git a/qutebrowser/misc/sessions.py b/qutebrowser/misc/sessions.py
index a28f3a848..fbf6cb07e 100644
--- a/qutebrowser/misc/sessions.py
+++ b/qutebrowser/misc/sessions.py
@@ -27,7 +27,7 @@ import shutil
import pathlib
from typing import Any, Iterable, MutableMapping, MutableSequence, Optional, Union, cast
-from PyQt5.QtCore import Qt, QUrl, QObject, QPoint, QTimer, QDateTime
+from qutebrowser.qt.QtCore import Qt, QUrl, QObject, QPoint, QTimer, QDateTime
import yaml
from qutebrowser.utils import (standarddir, objreg, qtutils, log, message,
diff --git a/qutebrowser/misc/sql.py b/qutebrowser/misc/sql.py
index 8f3282a2f..4c75a9f61 100644
--- a/qutebrowser/misc/sql.py
+++ b/qutebrowser/misc/sql.py
@@ -25,8 +25,8 @@ import dataclasses
import types
from typing import Any, Dict, Iterator, List, Mapping, MutableSequence, Optional, Type
-from PyQt5.QtCore import QObject, pyqtSignal
-from PyQt5.QtSql import QSqlDatabase, QSqlError, QSqlQuery
+from qutebrowser.qt.QtCore import QObject, pyqtSignal
+from qutebrowser.qt.QtSql import QSqlDatabase, QSqlError, QSqlQuery
from qutebrowser.qt import sip
from qutebrowser.utils import debug, log
diff --git a/qutebrowser/misc/throttle.py b/qutebrowser/misc/throttle.py
index ac565b68d..a61ab5da5 100644
--- a/qutebrowser/misc/throttle.py
+++ b/qutebrowser/misc/throttle.py
@@ -23,7 +23,7 @@ import dataclasses
import time
from typing import Any, Callable, Mapping, Optional, Sequence
-from PyQt5.QtCore import QObject
+from qutebrowser.qt.QtCore import QObject
from qutebrowser.utils import usertypes
diff --git a/qutebrowser/misc/utilcmds.py b/qutebrowser/misc/utilcmds.py
index 14c02864e..16008aeab 100644
--- a/qutebrowser/misc/utilcmds.py
+++ b/qutebrowser/misc/utilcmds.py
@@ -27,8 +27,8 @@ import sys
import traceback
from typing import Optional
-from PyQt5.QtCore import QUrl
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.browser import qutescheme
from qutebrowser.utils import log, objreg, usertypes, message, debug, utils
diff --git a/qutebrowser/resources.py b/qutebrowser/resources.py
index ebe256809..7c213bddd 100644
--- a/qutebrowser/resources.py
+++ b/qutebrowser/resources.py
@@ -6,7 +6,7 @@
#
# WARNING! All changes made in this file will be lost!
-from PyQt5 import QtCore
+from qutebrowser.qt import QtCore
qt_resource_data = b"\
\x00\x00\x22\xfe\
diff --git a/qutebrowser/utils/debug.py b/qutebrowser/utils/debug.py
index 0fa74f4e7..c3583731e 100644
--- a/qutebrowser/utils/debug.py
+++ b/qutebrowser/utils/debug.py
@@ -28,7 +28,7 @@ import types
from typing import (
Any, Callable, List, Mapping, MutableSequence, Optional, Sequence, Type, Union)
-from PyQt5.QtCore import Qt, QEvent, QMetaMethod, QObject, pyqtBoundSignal
+from qutebrowser.qt.QtCore import Qt, QEvent, QMetaMethod, QObject, pyqtBoundSignal
from qutebrowser.utils import log, utils, qtutils, objreg
from qutebrowser.misc import objects
diff --git a/qutebrowser/utils/error.py b/qutebrowser/utils/error.py
index a5889f977..e6a20a0e4 100644
--- a/qutebrowser/utils/error.py
+++ b/qutebrowser/utils/error.py
@@ -19,7 +19,7 @@
"""Tools related to error printing/displaying."""
-from PyQt5.QtWidgets import QMessageBox
+from qutebrowser.qt.QtWidgets import QMessageBox
from qutebrowser.utils import log, utils
diff --git a/qutebrowser/utils/jinja.py b/qutebrowser/utils/jinja.py
index a44a0235e..ad2b6954a 100644
--- a/qutebrowser/utils/jinja.py
+++ b/qutebrowser/utils/jinja.py
@@ -29,7 +29,7 @@ from typing import Any, Callable, FrozenSet, Iterator, List, Set, Tuple
import jinja2
import jinja2.nodes
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import utils, urlutils, log, qtutils, resources
from qutebrowser.misc import debugcachestats
diff --git a/qutebrowser/utils/log.py b/qutebrowser/utils/log.py
index 22035e074..39a095180 100644
--- a/qutebrowser/utils/log.py
+++ b/qutebrowser/utils/log.py
@@ -35,7 +35,7 @@ import argparse
from typing import (TYPE_CHECKING, Any, Iterator, Mapping, MutableSequence,
Optional, Set, Tuple, Union)
-from PyQt5 import QtCore
+from qutebrowser.qt import QtCore
# Optional imports
try:
import colorama
diff --git a/qutebrowser/utils/message.py b/qutebrowser/utils/message.py
index c490aa4e8..2a057b0ed 100644
--- a/qutebrowser/utils/message.py
+++ b/qutebrowser/utils/message.py
@@ -26,7 +26,7 @@
import traceback
from typing import Any, Callable, Iterable, List, Tuple, Union, Optional
-from PyQt5.QtCore import pyqtSignal, pyqtBoundSignal, QObject
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtBoundSignal, QObject
from qutebrowser.utils import usertypes, log
diff --git a/qutebrowser/utils/objreg.py b/qutebrowser/utils/objreg.py
index 0819a5d0a..df13fa6e4 100644
--- a/qutebrowser/utils/objreg.py
+++ b/qutebrowser/utils/objreg.py
@@ -25,9 +25,9 @@ import functools
from typing import (TYPE_CHECKING, Any, Callable, MutableMapping, MutableSequence,
Optional, Sequence, Union)
-from PyQt5.QtCore import QObject, QTimer
-from PyQt5.QtWidgets import QApplication
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtCore import QObject, QTimer
+from qutebrowser.qt.QtWidgets import QApplication
+from qutebrowser.qt.QtWidgets import QWidget
from qutebrowser.utils import log, usertypes, utils
if TYPE_CHECKING:
diff --git a/qutebrowser/utils/qtutils.py b/qutebrowser/utils/qtutils.py
index ff8983c50..f634b1ffb 100644
--- a/qutebrowser/utils/qtutils.py
+++ b/qutebrowser/utils/qtutils.py
@@ -34,17 +34,17 @@ import contextlib
from typing import (Any, AnyStr, TYPE_CHECKING, BinaryIO, IO, Iterator,
Optional, Union, Tuple, cast)
-from PyQt5.QtCore import (qVersion, QEventLoop, QDataStream, QByteArray,
+from qutebrowser.qt.QtCore import (qVersion, QEventLoop, QDataStream, QByteArray,
QIODevice, QFileDevice, QSaveFile, QT_VERSION_STR,
PYQT_VERSION_STR, QObject, QUrl)
-from PyQt5.QtGui import QColor
+from qutebrowser.qt.QtGui import QColor
try:
- from PyQt5.QtWebKit import qWebKitVersion
+ from qutebrowser.qt.QtWebKit import qWebKitVersion
except ImportError: # pragma: no cover
qWebKitVersion = None # type: ignore[assignment] # noqa: N816
if TYPE_CHECKING:
- from PyQt5.QtWebKit import QWebHistory
- from PyQt5.QtWebEngineWidgets import QWebEngineHistory
+ from qutebrowser.qt.QtWebKit import QWebHistory
+ from qutebrowser.qt.QtWebEngineWidgets import QWebEngineHistory
from qutebrowser.misc import objects
from qutebrowser.utils import usertypes, utils
diff --git a/qutebrowser/utils/standarddir.py b/qutebrowser/utils/standarddir.py
index c753e9de6..292e94d31 100644
--- a/qutebrowser/utils/standarddir.py
+++ b/qutebrowser/utils/standarddir.py
@@ -27,8 +27,8 @@ import enum
import argparse
from typing import Iterator, Optional
-from PyQt5.QtCore import QStandardPaths
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtCore import QStandardPaths
+from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.utils import log, debug, utils, version
diff --git a/qutebrowser/utils/urlmatch.py b/qutebrowser/utils/urlmatch.py
index f14c2083d..5d848daca 100644
--- a/qutebrowser/utils/urlmatch.py
+++ b/qutebrowser/utils/urlmatch.py
@@ -34,7 +34,7 @@ import fnmatch
import urllib.parse
from typing import Any, Optional, Tuple
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import utils, qtutils
diff --git a/qutebrowser/utils/urlutils.py b/qutebrowser/utils/urlutils.py
index cfba2c1d8..22c6d2e28 100644
--- a/qutebrowser/utils/urlutils.py
+++ b/qutebrowser/utils/urlutils.py
@@ -28,8 +28,8 @@ import urllib.parse
import mimetypes
from typing import Optional, Tuple, Union, Iterable
-from PyQt5.QtCore import QUrl
-from PyQt5.QtNetwork import QHostInfo, QHostAddress, QNetworkProxy
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtNetwork import QHostInfo, QHostAddress, QNetworkProxy
from qutebrowser.api import cmdutils
from qutebrowser.config import config
diff --git a/qutebrowser/utils/usertypes.py b/qutebrowser/utils/usertypes.py
index 56c29899d..9ec873f71 100644
--- a/qutebrowser/utils/usertypes.py
+++ b/qutebrowser/utils/usertypes.py
@@ -25,8 +25,8 @@ import enum
import dataclasses
from typing import Optional, Sequence, TypeVar, Union
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QTimer
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QTimer
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import log, qtutils, utils
diff --git a/qutebrowser/utils/utils.py b/qutebrowser/utils/utils.py
index a28d662b3..81b5d5af3 100644
--- a/qutebrowser/utils/utils.py
+++ b/qutebrowser/utils/utils.py
@@ -44,9 +44,9 @@ except ImportError: # pragma: no cover
"""Empty stub at runtime."""
-from PyQt5.QtCore import QUrl, QVersionNumber, QRect
-from PyQt5.QtGui import QClipboard, QDesktopServices
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtCore import QUrl, QVersionNumber, QRect
+from qutebrowser.qt.QtGui import QClipboard, QDesktopServices
+from qutebrowser.qt.QtWidgets import QApplication
import yaml
try:
diff --git a/qutebrowser/utils/version.py b/qutebrowser/utils/version.py
index bf6b49fa6..7b30b7121 100644
--- a/qutebrowser/utils/version.py
+++ b/qutebrowser/utils/version.py
@@ -38,18 +38,18 @@ from typing import (Mapping, Optional, Sequence, Tuple, ClassVar, Dict, cast,
TYPE_CHECKING)
-from PyQt5.QtCore import PYQT_VERSION_STR, QLibraryInfo, qVersion
-from PyQt5.QtNetwork import QSslSocket
-from PyQt5.QtGui import (QOpenGLContext, QOpenGLVersionProfile,
+from qutebrowser.qt.QtCore import PYQT_VERSION_STR, QLibraryInfo, qVersion
+from qutebrowser.qt.QtNetwork import QSslSocket
+from qutebrowser.qt.QtGui import (QOpenGLContext, QOpenGLVersionProfile,
QOffscreenSurface)
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtWidgets import QApplication
try:
- from PyQt5.QtWebKit import qWebKitVersion
+ from qutebrowser.qt.QtWebKit import qWebKitVersion
except ImportError: # pragma: no cover
qWebKitVersion = None # type: ignore[assignment] # noqa: N816
try:
- from PyQt5.QtWebEngine import PYQT_WEBENGINE_VERSION_STR
+ from qutebrowser.qt.QtWebEngine import PYQT_WEBENGINE_VERSION_STR
except ImportError: # pragma: no cover
# Added in PyQt 5.13
PYQT_WEBENGINE_VERSION_STR = None # type: ignore[assignment]
diff --git a/scripts/dev/standardpaths_tester.py b/scripts/dev/standardpaths_tester.py
index 03de7f887..bf7ec9a74 100644
--- a/scripts/dev/standardpaths_tester.py
+++ b/scripts/dev/standardpaths_tester.py
@@ -23,7 +23,7 @@
import os
import sys
-from PyQt5.QtCore import (QT_VERSION_STR, PYQT_VERSION_STR, qVersion,
+from qutebrowser.qt.QtCore import (QT_VERSION_STR, PYQT_VERSION_STR, qVersion,
QStandardPaths, QCoreApplication)
diff --git a/scripts/keytester.py b/scripts/keytester.py
index bc9a22263..da861a832 100644
--- a/scripts/keytester.py
+++ b/scripts/keytester.py
@@ -23,7 +23,7 @@
Use python3 -m scripts.keytester to launch it.
"""
-from PyQt5.QtWidgets import QApplication
+from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.misc import miscwidgets
diff --git a/scripts/opengl_info.py b/scripts/opengl_info.py
index 1bfdf22aa..8cb07fe5d 100644
--- a/scripts/opengl_info.py
+++ b/scripts/opengl_info.py
@@ -20,7 +20,7 @@
"""Show information about the OpenGL setup."""
-from PyQt5.QtGui import (QOpenGLContext, QOpenGLVersionProfile,
+from qutebrowser.qt.QtGui import (QOpenGLContext, QOpenGLVersionProfile,
QOffscreenSurface, QGuiApplication)
app = QGuiApplication([])
diff --git a/scripts/testbrowser/testbrowser_webengine.py b/scripts/testbrowser/testbrowser_webengine.py
index 73fa6828e..c16cbd162 100755
--- a/scripts/testbrowser/testbrowser_webengine.py
+++ b/scripts/testbrowser/testbrowser_webengine.py
@@ -23,9 +23,9 @@
import sys
import argparse
-from PyQt5.QtCore import QUrl
-from PyQt5.QtWidgets import QApplication
-from PyQt5.QtWebEngineWidgets import QWebEngineView
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtWidgets import QApplication
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineView
def parse_args():
diff --git a/scripts/testbrowser/testbrowser_webkit.py b/scripts/testbrowser/testbrowser_webkit.py
index 40938d06b..72546d08b 100755
--- a/scripts/testbrowser/testbrowser_webkit.py
+++ b/scripts/testbrowser/testbrowser_webkit.py
@@ -23,10 +23,10 @@
import sys
import argparse
-from PyQt5.QtCore import QUrl
-from PyQt5.QtWidgets import QApplication
-from PyQt5.QtWebKit import QWebSettings
-from PyQt5.QtWebKitWidgets import QWebView
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtWidgets import QApplication
+from qutebrowser.qt.QtWebKit import QWebSettings
+from qutebrowser.qt.QtWebKitWidgets import QWebView
def parse_args():
diff --git a/tests/conftest.py b/tests/conftest.py
index 84cae784b..868b2f2a6 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -250,9 +250,9 @@ def _select_backend(config):
# Fail early if selected backend is not available
# pylint: disable=unused-import
if backend == 'webkit':
- import PyQt5.QtWebKitWidgets
+ import qutebrowser.qt.QtWebKitWidgets
elif backend == 'webengine':
- import PyQt5.QtWebEngineWidgets
+ import qutebrowser.qt.QtWebEngineWidgets
else:
raise utils.Unreachable(backend)
@@ -263,12 +263,12 @@ def _auto_select_backend():
# pylint: disable=unused-import
try:
# Try to use QtWebKit as the default backend
- import PyQt5.QtWebKitWidgets
+ import qutebrowser.qt.QtWebKitWidgets
return 'webkit'
except ImportError:
# Try to use QtWebEngine as a fallback and fail early
# if that's also not available
- import PyQt5.QtWebEngineWidgets
+ import qutebrowser.qt.QtWebEngineWidgets
return 'webengine'
diff --git a/tests/end2end/conftest.py b/tests/end2end/conftest.py
index 5241ab4c3..0ee069e77 100644
--- a/tests/end2end/conftest.py
+++ b/tests/end2end/conftest.py
@@ -27,7 +27,7 @@ import pstats
import operator
import pytest
-from PyQt5.QtCore import PYQT_VERSION, QCoreApplication
+from qutebrowser.qt.QtCore import PYQT_VERSION, QCoreApplication
pytest.register_assert_rewrite('end2end.fixtures')
@@ -119,7 +119,7 @@ def _get_version_tag(tag):
)
elif package == 'pyqtwebengine':
try:
- from PyQt5.QtWebEngine import PYQT_WEBENGINE_VERSION
+ from qutebrowser.qt.QtWebEngine import PYQT_WEBENGINE_VERSION
except ImportError:
running_version = PYQT_VERSION
else:
diff --git a/tests/end2end/features/test_downloads_bdd.py b/tests/end2end/features/test_downloads_bdd.py
index 804ed40fe..b6c49015b 100644
--- a/tests/end2end/features/test_downloads_bdd.py
+++ b/tests/end2end/features/test_downloads_bdd.py
@@ -23,7 +23,7 @@ import shlex
import pytest
import pytest_bdd as bdd
-from PyQt5.QtNetwork import QSslSocket
+from qutebrowser.qt.QtNetwork import QSslSocket
bdd.scenarios('downloads.feature')
diff --git a/tests/end2end/features/test_editor_bdd.py b/tests/end2end/features/test_editor_bdd.py
index 40f77a0f7..26226e038 100644
--- a/tests/end2end/features/test_editor_bdd.py
+++ b/tests/end2end/features/test_editor_bdd.py
@@ -26,7 +26,7 @@ import time
import pytest
import pytest_bdd as bdd
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QFileSystemWatcher
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject, QFileSystemWatcher
bdd.scenarios('editor.feature')
from qutebrowser.utils import utils
diff --git a/tests/end2end/fixtures/notificationserver.py b/tests/end2end/fixtures/notificationserver.py
index b643e848b..f410c86f8 100644
--- a/tests/end2end/fixtures/notificationserver.py
+++ b/tests/end2end/fixtures/notificationserver.py
@@ -21,9 +21,9 @@ import dataclasses
import itertools
from typing import Dict, List
-from PyQt5.QtCore import QObject, QByteArray, QUrl, pyqtSlot
-from PyQt5.QtGui import QImage
-from PyQt5.QtDBus import QDBusConnection, QDBusArgument, QDBusMessage
+from qutebrowser.qt.QtCore import QObject, QByteArray, QUrl, pyqtSlot
+from qutebrowser.qt.QtGui import QImage
+from qutebrowser.qt.QtDBus import QDBusConnection, QDBusArgument, QDBusMessage
import pytest
from qutebrowser.browser.webengine import notification
diff --git a/tests/end2end/fixtures/quteprocess.py b/tests/end2end/fixtures/quteprocess.py
index ab8f28d26..e0df4ff79 100644
--- a/tests/end2end/fixtures/quteprocess.py
+++ b/tests/end2end/fixtures/quteprocess.py
@@ -33,8 +33,8 @@ import json
import yaml
import pytest
-from PyQt5.QtCore import pyqtSignal, QUrl, QPoint
-from PyQt5.QtGui import QImage, QColor
+from qutebrowser.qt.QtCore import pyqtSignal, QUrl, QPoint
+from qutebrowser.qt.QtGui import QImage, QColor
from qutebrowser.misc import ipc
from qutebrowser.utils import log, utils, javascript
diff --git a/tests/end2end/fixtures/test_testprocess.py b/tests/end2end/fixtures/test_testprocess.py
index aa6f19c67..5f6bafec7 100644
--- a/tests/end2end/fixtures/test_testprocess.py
+++ b/tests/end2end/fixtures/test_testprocess.py
@@ -25,7 +25,7 @@ import contextlib
import datetime
import pytest
-from PyQt5.QtCore import QProcess
+from qutebrowser.qt.QtCore import QProcess
from end2end.fixtures import testprocess
diff --git a/tests/end2end/fixtures/testprocess.py b/tests/end2end/fixtures/testprocess.py
index 96e700390..73d0fa4a8 100644
--- a/tests/end2end/fixtures/testprocess.py
+++ b/tests/end2end/fixtures/testprocess.py
@@ -26,9 +26,9 @@ import dataclasses
import pytest
import pytestqt.wait_signal
-from PyQt5.QtCore import (pyqtSlot, pyqtSignal, QProcess, QObject,
+from qutebrowser.qt.QtCore import (pyqtSlot, pyqtSignal, QProcess, QObject,
QElapsedTimer, QProcessEnvironment)
-from PyQt5.QtTest import QSignalSpy
+from qutebrowser.qt.QtTest import QSignalSpy
from helpers import testutils
diff --git a/tests/end2end/fixtures/webserver.py b/tests/end2end/fixtures/webserver.py
index 2c2eab930..c82a0d6df 100644
--- a/tests/end2end/fixtures/webserver.py
+++ b/tests/end2end/fixtures/webserver.py
@@ -28,7 +28,7 @@ import dataclasses
from http import HTTPStatus
import pytest
-from PyQt5.QtCore import pyqtSignal, QUrl
+from qutebrowser.qt.QtCore import pyqtSignal, QUrl
from end2end.fixtures import testprocess
diff --git a/tests/end2end/test_dirbrowser.py b/tests/end2end/test_dirbrowser.py
index c2aa19233..8c7c8c23d 100644
--- a/tests/end2end/test_dirbrowser.py
+++ b/tests/end2end/test_dirbrowser.py
@@ -27,7 +27,7 @@ from typing import List
import pytest
import bs4
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import urlutils
from helpers import testutils
diff --git a/tests/end2end/test_invocations.py b/tests/end2end/test_invocations.py
index 0d49ff109..c8218968b 100644
--- a/tests/end2end/test_invocations.py
+++ b/tests/end2end/test_invocations.py
@@ -29,7 +29,7 @@ import json
import platform
import pytest
-from PyQt5.QtCore import QProcess, QPoint
+from qutebrowser.qt.QtCore import QProcess, QPoint
from helpers import testutils
from qutebrowser.utils import qtutils, utils
diff --git a/tests/helpers/fixtures.py b/tests/helpers/fixtures.py
index cc362290f..e44ae4cad 100644
--- a/tests/helpers/fixtures.py
+++ b/tests/helpers/fixtures.py
@@ -37,9 +37,9 @@ import dataclasses
import pytest
import py.path # pylint: disable=no-name-in-module
-from PyQt5.QtCore import QSize, Qt
-from PyQt5.QtWidgets import QWidget, QHBoxLayout, QVBoxLayout
-from PyQt5.QtNetwork import QNetworkCookieJar
+from qutebrowser.qt.QtCore import QSize, Qt
+from qutebrowser.qt.QtWidgets import QWidget, QHBoxLayout, QVBoxLayout
+from qutebrowser.qt.QtNetwork import QNetworkCookieJar
import helpers.stubs as stubsmod
import qutebrowser
@@ -177,7 +177,7 @@ def testdata_scheme(qapp):
try:
global _qute_scheme_handler
from qutebrowser.browser.webengine import webenginequtescheme
- from PyQt5.QtWebEngineWidgets import QWebEngineProfile
+ from qutebrowser.qt.QtWebEngineWidgets import QWebEngineProfile
webenginequtescheme.init()
_qute_scheme_handler = webenginequtescheme.QuteSchemeHandler(
parent=qapp)
@@ -432,7 +432,7 @@ def unicode_encode_err():
@pytest.fixture(scope='session')
def qnam(qapp):
"""Session-wide QNetworkAccessManager."""
- from PyQt5.QtNetwork import QNetworkAccessManager
+ from qutebrowser.qt.QtNetwork import QNetworkAccessManager
nam = QNetworkAccessManager()
nam.setNetworkAccessible(QNetworkAccessManager.NotAccessible)
return nam
diff --git a/tests/helpers/messagemock.py b/tests/helpers/messagemock.py
index 41f0bac64..f9b14f3dc 100644
--- a/tests/helpers/messagemock.py
+++ b/tests/helpers/messagemock.py
@@ -23,7 +23,7 @@ import logging
import dataclasses
import pytest
-from PyQt5.QtCore import pyqtSlot, pyqtSignal, QObject
+from qutebrowser.qt.QtCore import pyqtSlot, pyqtSignal, QObject
from qutebrowser.utils import usertypes, message
diff --git a/tests/helpers/stubs.py b/tests/helpers/stubs.py
index 6998958b8..a4d85da76 100644
--- a/tests/helpers/stubs.py
+++ b/tests/helpers/stubs.py
@@ -30,11 +30,11 @@ import builtins
import importlib
import types
-from PyQt5.QtCore import pyqtSignal, QPoint, QProcess, QObject, QUrl, QByteArray
-from PyQt5.QtGui import QIcon
-from PyQt5.QtNetwork import (QNetworkRequest, QAbstractNetworkCache,
+from qutebrowser.qt.QtCore import pyqtSignal, QPoint, QProcess, QObject, QUrl, QByteArray
+from qutebrowser.qt.QtGui import QIcon
+from qutebrowser.qt.QtNetwork import (QNetworkRequest, QAbstractNetworkCache,
QNetworkCacheMetaData)
-from PyQt5.QtWidgets import QCommonStyle, QLineEdit, QWidget, QTabBar
+from qutebrowser.qt.QtWidgets import QCommonStyle, QLineEdit, QWidget, QTabBar
from qutebrowser.browser import browsertab, downloads
from qutebrowser.utils import usertypes
diff --git a/tests/helpers/testutils.py b/tests/helpers/testutils.py
index c607718ab..64303b83b 100644
--- a/tests/helpers/testutils.py
+++ b/tests/helpers/testutils.py
@@ -31,7 +31,7 @@ import importlib.machinery
import pytest
-from PyQt5.QtGui import QColor
+from qutebrowser.qt.QtGui import QColor
from qutebrowser.utils import qtutils, log, utils, version
@@ -273,10 +273,12 @@ def disable_seccomp_bpf_sandbox():
newer kernels.
"""
try:
- from PyQt5 import QtWebEngine # pylint: disable=unused-import
+ from qutebrowser.qt import QtWebEngine # pylint: disable=unused-import
except ImportError:
# no QtWebEngine available
return False
+ if not QtWebEngine:
+ return False
affected_versions = set()
for base, patch_range in [
diff --git a/tests/unit/browser/test_caret.py b/tests/unit/browser/test_caret.py
index 86014040d..1bdf9b07b 100644
--- a/tests/unit/browser/test_caret.py
+++ b/tests/unit/browser/test_caret.py
@@ -22,7 +22,7 @@
import textwrap
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import usertypes
from qutebrowser.browser import browsertab
diff --git a/tests/unit/browser/test_downloadview.py b/tests/unit/browser/test_downloadview.py
index 84b50fad2..914417050 100644
--- a/tests/unit/browser/test_downloadview.py
+++ b/tests/unit/browser/test_downloadview.py
@@ -20,7 +20,7 @@
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import downloads, qtnetworkdownloads, downloadview
diff --git a/tests/unit/browser/test_hints.py b/tests/unit/browser/test_hints.py
index 85c0a642c..db8d695b7 100644
--- a/tests/unit/browser/test_hints.py
+++ b/tests/unit/browser/test_hints.py
@@ -23,7 +23,7 @@ import itertools
import operator
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import usertypes
import qutebrowser.browser.hints
diff --git a/tests/unit/browser/test_history.py b/tests/unit/browser/test_history.py
index 51a9effb8..1c0942062 100644
--- a/tests/unit/browser/test_history.py
+++ b/tests/unit/browser/test_history.py
@@ -22,7 +22,7 @@
import logging
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import history
from qutebrowser.utils import urlutils, usertypes
@@ -304,7 +304,7 @@ class TestInit:
history.web_history.setParent(None)
history.web_history = None
try:
- from PyQt5.QtWebKit import QWebHistoryInterface
+ from qutebrowser.qt.QtWebKit import QWebHistoryInterface
QWebHistoryInterface.setDefaultInterface(None)
except ImportError:
pass
@@ -322,7 +322,7 @@ class TestInit:
assert history.web_history.parent() is qapp
try:
- from PyQt5.QtWebKit import QWebHistoryInterface
+ from qutebrowser.qt.QtWebKit import QWebHistoryInterface
except ImportError:
QWebHistoryInterface = None
diff --git a/tests/unit/browser/test_inspector.py b/tests/unit/browser/test_inspector.py
index 61ac9510d..d4aa69a46 100644
--- a/tests/unit/browser/test_inspector.py
+++ b/tests/unit/browser/test_inspector.py
@@ -19,7 +19,7 @@
import pytest
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtWidgets import QWidget
from qutebrowser.browser import inspector
from qutebrowser.misc import miscwidgets
diff --git a/tests/unit/browser/test_navigate.py b/tests/unit/browser/test_navigate.py
index 9813705ca..68ed9d6f0 100644
--- a/tests/unit/browser/test_navigate.py
+++ b/tests/unit/browser/test_navigate.py
@@ -20,7 +20,7 @@
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import navigate
from qutebrowser.utils import urlutils
diff --git a/tests/unit/browser/test_pdfjs.py b/tests/unit/browser/test_pdfjs.py
index 86b875be5..6aadd88d4 100644
--- a/tests/unit/browser/test_pdfjs.py
+++ b/tests/unit/browser/test_pdfjs.py
@@ -21,7 +21,7 @@ import logging
import os.path
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import pdfjs
from qutebrowser.utils import urlmatch
diff --git a/tests/unit/browser/test_qutescheme.py b/tests/unit/browser/test_qutescheme.py
index 45474102d..70bc6e023 100644
--- a/tests/unit/browser/test_qutescheme.py
+++ b/tests/unit/browser/test_qutescheme.py
@@ -24,7 +24,7 @@ import time
import logging
import py.path # pylint: disable=no-name-in-module
-from PyQt5.QtCore import QUrl, QUrlQuery
+from qutebrowser.qt.QtCore import QUrl, QUrlQuery
import pytest
from qutebrowser.browser import qutescheme, pdfjs, downloads
diff --git a/tests/unit/browser/test_signalfilter.py b/tests/unit/browser/test_signalfilter.py
index 35c7f3557..60d2be4a0 100644
--- a/tests/unit/browser/test_signalfilter.py
+++ b/tests/unit/browser/test_signalfilter.py
@@ -23,7 +23,7 @@ import logging
import dataclasses
import pytest
-from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject
+from qutebrowser.qt.QtCore import pyqtSignal, pyqtSlot, QObject
from qutebrowser.browser import signalfilter
diff --git a/tests/unit/browser/test_urlmarks.py b/tests/unit/browser/test_urlmarks.py
index 6b8d429a9..873f48cc0 100644
--- a/tests/unit/browser/test_urlmarks.py
+++ b/tests/unit/browser/test_urlmarks.py
@@ -22,7 +22,7 @@
import unittest.mock
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser import urlmarks
diff --git a/tests/unit/browser/webengine/test_webengine_cookies.py b/tests/unit/browser/webengine/test_webengine_cookies.py
index 1a74dfb3e..1615109bc 100644
--- a/tests/unit/browser/webengine/test_webengine_cookies.py
+++ b/tests/unit/browser/webengine/test_webengine_cookies.py
@@ -18,10 +18,10 @@
# along with qutebrowser. If not, see <https://www.gnu.org/licenses/>.
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
pytest.importorskip('PyQt5.QtWebEngineCore')
-from PyQt5.QtWebEngineCore import QWebEngineCookieStore
-from PyQt5.QtWebEngineWidgets import QWebEngineProfile
+from qutebrowser.qt.QtWebEngineCore import QWebEngineCookieStore
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineProfile
from qutebrowser.browser.webengine import cookies
from qutebrowser.utils import urlmatch
diff --git a/tests/unit/browser/webengine/test_webenginedownloads.py b/tests/unit/browser/webengine/test_webenginedownloads.py
index 877af3c9a..8d1b65ec4 100644
--- a/tests/unit/browser/webengine/test_webenginedownloads.py
+++ b/tests/unit/browser/webengine/test_webenginedownloads.py
@@ -23,7 +23,7 @@ import dataclasses
import pytest
pytest.importorskip('PyQt5.QtWebEngineWidgets')
-from PyQt5.QtWebEngineWidgets import QWebEngineProfile
+from qutebrowser.qt.QtWebEngineWidgets import QWebEngineProfile
from qutebrowser.utils import urlutils, usertypes, utils
from qutebrowser.browser.webengine import webenginedownloads
diff --git a/tests/unit/browser/webengine/test_webengineinterceptor.py b/tests/unit/browser/webengine/test_webengineinterceptor.py
index eb71e0c6e..8c57cf8d4 100644
--- a/tests/unit/browser/webengine/test_webengineinterceptor.py
+++ b/tests/unit/browser/webengine/test_webengineinterceptor.py
@@ -24,7 +24,7 @@ import pytest
pytest.importorskip('PyQt5.QtWebEngineWidgets')
-from PyQt5.QtWebEngineCore import QWebEngineUrlRequestInfo
+from qutebrowser.qt.QtWebEngineCore import QWebEngineUrlRequestInfo
from qutebrowser.browser.webengine import interceptor
diff --git a/tests/unit/browser/webkit/http/test_http.py b/tests/unit/browser/webkit/http/test_http.py
index 4db78f4ff..d4bd0fcf9 100644
--- a/tests/unit/browser/webkit/http/test_http.py
+++ b/tests/unit/browser/webkit/http/test_http.py
@@ -24,7 +24,7 @@ import logging
import pytest
import hypothesis
from hypothesis import strategies
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.browser.webkit import http
diff --git a/tests/unit/browser/webkit/network/test_filescheme.py b/tests/unit/browser/webkit/network/test_filescheme.py
index 12cacb5a2..e08fd6750 100644
--- a/tests/unit/browser/webkit/network/test_filescheme.py
+++ b/tests/unit/browser/webkit/network/test_filescheme.py
@@ -24,8 +24,8 @@ from typing import List
import pytest
import bs4
-from PyQt5.QtCore import QUrl
-from PyQt5.QtNetwork import QNetworkRequest
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtNetwork import QNetworkRequest
from qutebrowser.browser.webkit.network import filescheme
from qutebrowser.utils import urlutils, utils
diff --git a/tests/unit/browser/webkit/network/test_networkreply.py b/tests/unit/browser/webkit/network/test_networkreply.py
index 3cffb2fd7..c677d8640 100644
--- a/tests/unit/browser/webkit/network/test_networkreply.py
+++ b/tests/unit/browser/webkit/network/test_networkreply.py
@@ -21,8 +21,8 @@
import pytest
-from PyQt5.QtCore import QUrl, QIODevice
-from PyQt5.QtNetwork import QNetworkRequest, QNetworkReply
+from qutebrowser.qt.QtCore import QUrl, QIODevice
+from qutebrowser.qt.QtNetwork import QNetworkRequest, QNetworkReply
from qutebrowser.browser.webkit.network import networkreply
diff --git a/tests/unit/browser/webkit/network/test_pac.py b/tests/unit/browser/webkit/network/test_pac.py
index 79b34be9a..1db47357c 100644
--- a/tests/unit/browser/webkit/network/test_pac.py
+++ b/tests/unit/browser/webkit/network/test_pac.py
@@ -22,8 +22,8 @@ import threading
import logging
import pytest
-from PyQt5.QtCore import QUrl
-from PyQt5.QtNetwork import (QNetworkProxy, QNetworkProxyQuery, QHostInfo,
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtNetwork import (QNetworkProxy, QNetworkProxyQuery, QHostInfo,
QHostAddress)
from qutebrowser.browser.network import pac
diff --git a/tests/unit/browser/webkit/test_cache.py b/tests/unit/browser/webkit/test_cache.py
index 83d5054d7..ea76aeabd 100644
--- a/tests/unit/browser/webkit/test_cache.py
+++ b/tests/unit/browser/webkit/test_cache.py
@@ -19,8 +19,8 @@
# along with qutebrowser. If not, see <https://www.gnu.org/licenses/>.
import pytest
-from PyQt5.QtCore import QUrl, QDateTime
-from PyQt5.QtNetwork import QNetworkDiskCache, QNetworkCacheMetaData
+from qutebrowser.qt.QtCore import QUrl, QDateTime
+from qutebrowser.qt.QtNetwork import QNetworkDiskCache, QNetworkCacheMetaData
from qutebrowser.browser.webkit import cache
diff --git a/tests/unit/browser/webkit/test_certificateerror.py b/tests/unit/browser/webkit/test_certificateerror.py
index e615854ca..3e240063c 100644
--- a/tests/unit/browser/webkit/test_certificateerror.py
+++ b/tests/unit/browser/webkit/test_certificateerror.py
@@ -18,7 +18,7 @@
# along with qutebrowser. If not, see <https://www.gnu.org/licenses/>.
import pytest
-from PyQt5.QtNetwork import QSslError
+from qutebrowser.qt.QtNetwork import QSslError
from qutebrowser.browser.webkit import certificateerror
diff --git a/tests/unit/browser/webkit/test_cookies.py b/tests/unit/browser/webkit/test_cookies.py
index 81da561ce..76a99fdd9 100644
--- a/tests/unit/browser/webkit/test_cookies.py
+++ b/tests/unit/browser/webkit/test_cookies.py
@@ -18,8 +18,8 @@
# You should have received a copy of the GNU General Public License
# along with qutebrowser. If not, see <https://www.gnu.org/licenses/>.
-from PyQt5.QtNetwork import QNetworkCookie
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtNetwork import QNetworkCookie
+from qutebrowser.qt.QtCore import QUrl
import pytest
from qutebrowser.browser.webkit import cookies
diff --git a/tests/unit/browser/webkit/test_tabhistory.py b/tests/unit/browser/webkit/test_tabhistory.py
index d1c4a25a4..0db2bc835 100644
--- a/tests/unit/browser/webkit/test_tabhistory.py
+++ b/tests/unit/browser/webkit/test_tabhistory.py
@@ -24,8 +24,8 @@ from typing import Any
import pytest
pytest.importorskip('PyQt5.QtWebKit')
-from PyQt5.QtCore import QUrl, QPoint
-from PyQt5.QtWebKit import QWebHistory
+from qutebrowser.qt.QtCore import QUrl, QPoint
+from qutebrowser.qt.QtWebKit import QWebHistory
from qutebrowser.browser.webkit import tabhistory
from qutebrowser.misc.sessions import TabHistoryItem as Item
diff --git a/tests/unit/browser/webkit/test_webkitelem.py b/tests/unit/browser/webkit/test_webkitelem.py
index f7cc3e8c2..6d8a71d0d 100644
--- a/tests/unit/browser/webkit/test_webkitelem.py
+++ b/tests/unit/browser/webkit/test_webkitelem.py
@@ -27,7 +27,7 @@ import itertools
import dataclasses
import pytest
-from PyQt5.QtCore import QRect, QPoint, QUrl
+from qutebrowser.qt.QtCore import QRect, QPoint, QUrl
QWebElement = pytest.importorskip('PyQt5.QtWebKit').QWebElement
from qutebrowser.browser import browsertab
diff --git a/tests/unit/commands/test_argparser.py b/tests/unit/commands/test_argparser.py
index cfa94c552..7644a6a6d 100644
--- a/tests/unit/commands/test_argparser.py
+++ b/tests/unit/commands/test_argparser.py
@@ -23,7 +23,7 @@ import inspect
import enum
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.commands import argparser, cmdexc
diff --git a/tests/unit/commands/test_userscripts.py b/tests/unit/commands/test_userscripts.py
index 436e9e2a7..7dd2baf78 100644
--- a/tests/unit/commands/test_userscripts.py
+++ b/tests/unit/commands/test_userscripts.py
@@ -25,7 +25,7 @@ import logging
import signal
import pytest
-from PyQt5.QtCore import QFileSystemWatcher
+from qutebrowser.qt.QtCore import QFileSystemWatcher
from qutebrowser.commands import userscripts
from qutebrowser.utils import utils
diff --git a/tests/unit/completion/test_completer.py b/tests/unit/completion/test_completer.py
index 467357d32..f92aee57c 100644
--- a/tests/unit/completion/test_completer.py
+++ b/tests/unit/completion/test_completer.py
@@ -22,8 +22,8 @@
import unittest.mock
import pytest
-from PyQt5.QtCore import QObject
-from PyQt5.QtGui import QStandardItemModel
+from qutebrowser.qt.QtCore import QObject
+from qutebrowser.qt.QtGui import QStandardItemModel
from qutebrowser.completion import completer
from qutebrowser.commands import command
diff --git a/tests/unit/completion/test_completiondelegate.py b/tests/unit/completion/test_completiondelegate.py
index ad081ccbf..46e39c2d5 100644
--- a/tests/unit/completion/test_completiondelegate.py
+++ b/tests/unit/completion/test_completiondelegate.py
@@ -21,9 +21,9 @@ from unittest import mock
import hypothesis
import hypothesis.strategies
import pytest
-from PyQt5.QtCore import Qt
-from PyQt5.QtGui import QTextDocument, QColor
-from PyQt5.QtWidgets import QTextEdit
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtGui import QTextDocument, QColor
+from qutebrowser.qt.QtWidgets import QTextEdit
from qutebrowser.completion import completiondelegate
diff --git a/tests/unit/completion/test_completionmodel.py b/tests/unit/completion/test_completionmodel.py
index 2130f1f1c..6f9cf7f74 100644
--- a/tests/unit/completion/test_completionmodel.py
+++ b/tests/unit/completion/test_completionmodel.py
@@ -24,7 +24,7 @@ import hypothesis
from hypothesis import strategies
import pytest
-from PyQt5.QtCore import QModelIndex
+from qutebrowser.qt.QtCore import QModelIndex
from qutebrowser.completion.models import completionmodel, listcategory
from qutebrowser.utils import qtutils
diff --git a/tests/unit/completion/test_completionwidget.py b/tests/unit/completion/test_completionwidget.py
index 074228332..b43fef07d 100644
--- a/tests/unit/completion/test_completionwidget.py
+++ b/tests/unit/completion/test_completionwidget.py
@@ -22,7 +22,7 @@
from unittest import mock
import pytest
-from PyQt5.QtCore import QRect
+from qutebrowser.qt.QtCore import QRect
from qutebrowser.completion import completionwidget
from qutebrowser.completion.models import completionmodel, listcategory
diff --git a/tests/unit/completion/test_models.py b/tests/unit/completion/test_models.py
index 2c00acf68..fbdc56e65 100644
--- a/tests/unit/completion/test_models.py
+++ b/tests/unit/completion/test_models.py
@@ -31,9 +31,9 @@ from unittest import mock
import hypothesis
import hypothesis.strategies as hst
import pytest
-from PyQt5.QtCore import QUrl, QDateTime, QProcess
+from qutebrowser.qt.QtCore import QUrl, QDateTime, QProcess
try:
- from PyQt5.QtWebEngineWidgets import (
+ from qutebrowser.qt.QtWebEngineWidgets import (
QWebEngineHistory, QWebEngineHistoryItem
)
except ImportError:
diff --git a/tests/unit/components/test_blockutils.py b/tests/unit/components/test_blockutils.py
index 08d8cee60..13f091852 100644
--- a/tests/unit/components/test_blockutils.py
+++ b/tests/unit/components/test_blockutils.py
@@ -21,7 +21,7 @@
import io
from typing import IO
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
import pytest
diff --git a/tests/unit/components/test_braveadblock.py b/tests/unit/components/test_braveadblock.py
index fc50cb595..751c4221d 100644
--- a/tests/unit/components/test_braveadblock.py
+++ b/tests/unit/components/test_braveadblock.py
@@ -22,7 +22,7 @@ import logging
import csv
from typing import Iterable, Tuple
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
import pytest
diff --git a/tests/unit/components/test_hostblock.py b/tests/unit/components/test_hostblock.py
index 5949f92f8..74d4a8f6b 100644
--- a/tests/unit/components/test_hostblock.py
+++ b/tests/unit/components/test_hostblock.py
@@ -24,7 +24,7 @@ import logging
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.components import hostblock
from qutebrowser.utils import urlmatch
diff --git a/tests/unit/components/test_readlinecommands.py b/tests/unit/components/test_readlinecommands.py
index af815b075..720d6f12a 100644
--- a/tests/unit/components/test_readlinecommands.py
+++ b/tests/unit/components/test_readlinecommands.py
@@ -21,7 +21,7 @@ import os
import re
import inspect
-from PyQt5.QtWidgets import QLineEdit, QApplication
+from qutebrowser.qt.QtWidgets import QLineEdit, QApplication
import pytest
from qutebrowser.components import readlinecommands
diff --git a/tests/unit/config/test_config.py b/tests/unit/config/test_config.py
index b88bc2f8d..865be8bb6 100644
--- a/tests/unit/config/test_config.py
+++ b/tests/unit/config/test_config.py
@@ -23,8 +23,8 @@ import unittest.mock
import functools
import pytest
-from PyQt5.QtCore import QUrl
-from PyQt5.QtGui import QColor
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtGui import QColor
from qutebrowser.config import config, configdata, configexc
from qutebrowser.utils import usertypes, urlmatch
diff --git a/tests/unit/config/test_configcommands.py b/tests/unit/config/test_configcommands.py
index 6dd09cee3..52f115979 100644
--- a/tests/unit/config/test_configcommands.py
+++ b/tests/unit/config/test_configcommands.py
@@ -23,7 +23,7 @@ import functools
import unittest.mock
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.config import configcommands
from qutebrowser.api import cmdutils
diff --git a/tests/unit/config/test_configfiles.py b/tests/unit/config/test_configfiles.py
index 760992e15..258612dbe 100644
--- a/tests/unit/config/test_configfiles.py
+++ b/tests/unit/config/test_configfiles.py
@@ -25,7 +25,7 @@ import textwrap
import logging
import pytest
-from PyQt5.QtCore import QSettings
+from qutebrowser.qt.QtCore import QSettings
from qutebrowser.config import (config, configfiles, configexc, configdata,
configtypes)
@@ -167,7 +167,7 @@ def state_writer(data_tmpdir):
@pytest.fixture
def qtwe_version_patcher(monkeypatch):
try:
- from PyQt5 import QtWebEngineWidgets # pylint: disable=unused-import
+ from qutebrowser.qt import QtWebEngineWidgets # pylint: disable=unused-import
except ImportError:
pytest.skip("QtWebEngine not available")
diff --git a/tests/unit/config/test_configtypes.py b/tests/unit/config/test_configtypes.py
index c34efce54..b65dfca44 100644
--- a/tests/unit/config/test_configtypes.py
+++ b/tests/unit/config/test_configtypes.py
@@ -29,9 +29,9 @@ import dataclasses
import pytest
import hypothesis
from hypothesis import strategies
-from PyQt5.QtCore import QUrl
-from PyQt5.QtGui import QColor, QFont
-from PyQt5.QtNetwork import QNetworkProxy
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtGui import QColor, QFont
+from qutebrowser.qt.QtNetwork import QNetworkProxy
from qutebrowser.misc import objects
from qutebrowser.config import configtypes, configexc
diff --git a/tests/unit/config/test_configutils.py b/tests/unit/config/test_configutils.py
index 3fc5cd561..2a7fef8b4 100644
--- a/tests/unit/config/test_configutils.py
+++ b/tests/unit/config/test_configutils.py
@@ -20,8 +20,8 @@
import hypothesis
from hypothesis import strategies
import pytest
-from PyQt5.QtCore import QUrl
-from PyQt5.QtWidgets import QLabel
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtWidgets import QLabel
from qutebrowser.config import configutils, configdata, configtypes, configexc
from qutebrowser.utils import urlmatch, usertypes, qtutils
diff --git a/tests/unit/config/test_qtargs_locale_workaround.py b/tests/unit/config/test_qtargs_locale_workaround.py
index 4a4152b80..a1df3a693 100644
--- a/tests/unit/config/test_qtargs_locale_workaround.py
+++ b/tests/unit/config/test_qtargs_locale_workaround.py
@@ -20,7 +20,7 @@ import os
import pathlib
import pytest
-from PyQt5.QtCore import QLocale
+from qutebrowser.qt.QtCore import QLocale
from qutebrowser.utils import utils
from qutebrowser.config import qtargs
diff --git a/tests/unit/config/test_stylesheet.py b/tests/unit/config/test_stylesheet.py
index 4ffa107ed..252f0f9c4 100644
--- a/tests/unit/config/test_stylesheet.py
+++ b/tests/unit/config/test_stylesheet.py
@@ -18,7 +18,7 @@
import pytest
-from PyQt5.QtCore import QObject
+from qutebrowser.qt.QtCore import QObject
from qutebrowser.config import stylesheet
diff --git a/tests/unit/javascript/conftest.py b/tests/unit/javascript/conftest.py
index 4a7f09204..43b9ca993 100644
--- a/tests/unit/javascript/conftest.py
+++ b/tests/unit/javascript/conftest.py
@@ -23,7 +23,7 @@ import pathlib
import pytest
import jinja2
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
import qutebrowser
from qutebrowser.utils import usertypes
diff --git a/tests/unit/javascript/test_greasemonkey.py b/tests/unit/javascript/test_greasemonkey.py
index 17847816d..f418c824c 100644
--- a/tests/unit/javascript/test_greasemonkey.py
+++ b/tests/unit/javascript/test_greasemonkey.py
@@ -23,7 +23,7 @@ import textwrap
import pytest
import py.path # pylint: disable=no-name-in-module
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import usertypes, version
from qutebrowser.browser import greasemonkey
diff --git a/tests/unit/javascript/test_js_execution.py b/tests/unit/javascript/test_js_execution.py
index e371e0f36..9f1767048 100644
--- a/tests/unit/javascript/test_js_execution.py
+++ b/tests/unit/javascript/test_js_execution.py
@@ -28,7 +28,7 @@ def test_simple_js_webkit(webview, js_enabled, expected):
"""With QtWebKit, evaluateJavaScript works when JS is on."""
# If we get there (because of the webview fixture) we can be certain
# QtWebKit is available
- from PyQt5.QtWebKit import QWebSettings
+ from qutebrowser.qt.QtWebKit import QWebSettings
webview.settings().setAttribute(QWebSettings.JavascriptEnabled, js_enabled)
result = webview.page().mainFrame().evaluateJavaScript('1 + 1')
assert result == expected
@@ -39,7 +39,7 @@ def test_element_js_webkit(webview, js_enabled, expected):
"""With QtWebKit, evaluateJavaScript on an element works with JS off."""
# If we get there (because of the webview fixture) we can be certain
# QtWebKit is available
- from PyQt5.QtWebKit import QWebSettings
+ from qutebrowser.qt.QtWebKit import QWebSettings
webview.settings().setAttribute(QWebSettings.JavascriptEnabled, js_enabled)
elem = webview.page().mainFrame().documentElement()
result = elem.evaluateJavaScript('1 + 1')
@@ -63,7 +63,7 @@ def test_simple_js_webengine(qtbot, webengineview, qapp,
"""With QtWebEngine, runJavaScript works even when JS is off."""
# If we get there (because of the webengineview fixture) we can be certain
# QtWebEngine is available
- from PyQt5.QtWebEngineWidgets import QWebEngineSettings, QWebEngineScript
+ from qutebrowser.qt.QtWebEngineWidgets import QWebEngineSettings, QWebEngineScript
assert world in [QWebEngineScript.MainWorld,
QWebEngineScript.ApplicationWorld,
diff --git a/tests/unit/javascript/test_js_quirks.py b/tests/unit/javascript/test_js_quirks.py
index 7036dcfc9..933bb229e 100644
--- a/tests/unit/javascript/test_js_quirks.py
+++ b/tests/unit/javascript/test_js_quirks.py
@@ -26,7 +26,7 @@ the native functionality exists.
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import usertypes
diff --git a/tests/unit/keyinput/key_data.py b/tests/unit/keyinput/key_data.py
index c451d2534..38b548400 100644
--- a/tests/unit/keyinput/key_data.py
+++ b/tests/unit/keyinput/key_data.py
@@ -25,7 +25,7 @@
import dataclasses
from typing import Optional
-from PyQt5.QtCore import Qt
+from qutebrowser.qt.QtCore import Qt
@dataclasses.dataclass(order=True)
diff --git a/tests/unit/keyinput/test_basekeyparser.py b/tests/unit/keyinput/test_basekeyparser.py
index 84068bf47..cb951a74a 100644
--- a/tests/unit/keyinput/test_basekeyparser.py
+++ b/tests/unit/keyinput/test_basekeyparser.py
@@ -21,7 +21,7 @@
from unittest import mock
-from PyQt5.QtCore import Qt
+from qutebrowser.qt.QtCore import Qt
import pytest
from qutebrowser.keyinput import basekeyparser, keyutils
diff --git a/tests/unit/keyinput/test_bindingtrie.py b/tests/unit/keyinput/test_bindingtrie.py
index c769386c0..a89c62800 100644
--- a/tests/unit/keyinput/test_bindingtrie.py
+++ b/tests/unit/keyinput/test_bindingtrie.py
@@ -25,7 +25,7 @@ import textwrap
import pytest
-from PyQt5.QtGui import QKeySequence
+from qutebrowser.qt.QtGui import QKeySequence
from qutebrowser.keyinput import basekeyparser
from qutebrowser.keyinput import keyutils
diff --git a/tests/unit/keyinput/test_keyutils.py b/tests/unit/keyinput/test_keyutils.py
index 195518127..5a876ab2b 100644
--- a/tests/unit/keyinput/test_keyutils.py
+++ b/tests/unit/keyinput/test_keyutils.py
@@ -22,9 +22,9 @@ import operator
import hypothesis
from hypothesis import strategies
import pytest
-from PyQt5.QtCore import Qt, QEvent, pyqtSignal
-from PyQt5.QtGui import QKeyEvent, QKeySequence
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtCore import Qt, QEvent, pyqtSignal
+from qutebrowser.qt.QtGui import QKeyEvent, QKeySequence
+from qutebrowser.qt.QtWidgets import QWidget
from unit.keyinput import key_data
from qutebrowser.keyinput import keyutils
diff --git a/tests/unit/keyinput/test_modeman.py b/tests/unit/keyinput/test_modeman.py
index 8cc298f87..08afbe8cb 100644
--- a/tests/unit/keyinput/test_modeman.py
+++ b/tests/unit/keyinput/test_modeman.py
@@ -19,7 +19,7 @@
import pytest
-from PyQt5.QtCore import Qt, QObject, pyqtSignal
+from qutebrowser.qt.QtCore import Qt, QObject, pyqtSignal
from qutebrowser.utils import usertypes
from qutebrowser.keyinput import keyutils
diff --git a/tests/unit/keyinput/test_modeparsers.py b/tests/unit/keyinput/test_modeparsers.py
index ff3758362..93f3b6df2 100644
--- a/tests/unit/keyinput/test_modeparsers.py
+++ b/tests/unit/keyinput/test_modeparsers.py
@@ -19,8 +19,8 @@
"""Tests for mode parsers."""
-from PyQt5.QtCore import Qt
-from PyQt5.QtGui import QKeySequence
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtGui import QKeySequence
import pytest
diff --git a/tests/unit/mainwindow/statusbar/test_textbase.py b/tests/unit/mainwindow/statusbar/test_textbase.py
index 33c4ffd76..015d53394 100644
--- a/tests/unit/mainwindow/statusbar/test_textbase.py
+++ b/tests/unit/mainwindow/statusbar/test_textbase.py
@@ -19,7 +19,7 @@
"""Test TextBase widget."""
-from PyQt5.QtCore import Qt
+from qutebrowser.qt.QtCore import Qt
import pytest
from qutebrowser.mainwindow.statusbar.textbase import TextBase
diff --git a/tests/unit/mainwindow/statusbar/test_url.py b/tests/unit/mainwindow/statusbar/test_url.py
index efe4d6f93..75b79868b 100644
--- a/tests/unit/mainwindow/statusbar/test_url.py
+++ b/tests/unit/mainwindow/statusbar/test_url.py
@@ -22,7 +22,7 @@
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import usertypes, urlutils
from qutebrowser.mainwindow.statusbar import url
diff --git a/tests/unit/mainwindow/test_messageview.py b/tests/unit/mainwindow/test_messageview.py
index 9e7627635..5e0afe4ca 100644
--- a/tests/unit/mainwindow/test_messageview.py
+++ b/tests/unit/mainwindow/test_messageview.py
@@ -18,7 +18,7 @@
# along with qutebrowser. If not, see <https://www.gnu.org/licenses/>.
import pytest
-from PyQt5.QtCore import Qt
+from qutebrowser.qt.QtCore import Qt
from qutebrowser.mainwindow import messageview
from qutebrowser.utils import usertypes
diff --git a/tests/unit/mainwindow/test_prompt.py b/tests/unit/mainwindow/test_prompt.py
index 3218959a5..c6268506c 100644
--- a/tests/unit/mainwindow/test_prompt.py
+++ b/tests/unit/mainwindow/test_prompt.py
@@ -20,7 +20,7 @@
import os
import pytest
-from PyQt5.QtCore import Qt
+from qutebrowser.qt.QtCore import Qt
from qutebrowser.mainwindow import prompt as promptmod
from qutebrowser.utils import usertypes
diff --git a/tests/unit/mainwindow/test_tabwidget.py b/tests/unit/mainwindow/test_tabwidget.py
index 564ca1b38..bec5cb30d 100644
--- a/tests/unit/mainwindow/test_tabwidget.py
+++ b/tests/unit/mainwindow/test_tabwidget.py
@@ -23,7 +23,7 @@
import functools
import pytest
-from PyQt5.QtGui import QIcon, QPixmap
+from qutebrowser.qt.QtGui import QIcon, QPixmap
from qutebrowser.mainwindow import tabwidget
from qutebrowser.utils import usertypes
diff --git a/tests/unit/misc/test_autoupdate.py b/tests/unit/misc/test_autoupdate.py
index f7cf78248..ae02919db 100644
--- a/tests/unit/misc/test_autoupdate.py
+++ b/tests/unit/misc/test_autoupdate.py
@@ -21,7 +21,7 @@
"""Tests for qutebrowser.misc.autoupdate."""
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.misc import autoupdate, httpclient
diff --git a/tests/unit/misc/test_editor.py b/tests/unit/misc/test_editor.py
index 91bdce26b..382264235 100644
--- a/tests/unit/misc/test_editor.py
+++ b/tests/unit/misc/test_editor.py
@@ -26,7 +26,7 @@ import os
import logging
import pytest
-from PyQt5.QtCore import QProcess
+from qutebrowser.qt.QtCore import QProcess
from qutebrowser.misc import editor as editormod
from qutebrowser.utils import usertypes
diff --git a/tests/unit/misc/test_guiprocess.py b/tests/unit/misc/test_guiprocess.py
index aaff5154e..a141fd7e5 100644
--- a/tests/unit/misc/test_guiprocess.py
+++ b/tests/unit/misc/test_guiprocess.py
@@ -23,7 +23,7 @@ import sys
import logging
import pytest
-from PyQt5.QtCore import QProcess, QUrl
+from qutebrowser.qt.QtCore import QProcess, QUrl
from qutebrowser.misc import guiprocess
from qutebrowser.utils import usertypes, utils, version
diff --git a/tests/unit/misc/test_ipc.py b/tests/unit/misc/test_ipc.py
index 51d7c6343..50bf28cb6 100644
--- a/tests/unit/misc/test_ipc.py
+++ b/tests/unit/misc/test_ipc.py
@@ -30,9 +30,9 @@ from unittest import mock
from typing import Optional, List
import pytest
-from PyQt5.QtCore import pyqtSignal, QObject
-from PyQt5.QtNetwork import QLocalServer, QLocalSocket, QAbstractSocket
-from PyQt5.QtTest import QSignalSpy
+from qutebrowser.qt.QtCore import pyqtSignal, QObject
+from qutebrowser.qt.QtNetwork import QLocalServer, QLocalSocket, QAbstractSocket
+from qutebrowser.qt.QtTest import QSignalSpy
import qutebrowser
from qutebrowser.misc import ipc
diff --git a/tests/unit/misc/test_miscwidgets.py b/tests/unit/misc/test_miscwidgets.py
index 3c5c1eef1..f0779399b 100644
--- a/tests/unit/misc/test_miscwidgets.py
+++ b/tests/unit/misc/test_miscwidgets.py
@@ -19,8 +19,8 @@
import logging
-from PyQt5.QtCore import Qt, QSize
-from PyQt5.QtWidgets import QWidget
+from qutebrowser.qt.QtCore import Qt, QSize
+from qutebrowser.qt.QtWidgets import QWidget
import pytest
from qutebrowser.misc import miscwidgets
diff --git a/tests/unit/misc/test_msgbox.py b/tests/unit/misc/test_msgbox.py
index c5c23639a..ae27cd364 100644
--- a/tests/unit/misc/test_msgbox.py
+++ b/tests/unit/misc/test_msgbox.py
@@ -20,8 +20,8 @@
import pytest
-from PyQt5.QtCore import Qt
-from PyQt5.QtWidgets import QMessageBox, QWidget
+from qutebrowser.qt.QtCore import Qt
+from qutebrowser.qt.QtWidgets import QMessageBox, QWidget
from qutebrowser.misc import msgbox
from qutebrowser.utils import utils
diff --git a/tests/unit/misc/test_pastebin.py b/tests/unit/misc/test_pastebin.py
index 7a47e723c..b9037a463 100644
--- a/tests/unit/misc/test_pastebin.py
+++ b/tests/unit/misc/test_pastebin.py
@@ -19,7 +19,7 @@
# along with qutebrowser. If not, see <https://www.gnu.org/licenses/>.
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.misc import httpclient, pastebin
diff --git a/tests/unit/misc/test_sessions.py b/tests/unit/misc/test_sessions.py
index f77982e5f..bbdf77b59 100644
--- a/tests/unit/misc/test_sessions.py
+++ b/tests/unit/misc/test_sessions.py
@@ -23,7 +23,7 @@ import logging
import pytest
import yaml
-from PyQt5.QtCore import QUrl, QPoint, QByteArray, QObject
+from qutebrowser.qt.QtCore import QUrl, QPoint, QByteArray, QObject
QWebView = pytest.importorskip('PyQt5.QtWebKitWidgets').QWebView
from qutebrowser.misc import sessions
diff --git a/tests/unit/misc/test_sql.py b/tests/unit/misc/test_sql.py
index 80ab7513c..69e14bbc4 100644
--- a/tests/unit/misc/test_sql.py
+++ b/tests/unit/misc/test_sql.py
@@ -23,7 +23,7 @@ import pytest
import hypothesis
from hypothesis import strategies
-from PyQt5.QtSql import QSqlDatabase, QSqlError, QSqlQuery
+from qutebrowser.qt.QtSql import QSqlDatabase, QSqlError, QSqlQuery
from qutebrowser.misc import sql
diff --git a/tests/unit/misc/test_throttle.py b/tests/unit/misc/test_throttle.py
index 33e9949f2..0105eb0cc 100644
--- a/tests/unit/misc/test_throttle.py
+++ b/tests/unit/misc/test_throttle.py
@@ -23,7 +23,7 @@ from unittest import mock
import sip
import pytest
-from PyQt5.QtCore import QObject
+from qutebrowser.qt.QtCore import QObject
from helpers import testutils
from qutebrowser.misc import throttle
diff --git a/tests/unit/misc/test_utilcmds.py b/tests/unit/misc/test_utilcmds.py
index 76bc015d2..5534b6379 100644
--- a/tests/unit/misc/test_utilcmds.py
+++ b/tests/unit/misc/test_utilcmds.py
@@ -20,7 +20,7 @@
"""Tests for qutebrowser.misc.utilcmds."""
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.misc import utilcmds
from qutebrowser.api import cmdutils
diff --git a/tests/unit/test_app.py b/tests/unit/test_app.py
index e359f2136..4edf93ef4 100644
--- a/tests/unit/test_app.py
+++ b/tests/unit/test_app.py
@@ -19,7 +19,7 @@
"""Tests for the qutebrowser.app module."""
-from PyQt5.QtCore import QBuffer
+from qutebrowser.qt.QtCore import QBuffer
from qutebrowser.misc import objects
from qutebrowser import app
diff --git a/tests/unit/utils/test_debug.py b/tests/unit/utils/test_debug.py
index 62d0f4a7b..236ac4cf5 100644
--- a/tests/unit/utils/test_debug.py
+++ b/tests/unit/utils/test_debug.py
@@ -25,8 +25,8 @@ import time
import textwrap
import pytest
-from PyQt5.QtCore import pyqtSignal, Qt, QEvent, QObject, QTimer
-from PyQt5.QtWidgets import QStyle, QFrame, QSpinBox
+from qutebrowser.qt.QtCore import pyqtSignal, Qt, QEvent, QObject, QTimer
+from qutebrowser.qt.QtWidgets import QStyle, QFrame, QSpinBox
from qutebrowser.utils import debug
from qutebrowser.misc import objects
diff --git a/tests/unit/utils/test_error.py b/tests/unit/utils/test_error.py
index b59a7150b..682926af8 100644
--- a/tests/unit/utils/test_error.py
+++ b/tests/unit/utils/test_error.py
@@ -21,8 +21,8 @@
import logging
import pytest
-from PyQt5.QtCore import QTimer
-from PyQt5.QtWidgets import QMessageBox
+from qutebrowser.qt.QtCore import QTimer
+from qutebrowser.qt.QtWidgets import QMessageBox
from qutebrowser.utils import error, utils
from qutebrowser.misc import ipc
diff --git a/tests/unit/utils/test_jinja.py b/tests/unit/utils/test_jinja.py
index 85be8a6e3..e01445b8c 100644
--- a/tests/unit/utils/test_jinja.py
+++ b/tests/unit/utils/test_jinja.py
@@ -24,7 +24,7 @@ import logging
import jinja2.exceptions
import pytest
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import jinja
from qutebrowser.config import configexc
diff --git a/tests/unit/utils/test_log.py b/tests/unit/utils/test_log.py
index bbc6b02db..a4fd22f4f 100644
--- a/tests/unit/utils/test_log.py
+++ b/tests/unit/utils/test_log.py
@@ -28,7 +28,7 @@ import dataclasses
import pytest
import _pytest.logging # pylint: disable=import-private-name
-from PyQt5 import QtCore
+from qutebrowser.qt import QtCore
from qutebrowser import qutebrowser
from qutebrowser.utils import log
diff --git a/tests/unit/utils/test_qtutils.py b/tests/unit/utils/test_qtutils.py
index ad9adf032..363717bf7 100644
--- a/tests/unit/utils/test_qtutils.py
+++ b/tests/unit/utils/test_qtutils.py
@@ -28,9 +28,9 @@ import unittest
import unittest.mock
import pytest
-from PyQt5.QtCore import (QDataStream, QPoint, QUrl, QByteArray, QIODevice,
+from qutebrowser.qt.QtCore import (QDataStream, QPoint, QUrl, QByteArray, QIODevice,
QTimer, QBuffer, QFile, QProcess, QFileDevice)
-from PyQt5.QtGui import QColor
+from qutebrowser.qt.QtGui import QColor
from qutebrowser.utils import qtutils, utils, usertypes
import overflow_test_cases
diff --git a/tests/unit/utils/test_standarddir.py b/tests/unit/utils/test_standarddir.py
index 0ca635ae2..27f095d62 100644
--- a/tests/unit/utils/test_standarddir.py
+++ b/tests/unit/utils/test_standarddir.py
@@ -28,7 +28,7 @@ import textwrap
import logging
import subprocess
-from PyQt5.QtCore import QStandardPaths
+from qutebrowser.qt.QtCore import QStandardPaths
import pytest
from qutebrowser.utils import standarddir, utils, qtutils, version
@@ -471,7 +471,7 @@ def test_no_qapplication(qapp, tmpdir, monkeypatch):
sys.path = sys.argv[1:] # make sure we have the same python path
- from PyQt5.QtWidgets import QApplication
+ from qutebrowser.qt.QtWidgets import QApplication
from qutebrowser.utils import standarddir
assert QApplication.instance() is None
diff --git a/tests/unit/utils/test_urlmatch.py b/tests/unit/utils/test_urlmatch.py
index caf52c76d..852814174 100644
--- a/tests/unit/utils/test_urlmatch.py
+++ b/tests/unit/utils/test_urlmatch.py
@@ -33,7 +33,7 @@ import string
import pytest
import hypothesis
import hypothesis.strategies as hst
-from PyQt5.QtCore import QUrl
+from qutebrowser.qt.QtCore import QUrl
from qutebrowser.utils import urlmatch
diff --git a/tests/unit/utils/test_urlutils.py b/tests/unit/utils/test_urlutils.py
index e5773e25e..1bec291d8 100644
--- a/tests/unit/utils/test_urlutils.py
+++ b/tests/unit/utils/test_urlutils.py
@@ -24,8 +24,8 @@ import logging
import dataclasses
import urllib.parse
-from PyQt5.QtCore import QUrl
-from PyQt5.QtNetwork import QNetworkProxy
+from qutebrowser.qt.QtCore import QUrl
+from qutebrowser.qt.QtNetwork import QNetworkProxy
import pytest
import hypothesis
import hypothesis.strategies
diff --git a/tests/unit/utils/test_utils.py b/tests/unit/utils/test_utils.py
index 4620c2198..51bab2567 100644
--- a/tests/unit/utils/test_utils.py
+++ b/tests/unit/utils/test_utils.py
@@ -30,8 +30,8 @@ import shlex
import math
import operator
-from PyQt5.QtCore import QUrl, QRect
-from PyQt5.QtGui import QClipboard
+from qutebrowser.qt.QtCore import QUrl, QRect
+from qutebrowser.qt.QtGui import QClipboard
import pytest
import hypothesis
from hypothesis import strategies
diff --git a/tests/unit/utils/test_version.py b/tests/unit/utils/test_version.py
index 7b616d8b7..5db536494 100644
--- a/tests/unit/utils/test_version.py
+++ b/tests/unit/utils/test_version.py
@@ -33,7 +33,7 @@ import dataclasses
import pytest
import hypothesis
import hypothesis.strategies
-from PyQt5.QtCore import PYQT_VERSION_STR
+from qutebrowser.qt.QtCore import PYQT_VERSION_STR
import qutebrowser
from qutebrowser.config import config, websettings
@@ -1008,7 +1008,7 @@ class TestWebEngineVersions:
pytest.skip("dev version of PyQt5")
try:
- from PyQt5.QtWebEngine import (
+ from qutebrowser.qt.QtWebEngine import (
PYQT_WEBENGINE_VERSION_STR, PYQT_WEBENGINE_VERSION)
except ImportError as e:
# QtWebKit or QtWebEngine < 5.13
diff --git a/tests/unit/utils/usertypes/test_timer.py b/tests/unit/utils/usertypes/test_timer.py
index 4dc85b06f..d38414dbd 100644
--- a/tests/unit/utils/usertypes/test_timer.py
+++ b/tests/unit/utils/usertypes/test_timer.py
@@ -20,7 +20,7 @@
"""Tests for Timer."""
import pytest
-from PyQt5.QtCore import QObject
+from qutebrowser.qt.QtCore import QObject
from qutebrowser.utils import usertypes