summaryrefslogtreecommitdiff
path: root/qutebrowser/browser/webengine/webenginequtescheme.py
diff options
context:
space:
mode:
Diffstat (limited to 'qutebrowser/browser/webengine/webenginequtescheme.py')
-rw-r--r--qutebrowser/browser/webengine/webenginequtescheme.py44
1 files changed, 20 insertions, 24 deletions
diff --git a/qutebrowser/browser/webengine/webenginequtescheme.py b/qutebrowser/browser/webengine/webenginequtescheme.py
index 64361f7c4..0a21d967f 100644
--- a/qutebrowser/browser/webengine/webenginequtescheme.py
+++ b/qutebrowser/browser/webengine/webenginequtescheme.py
@@ -19,23 +19,19 @@
"""QtWebEngine specific qute://* handlers and glue code."""
-from PyQt5.QtCore import QBuffer, QIODevice, QUrl
-from PyQt5.QtWebEngineCore import (QWebEngineUrlSchemeHandler,
- QWebEngineUrlRequestJob,
- QWebEngineUrlScheme)
-
from qutebrowser.browser import qutescheme
from qutebrowser.utils import log, qtutils
+from qutebrowser.qt import QtWebEngineCore, QtCore
-class QuteSchemeHandler(QWebEngineUrlSchemeHandler):
+class QuteSchemeHandler(QtWebEngineCore.QWebEngineUrlSchemeHandler):
"""Handle qute://* requests on QtWebEngine."""
def install(self, profile):
"""Install the handler for qute:// URLs on the given profile."""
- if QWebEngineUrlScheme is not None:
- assert QWebEngineUrlScheme.schemeByName(b'qute') is not None
+ if QtWebEngineCore.QWebEngineUrlScheme is not None:
+ assert QtWebEngineCore.QWebEngineUrlScheme.schemeByName(b'qute') is not None
profile.installUrlSchemeHandler(b'qute', self)
@@ -55,7 +51,7 @@ class QuteSchemeHandler(QWebEngineUrlSchemeHandler):
request_url = job.requestUrl()
# https://codereview.qt-project.org/#/c/234849/
- is_opaque = initiator == QUrl('null')
+ is_opaque = initiator == QtCore.QUrl('null')
target = request_url.scheme(), request_url.host()
if target == ('qute', 'testdata') and is_opaque:
@@ -67,7 +63,7 @@ class QuteSchemeHandler(QWebEngineUrlSchemeHandler):
log.network.warning("Blocking malicious request from {} to {}"
.format(initiator.toDisplayString(),
request_url.toDisplayString()))
- job.fail(QWebEngineUrlRequestJob.RequestDenied)
+ job.fail(QtWebEngineCore.QWebEngineUrlRequestJob.RequestDenied)
return False
return True
@@ -87,7 +83,7 @@ class QuteSchemeHandler(QWebEngineUrlSchemeHandler):
return
if job.requestMethod() != b'GET':
- job.fail(QWebEngineUrlRequestJob.RequestDenied)
+ job.fail(QtWebEngineCore.QWebEngineUrlRequestJob.RequestDenied)
return
assert url.scheme() == 'qute'
@@ -98,15 +94,15 @@ class QuteSchemeHandler(QWebEngineUrlSchemeHandler):
except qutescheme.Error as e:
errors = {
qutescheme.NotFoundError:
- QWebEngineUrlRequestJob.UrlNotFound,
+ QtWebEngineCore.QWebEngineUrlRequestJob.UrlNotFound,
qutescheme.UrlInvalidError:
- QWebEngineUrlRequestJob.UrlInvalid,
+ QtWebEngineCore.QWebEngineUrlRequestJob.UrlInvalid,
qutescheme.RequestDeniedError:
- QWebEngineUrlRequestJob.RequestDenied,
+ QtWebEngineCore.QWebEngineUrlRequestJob.RequestDenied,
qutescheme.SchemeOSError:
- QWebEngineUrlRequestJob.UrlNotFound,
+ QtWebEngineCore.QWebEngineUrlRequestJob.UrlNotFound,
qutescheme.Error:
- QWebEngineUrlRequestJob.RequestFailed,
+ QtWebEngineCore.QWebEngineUrlRequestJob.RequestFailed,
}
exctype = type(e)
log.network.error(f"{exctype.__name__} while handling qute://* URL: {e}")
@@ -120,8 +116,8 @@ class QuteSchemeHandler(QWebEngineUrlSchemeHandler):
# We can't just use the QBuffer constructor taking a QByteArray,
# because that somehow segfaults...
# https://www.riverbankcomputing.com/pipermail/pyqt/2016-September/038075.html
- buf = QBuffer(parent=self)
- buf.open(QIODevice.WriteOnly)
+ buf = QtCore.QBuffer(parent=self)
+ buf.open(QtCore.QIODevice.WriteOnly)
buf.write(data)
buf.seek(0)
buf.close()
@@ -134,10 +130,10 @@ def init():
Note this needs to be called early, before constructing any QtWebEngine
classes.
"""
- if QWebEngineUrlScheme is not None:
- assert not QWebEngineUrlScheme.schemeByName(b'qute').name()
- scheme = QWebEngineUrlScheme(b'qute')
+ if QtWebEngineCore.QWebEngineUrlScheme is not None:
+ assert not QtWebEngineCore.QWebEngineUrlScheme.schemeByName(b'qute').name()
+ scheme = QtWebEngineCore.QWebEngineUrlScheme(b'qute')
scheme.setFlags(
- QWebEngineUrlScheme.LocalScheme | # type: ignore[arg-type]
- QWebEngineUrlScheme.LocalAccessAllowed)
- QWebEngineUrlScheme.registerScheme(scheme)
+ QtWebEngineCore.QWebEngineUrlScheme.LocalScheme | # type: ignore[arg-type]
+ QtWebEngineCore.QWebEngineUrlScheme.LocalAccessAllowed)
+ QtWebEngineCore.QWebEngineUrlScheme.registerScheme(scheme)