diff options
author | Florian Bruhin <me@the-compiler.org> | 2021-05-18 17:04:37 +0200 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2021-05-18 18:19:21 +0200 |
commit | 17c53063a091b754df0cc66c60f72c9dae262b7d (patch) | |
tree | a28910281f98b2526d7c03e3e6fadffb86407ff7 /qutebrowser/browser/webengine/webenginetab.py | |
parent | d79f6296ee88f8adcc548bf6ab0d0d8ebf0260d9 (diff) | |
download | qutebrowser-17c53063a091b754df0cc66c60f72c9dae262b7d.tar.gz qutebrowser-17c53063a091b754df0cc66c60f72c9dae262b7d.zip |
Add a new site-specific quirk for Google Docs
See #6464, #5472, #4805, #4810
e010afd3a20a86639396a9c844abfea7b23cc67a
https://bugreports.qt.io/browse/QTBUG-69652
(cherry picked from commit 8e617d010a5cd305ff42191ea6458a2d003b6d46)
Diffstat (limited to 'qutebrowser/browser/webengine/webenginetab.py')
-rw-r--r-- | qutebrowser/browser/webengine/webenginetab.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index 15784d6bf..c793a1929 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -983,6 +983,11 @@ class _Quirk: QWebEngineScript.DocumentCreation) world: QWebEngineScript.ScriptWorldId = QWebEngineScript.MainWorld predicate: bool = True + name: Optional[str] = None + + def __post_init__(self): + if self.name is None: + self.name = f"js-{self.filename.replace('_', '-')}" class _WebEngineScripts(QObject): @@ -1154,6 +1159,11 @@ class _WebEngineScripts(QObject): ), _Quirk('discord'), _Quirk( + 'googledocs', + # will be an UA quirk once we set the JS UA as well + name='ua-googledocs', + ), + _Quirk( 'string_replaceall', predicate=versions.webengine < utils.VersionNumber(5, 15, 3), ), @@ -1171,8 +1181,7 @@ class _WebEngineScripts(QObject): if not quirk.predicate: continue src = resources.read_file(f'javascript/quirks/{quirk.filename}.user.js') - name = f"js-{quirk.filename.replace('_', '-')}" - if name not in config.val.content.site_specific_quirks.skip: + if quirk.name not in config.val.content.site_specific_quirks.skip: self._inject_js( f'quirk_{quirk.filename}', src, |