summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Redondo <qt@david-redondo.de>2024-01-31 09:01:48 +0100
committerDavid Redondo <qt@david-redondo.de>2024-02-01 11:44:54 +0100
commit6d83cf94b568fa9e591761a182cf84e3959fbf32 (patch)
tree3014c60975f177f623faab735d94d16ee6953296 /src
parent17e46725c5971a3067d5abd5506fde6c03d0935f (diff)
client: Disable threaded GL on desktop NVIDIA
Otherwise QtQuick windows freeze when resized. In order to still use threaded rendering on embedded platforms where resizing is not required we check if XDG_CURRENT_DESKTOP which should be set by desktop environments. Task-number: QTBUG-95817 Pick-to: 6.7 6.6 6.6.2 Change-Id: Ic2348c3169e0ade8c5463e3d7c7a1c45037a89a7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: David Edmundson <davidedmundson@kde.org>
Diffstat (limited to 'src')
-rw-r--r--src/hardwareintegration/client/wayland-egl/qwaylandeglclientbufferintegration.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandeglclientbufferintegration.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandeglclientbufferintegration.cpp
index cc7ee90ae..3b97aef20 100644
--- a/src/hardwareintegration/client/wayland-egl/qwaylandeglclientbufferintegration.cpp
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandeglclientbufferintegration.cpp
@@ -92,6 +92,13 @@ void QWaylandEglClientBufferIntegration::initialize(QWaylandDisplay *display)
break;
}
}
+
+ // On desktop NVIDIA resizing QtQuick freezes them when using threaded rendering QTBUG-95817
+ // In order to support threaded rendering on embedded platforms where resizing is not needed
+ // we check if XDG_CURRENT_DESKTOP is set which desktop environments should set
+ if (qstrcmp(vendor, "NVIDIA") == 0 && qEnvironmentVariableIsSet("XDG_CURRENT_DESKTOP")) {
+ m_supportsThreading = false;
+ }
}
bool QWaylandEglClientBufferIntegration::isValid() const