kcms/desktoptheme: find metadata.json when loading ThemesModel

Before this commit ThemesModel only finds metadata.desktop, but after
KF5.94, the default theme metadata files have been ported to json format.

BUG: 453830
wilder-5.25
Fushan Wen 4 years ago
parent ad1a51c830
commit 10aa9bb8dc
No known key found for this signature in database
GPG Key ID: 2E48D1487C91DCAA
  1. 10
      kcms/desktoptheme/themesmodel.cpp

@ -155,7 +155,15 @@ void ThemesModel::load()
const QDir cd(ppath);
const QStringList &entries = cd.entryList(QDir::Dirs | QDir::Hidden | QDir::NoDotAndDotDot);
for (const QString &pack : entries) {
const QString _metadata = ppath + QLatin1Char('/') + pack + QStringLiteral("/metadata.desktop");
const QString prefix = QStringLiteral("%1%2%3%4metadata.").arg(ppath, QDir::separator(), pack, QDir::separator());
QString _metadata = QStringLiteral("%1json").arg(prefix);
if (QFile::exists(_metadata)) {
themes << _metadata;
continue;
}
_metadata = QStringLiteral("%1desktop").arg(prefix);
if (QFile::exists(_metadata)) {
themes << _metadata;
}

Loading…
Cancel
Save