summaryrefslogtreecommitdiff
path: root/qutebrowser/config/qtargs.py
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-11-23 19:20:29 +0100
committerFlorian Bruhin <me@the-compiler.org>2020-11-23 19:57:20 +0100
commit120f8ce1d48cee39b785b9e74cb541652a2ca26d (patch)
treed49cabfe5a6a5badf25603bcb99a5d175723e96b /qutebrowser/config/qtargs.py
parent63a0803b67344f90f40171f35948dc299d2db826 (diff)
downloadqutebrowser-120f8ce1d48cee39b785b9e74cb541652a2ca26d.tar.gz
qutebrowser-120f8ce1d48cee39b785b9e74cb541652a2ca26d.zip
Fix content.headers.referer = 'never' with Qt 5.15
The --no-referrers flag was removed in Chromium 79: https://chromium-review.googlesource.com/c/chromium/src/+/1808144 We now instead use the request interceptor to remove the referrer, which is possible ever since Qt 5.12.4 and 5.13.1 and something we've wanted to do anyways, see #4793. The setting is still marked as "requires a restart" (and it doesn't support URL patterns) because that's partially true: The `same-domain` value is still handled via CLI arguments. Fixes #5892 (together with the last commit for 'same-domain')
Diffstat (limited to 'qutebrowser/config/qtargs.py')
-rw-r--r--qutebrowser/config/qtargs.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/qutebrowser/config/qtargs.py b/qutebrowser/config/qtargs.py
index 6786d7973..7b66c6d92 100644
--- a/qutebrowser/config/qtargs.py
+++ b/qutebrowser/config/qtargs.py
@@ -201,7 +201,6 @@ def _qtwebengine_settings_args() -> Iterator[str]:
},
'content.headers.referer': {
'always': None,
- 'never': '--no-referrers',
}
}
@@ -216,6 +215,13 @@ def _qtwebengine_settings_args() -> Iterator[str]:
else:
referrer_setting['same-domain'] = '--reduced-referrer-granularity'
+ can_override_referer = (
+ qtutils.version_check('5.12.4', compiled=False) and
+ not qtutils.version_check('5.13.0', compiled=False, exact=True)
+ )
+ # WORKAROUND for https://bugreports.qt.io/browse/QTBUG-60203
+ referrer_setting['never'] = None if can_override_referer else '--no-referrers'
+
for setting, args in sorted(settings.items()):
arg = args[config.instance.get(setting)]
if arg is not None: