forked from mirrors/nixpkgs
22 lines
1 KiB
Diff
22 lines
1 KiB
Diff
diff --git a/kded/gtkconfig.cpp b/kded/gtkconfig.cpp
|
|
index 5303636..199c4d5 100644
|
|
--- a/kded/gtkconfig.cpp
|
|
+++ b/kded/gtkconfig.cpp
|
|
@@ -41,6 +41,16 @@ GtkConfig::GtkConfig(QObject *parent, const QVariantList&) :
|
|
kdeglobalsConfigWatcher(KConfigWatcher::create(KSharedConfig::openConfig(QStringLiteral("kdeglobals")))),
|
|
kwinConfigWatcher(KConfigWatcher::create(KSharedConfig::openConfig(QStringLiteral("kwinrc"))))
|
|
{
|
|
+ // Add GSETTINGS_SCHEMAS_PATH to the front of XDG_DATA_DIRS.
|
|
+ // Normally this would be done by wrapGAppsHook, but this plugin
|
|
+ // (shared object) cannot be wrapped.
|
|
+ QByteArray xdgdata = qgetenv("XDG_DATA_DIRS");
|
|
+ if (!xdgdata.isEmpty()) {
|
|
+ xdgdata.push_front(":");
|
|
+ }
|
|
+ xdgdata.push_front(QByteArray(GSETTINGS_SCHEMAS_PATH));
|
|
+ qputenv("XDG_DATA_DIRS", xdgdata);
|
|
+
|
|
QDBusConnection dbus = QDBusConnection::sessionBus();
|
|
dbus.registerService(QStringLiteral("org.kde.GtkConfig"));
|
|
dbus.registerObject(QStringLiteral("/GtkConfig"), this, QDBusConnection::ExportScriptableSlots);
|