summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authortoofar <toofar@spalge.com>2023-09-23 17:10:54 +1200
committertoofar <toofar@spalge.com>2023-09-23 19:29:45 +1200
commit2e961080a85d660148937ee8f0f6b3445a8f2c01 (patch)
tree768ae2516d1563a552520321b5316ec6252828fa /doc
parent10cb81e81a3782b56ced3d00d7f5b912841b80a2 (diff)
downloadqutebrowser-2e961080a85d660148937ee8f0f6b3445a8f2c01.tar.gz
qutebrowser-2e961080a85d660148937ee8f0f6b3445a8f2c01.zip
Make accelerated 2d canvas setting tristate with auto
I would like to be able to disable this workound for new enough chromium versions (we still need to test that chrome 111 will be fixed, but we can always bump it up later). I also wanted to use the declarative mapping `_WEBENGINE_SETTINGS` instead of adding a new conditional in `_qtwebengine_args`, because that just seems nicer. So I changed `_WEBENGINE_SETTINGS` so that the value could also be a function. The idea is that the function returns on of the other values based on some feature detection. This also required passing down the args being used for feature detection in the calling method already. I feel like that dict is being a bit abused here and if the entries could be turned into objects with a bit more consistency it might be nice. But this isn't too bad, right? Had to change the `test_qt_args` test to be a superset test instead of exact match because the new `--disable-accelerated-2d-canvas` arg was showing up in the results based on whatever Qt version you happen to be running the tests on.
Diffstat (limited to 'doc')
-rw-r--r--doc/help/settings.asciidoc21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/help/settings.asciidoc b/doc/help/settings.asciidoc
index 9bae037f2..de42839ce 100644
--- a/doc/help/settings.asciidoc
+++ b/doc/help/settings.asciidoc
@@ -303,6 +303,7 @@
|<<qt.force_platformtheme,qt.force_platformtheme>>|Force a Qt platformtheme to use.
|<<qt.force_software_rendering,qt.force_software_rendering>>|Force software rendering for QtWebEngine.
|<<qt.highdpi,qt.highdpi>>|Turn on Qt HighDPI scaling.
+|<<qt.workarounds.disable_accelerated_2d_canvas,qt.workarounds.disable_accelerated_2d_canvas>>|Disable accelerated 2d canvas to avoid graphical glitches.
|<<qt.workarounds.locale,qt.workarounds.locale>>|Work around locale parsing issues in QtWebEngine 5.15.3.
|<<qt.workarounds.remove_service_workers,qt.workarounds.remove_service_workers>>|Delete the QtWebEngine Service Worker directory on every start.
|<<scrolling.bar,scrolling.bar>>|When/how to show the scrollbar.
@@ -4001,6 +4002,26 @@ Type: <<types,Bool>>
Default: +pass:[false]+
+[[qt.workarounds.disable_accelerated_2d_canvas]]
+=== qt.workarounds.disable_accelerated_2d_canvas
+Disable accelerated 2d canvas to avoid graphical glitches.
+On some setups graphical issues can occur on sites like Google sheets and PDF.js. These don't occur when accelerated 2d canvas is turned off, so we do that by default.
+So far these glitches only occur on some Intel graphics devices.
+
+This setting requires a restart.
+
+This setting is only available with the QtWebEngine backend.
+
+Type: <<types,String>>
+
+Valid values:
+
+ * +always+: Disable accelerated 2d canvas
+ * +auto+: Disable on Qt6 < 6.6.0, enable otherwise
+ * +never+: Enable accelerated 2d canvas
+
+Default: +pass:[auto]+
+
[[qt.workarounds.locale]]
=== qt.workarounds.locale
Work around locale parsing issues in QtWebEngine 5.15.3.