aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/libraries/qt-5/5.14/qtbase.patch.d/0006-qtbase-gtk3.patch
blob: 6ce0e5d0c433c8f5b833cd7938a2fde1788c9232 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
From 1ad04525cdd342e3c8a750323fb3a61b93fee753 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Tue, 17 Sep 2019 05:35:33 -0500
Subject: [PATCH 06/10] qtbase-gtk3

---
 src/plugins/platformthemes/gtk3/main.cpp | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/plugins/platformthemes/gtk3/main.cpp b/src/plugins/platformthemes/gtk3/main.cpp
index fb1c425d8e..bb8bab9795 100644
--- a/src/plugins/platformthemes/gtk3/main.cpp
+++ b/src/plugins/platformthemes/gtk3/main.cpp
@@ -39,6 +39,7 @@
 
 #include <qpa/qplatformthemeplugin.h>
 #include "qgtk3theme.h"
+#include <QFile>
 
 QT_BEGIN_NAMESPACE
 
@@ -54,8 +55,22 @@ public:
 QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList &params)
 {
     Q_UNUSED(params);
-    if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive))
+    if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) {
+
+#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS
+        QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':');
+        XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS);
+        qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':')));
+#endif
+
+#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES
+        QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':');
+        GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES);
+        qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':')));
+#endif
+
         return new QGtk3Theme;
+    }
 
     return 0;
 }
-- 
2.25.1