summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2021-01-16 15:01:19 +0100
committerFlorian Bruhin <me@the-compiler.org>2021-01-16 15:01:19 +0100
commitb461c827a308d374d726e131f31dccbe6396107b (patch)
tree118252845d7fe51ed72fd87c3da3236dd39e335a
parenta9aab400082f8963d1d4273119d31736f3d576d5 (diff)
downloadqutebrowser-b461c827a308d374d726e131f31dccbe6396107b.tar.gz
qutebrowser-b461c827a308d374d726e131f31dccbe6396107b.zip
webenginetab: Use self._inject_js for quirks
This ensures they have names like "_qute_quirk_whatsapp", rather than just "whatsapp".
-rw-r--r--qutebrowser/browser/webengine/webenginetab.py16
1 files changed, 7 insertions, 9 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py
index bbff1ed91..57702c46e 100644
--- a/qutebrowser/browser/webengine/webenginetab.py
+++ b/qutebrowser/browser/webengine/webenginetab.py
@@ -1002,10 +1002,11 @@ class _WebEngineScripts(QObject):
def _inject_js(self, name, js_code, *,
world=QWebEngineScript.ApplicationWorld,
+ injection_point=QWebEngineScript.DocumentCreation,
subframes=False):
"""Inject the given script to run early on a page load."""
script = QWebEngineScript()
- script.setInjectionPoint(QWebEngineScript.DocumentCreation)
+ script.setInjectionPoint(injection_point)
script.setSourceCode(js_code)
script.setWorldId(world)
script.setRunsOnSubFrames(subframes)
@@ -1137,7 +1138,6 @@ class _WebEngineScripts(QObject):
if not config.val.content.site_specific_quirks:
return
- page_scripts = self._widget.page().scripts()
quirks = [
(
'whatsapp_web',
@@ -1154,13 +1154,11 @@ class _WebEngineScripts(QObject):
QWebEngineScript.MainWorld))
for filename, injection_point, world in quirks:
- script = QWebEngineScript()
- script.setName(filename)
- script.setWorldId(world)
- script.setInjectionPoint(injection_point)
- src = utils.read_file("javascript/quirks/{}.user.js".format(filename))
- script.setSourceCode(src)
- page_scripts.insert(script)
+ src = utils.read_file(f'javascript/quirks/{filename}.user.js')
+ self._inject_js(
+ f'quirk_{filename}', src,
+ world=world, injection_point=injection_point
+ )
class WebEngineTabPrivate(browsertab.AbstractTabPrivate):