From 6770a474c4801e7f9305903e49e650225ce971a1 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Thu, 28 Sep 2017 09:52:56 +0200 Subject: [PATCH] Force software rendering earlier We need to do this before a QApplication exists --- qutebrowser/config/configinit.py | 4 ++++ qutebrowser/misc/backendproblem.py | 7 +------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/qutebrowser/config/configinit.py b/qutebrowser/config/configinit.py index a046395c3..6b4553626 100644 --- a/qutebrowser/config/configinit.py +++ b/qutebrowser/config/configinit.py @@ -70,6 +70,10 @@ def early_init(args): objects.backend = get_backend(args) + if (objects.backend == usertypes.Backend.QtWebEngine and + config.val.force_software_rendering): + os.environ['QT_XCB_FORCE_SOFTWARE_OPENGL'] = '1' + def get_backend(args): """Find out what backend to use based on available libraries.""" diff --git a/qutebrowser/misc/backendproblem.py b/qutebrowser/misc/backendproblem.py index 6bc10ba79..3cd9e5abd 100644 --- a/qutebrowser/misc/backendproblem.py +++ b/qutebrowser/misc/backendproblem.py @@ -139,17 +139,12 @@ def _show_dialog(*args, **kwargs): def _handle_nouveau_graphics(): assert objects.backend == usertypes.Backend.QtWebEngine, objects.backend - force_sw_var = 'QT_XCB_FORCE_SOFTWARE_OPENGL' if version.opengl_vendor() != 'nouveau': return if (os.environ.get('LIBGL_ALWAYS_SOFTWARE') == '1' or - force_sw_var in os.environ): - return - - if config.val.force_software_rendering: - os.environ[force_sw_var] = '1' + 'QT_XCB_FORCE_SOFTWARE_OPENGL' in os.environ): return button = _Button("Force software rendering", 'force_software_rendering',