From 321878a35943af137e3ffee9f7e2235273e936ab Mon Sep 17 00:00:00 2001
From: Akira Ohgaki <akiraohgaki@gmail.com>
Date: Mon, 22 Aug 2016 18:31:20 +0900
Subject: [PATCH] Add method to get KDE data home path

---
 src/utility/file.cpp | 16 ++++++++++++++++
 src/utility/file.h   |  1 +
 2 files changed, 17 insertions(+)

diff --git a/src/utility/file.cpp b/src/utility/file.cpp
index 1ef3d41..854ed82 100644
--- a/src/utility/file.cpp
+++ b/src/utility/file.cpp
@@ -58,6 +58,22 @@ QString File::xdgCacheHomePath()
     return path;
 }
 
+/**
+ * KDE System Administration/Environment Variables
+ * https://userbase.kde.org/KDE_System_Administration/Environment_Variables
+ */
+
+QString File::kdeDataHomePath()
+{
+    // KDE 4
+    QString path = QString::fromLocal8Bit(qgetenv("KDEHOME").constData());
+    if (path.isEmpty()) {
+        path = homePath() + "/.kde";
+    }
+    path += "/share";
+    return path;
+}
+
 QFileInfoList File::readDir(const QString &path)
 {
     QDir dir(path);
diff --git a/src/utility/file.h b/src/utility/file.h
index 24edd09..0623580 100644
--- a/src/utility/file.h
+++ b/src/utility/file.h
@@ -21,6 +21,7 @@ public:
     static QString xdgDataHomePath();
     static QString xdgConfigHomePath();
     static QString xdgCacheHomePath();
+    static QString kdeDataHomePath();
     static QFileInfoList readDir(const QString &path);
     static bool makeDir(const QString &path);
     static QString readText(const QString &path);
-- 
GitLab