summaryrefslogtreecommitdiff
path: root/qutebrowser/config/qtargs.py
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-11-23 18:10:02 +0100
committerFlorian Bruhin <me@the-compiler.org>2020-11-23 19:57:20 +0100
commit63a0803b67344f90f40171f35948dc299d2db826 (patch)
tree3b1b5bff7abd4527a7a590002bcb80a16d517e68 /qutebrowser/config/qtargs.py
parent451d912bc76fffa5478ce051fa89e101438170e0 (diff)
downloadqutebrowser-63a0803b67344f90f40171f35948dc299d2db826.tar.gz
qutebrowser-63a0803b67344f90f40171f35948dc299d2db826.zip
Fix content.headers.referer = 'same-domain' with Qt 5.14+
Fixes #5892 (together with the next commit for 'never')
Diffstat (limited to 'qutebrowser/config/qtargs.py')
-rw-r--r--qutebrowser/config/qtargs.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/qutebrowser/config/qtargs.py b/qutebrowser/config/qtargs.py
index 0550b1c7f..6786d7973 100644
--- a/qutebrowser/config/qtargs.py
+++ b/qutebrowser/config/qtargs.py
@@ -109,6 +109,16 @@ def _qtwebengine_enabled_features(feature_flags: Sequence[str]) -> Iterator[str]
if config.val.scrolling.bar == 'overlay':
yield 'OverlayScrollbar'
+ if (qtutils.version_check('5.14', compiled=False) and
+ config.val.content.headers.referer == 'same-domain'):
+ # Handling of reduced-referrer-granularity in Chromium 76+
+ # https://chromium-review.googlesource.com/c/chromium/src/+/1572699
+ #
+ # Note that this is removed entirely (and apparently the default) starting with
+ # Chromium 89 (Qt 5.15.x or 6.x):
+ # https://chromium-review.googlesource.com/c/chromium/src/+/2545444
+ yield 'ReducedReferrerGranularity'
+
def _qtwebengine_args(
namespace: argparse.Namespace,
@@ -192,15 +202,19 @@ def _qtwebengine_settings_args() -> Iterator[str]:
'content.headers.referer': {
'always': None,
'never': '--no-referrers',
- 'same-domain': '--reduced-referrer-granularity',
}
}
+ referrer_setting = settings['content.headers.referer']
if qtutils.version_check('5.14', compiled=False):
settings['colors.webpage.prefers_color_scheme_dark'] = {
True: '--force-dark-mode',
False: None,
}
+ # Starting with Qt 5.14, this is handled via --enable-features
+ referrer_setting['same-domain'] = None
+ else:
+ referrer_setting['same-domain'] = '--reduced-referrer-granularity'
for setting, args in sorted(settings.items()):
arg = args[config.instance.get(setting)]