QGenericUnixTheme: use QStandardPaths get the xdg data path
The corresponding interface is already provided in QStandardPaths. We should use QStandardPaths::GenericDataLocation instead of the environment variable XDG_DATA_DIRS. Change-Id: I0e89e8c86d629585ec7d9a12989f24335aa6e3ba Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: David Faure <david.faure@kdab.com>
This commit is contained in:
parent
2f4c658236
commit
c93670c5a0
@ -172,15 +172,9 @@ QStringList QGenericUnixTheme::xdgIconThemePaths()
|
||||
if (homeIconDir.isDir())
|
||||
paths.prepend(homeIconDir.absoluteFilePath());
|
||||
|
||||
QString xdgDirString = QFile::decodeName(qgetenv("XDG_DATA_DIRS"));
|
||||
if (xdgDirString.isEmpty())
|
||||
xdgDirString = QLatin1String("/usr/local/share/:/usr/share/");
|
||||
const auto xdgDirs = xdgDirString.splitRef(QLatin1Char(':'));
|
||||
for (const QStringRef &xdgDir : xdgDirs) {
|
||||
const QFileInfo xdgIconsDir(xdgDir + QLatin1String("/icons"));
|
||||
if (xdgIconsDir.isDir())
|
||||
paths.append(xdgIconsDir.absoluteFilePath());
|
||||
}
|
||||
paths.append(QStandardPaths::locateAll(QStandardPaths::GenericDataLocation,
|
||||
QStringLiteral("icons"),
|
||||
QStandardPaths::LocateDirectory));
|
||||
|
||||
return paths;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user