diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2023-09-14 15:56:08 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-09-19 04:59:26 +0000 |
commit | 1048b43ef946aba7cffe1f71f50cf55c4db9328d (patch) | |
tree | b1d3c6c05565517acba676218897f02afa6bebe8 | |
parent | 6378d98e01e882dc4738583bac122c3801647483 (diff) |
Sync rhi backingstore prefer-software env.var with Quick
Behaving differently in QQuickWindow vs. a QRhi-based widget
window is not great for WebEngine. The env.var naming is not
the best (QSG prefix) but we already have some precedent for
this (recognizing QSG_INFO in QRhi), and there is no other
choice anyway.
Task-number: QTBUG-116445
Change-Id: Ibfd495cbd1d42502441d6629325bdeb033e813f3
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
(cherry picked from commit ffb857e9d0745fdd31bca091333f1120c5857d7b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 69c0ca3174e2484a241dcfbeb786084eca3c57e5)
-rw-r--r-- | src/gui/painting/qbackingstorerhisupport.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gui/painting/qbackingstorerhisupport.cpp b/src/gui/painting/qbackingstorerhisupport.cpp index d811abf648..3927367af6 100644 --- a/src/gui/painting/qbackingstorerhisupport.cpp +++ b/src/gui/painting/qbackingstorerhisupport.cpp @@ -56,6 +56,11 @@ bool QBackingStoreRhiSupport::create() QOffscreenSurface *surface = nullptr; QRhi::Flags flags; + // This must be the same env.var. Qt Quick uses, to ensure symmetry in the + // behavior between a QQuickWindow and a (QRhi-based) widget top-level window. + if (qEnvironmentVariableIntValue("QSG_RHI_PREFER_SOFTWARE_RENDERER")) + flags |= QRhi::PreferSoftwareRenderer; + if (m_config.api() == QPlatformBackingStoreRhiConfig::Null) { QRhiNullInitParams params; rhi = QRhi::create(QRhi::Null, ¶ms, flags); |