summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-03-24 19:12:50 +0100
committerFlorian Bruhin <me@the-compiler.org>2020-04-03 14:37:25 +0200
commit967ae24b20f787cd123175cfe94f1728a632a48e (patch)
tree13c8f3025e311c423409470bd52518e02dd1f071
parent7f70988ad745adecc0c8b5a137e51250d3228c9f (diff)
downloadqutebrowser-967ae24b20f787cd123175cfe94f1728a632a48e.tar.gz
qutebrowser-967ae24b20f787cd123175cfe94f1728a632a48e.zip
Move WhatsApp quirk to separate file
(cherry picked from commit 4329328b2772e95952d6eefdaaee5784a36ddd98)
-rw-r--r--qutebrowser/browser/webengine/webenginetab.py29
-rw-r--r--qutebrowser/javascript/whatsapp_web_quirk.user.js14
2 files changed, 24 insertions, 19 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py
index 970ef6d45..ad8ef3b03 100644
--- a/qutebrowser/browser/webengine/webenginetab.py
+++ b/qutebrowser/browser/webengine/webenginetab.py
@@ -1104,25 +1104,16 @@ class _WebEngineScripts(QObject):
if not config.val.content.site_specific_quirks:
return
- # WhatsApp Web, based on:
- # https://github.com/jiahaog/nativefier/issues/719#issuecomment-443809630
- script = QWebEngineScript()
- script.setName('quirk-whatsapp')
- script.setWorldId(QWebEngineScript.ApplicationWorld)
- script.setInjectionPoint(QWebEngineScript.DocumentReady)
- script.setSourceCode(textwrap.dedent(r"""
- // ==UserScript==
- // @include https://web.whatsapp.com/
- // ==/UserScript==
- if (document.body.innerText.replace(/\n/g, ' ').search(
- /whatsapp works with.*to use whatsapp.*update/i) !== -1) {
- navigator.serviceWorker.getRegistration().then(function (r) {
- r.unregister();
- document.location.reload();
- });
- }
- """))
- self._widget.page().scripts().insert(script)
+ page_scripts = self._widget.page().scripts()
+
+ for filename in ['whatsapp_web_quirk']:
+ script = QWebEngineScript()
+ script.setName(filename)
+ script.setWorldId(QWebEngineScript.ApplicationWorld)
+ script.setInjectionPoint(QWebEngineScript.DocumentReady)
+ src = utils.read_file("javascript/{}.user.js".format(filename))
+ script.setSourceCode(src)
+ page_scripts.insert(script)
class WebEngineTabPrivate(browsertab.AbstractTabPrivate):
diff --git a/qutebrowser/javascript/whatsapp_web_quirk.user.js b/qutebrowser/javascript/whatsapp_web_quirk.user.js
new file mode 100644
index 000000000..78cec54f8
--- /dev/null
+++ b/qutebrowser/javascript/whatsapp_web_quirk.user.js
@@ -0,0 +1,14 @@
+// ==UserScript==
+// @include https://web.whatsapp.com/
+// ==/UserScript==
+
+// Quirk for WhatsApp Web, based on:
+// https://github.com/jiahaog/nativefier/issues/719#issuecomment-443809630
+
+if (document.body.innerText.replace(/\n/g, ' ').search(
+ /whatsapp works with.*to use whatsapp.*update/i) !== -1) {
+ navigator.serviceWorker.getRegistration().then(function (r) {
+ r.unregister();
+ document.location.reload();
+ });
+}