diff options
Diffstat (limited to 'dev-qt/qtwayland/files/qtwayland-6.6.2-nvidia-threaded-gl.patch')
-rw-r--r-- | dev-qt/qtwayland/files/qtwayland-6.6.2-nvidia-threaded-gl.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/dev-qt/qtwayland/files/qtwayland-6.6.2-nvidia-threaded-gl.patch b/dev-qt/qtwayland/files/qtwayland-6.6.2-nvidia-threaded-gl.patch new file mode 100644 index 000000000000..f7f7607024c5 --- /dev/null +++ b/dev-qt/qtwayland/files/qtwayland-6.6.2-nvidia-threaded-gl.patch @@ -0,0 +1,30 @@ +Backport from 6.6 branch which failed to make it in 6.6.2. + +https://bugreports.qt.io/browse/QTBUG-95817 +https://codereview.qt-project.org/c/qt/qtwayland/+/536732 +https://github.com/qt/qtwayland/commit/e4156bad6398dcbe8740041148d95ee9ed437d8b +From: David Redondo <qt@david-redondo.de> +Date: Wed, 31 Jan 2024 09:01:48 +0100 +Subject: [PATCH] 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. +--- 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 |