From 728b4498915a83636e753eebcd513202319ad973 Mon Sep 17 00:00:00 2001 From: Alexander Lohnau Date: Tue, 21 Dec 2021 15:39:09 +0100 Subject: [PATCH] Effectsmodel: Load KCM by path instead of searching for plugin by id This way we do not need to embed json metadata in the plugins and can consequently drop the metadata files entirely. The resulting metadata object might still be invalid, however KCoreAddons can handle such cases. See https://phabricator.kde.org/T15094 regarding create better KCoreAddons API for such cases. --- src/kcmkwin/common/effectsmodel.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/kcmkwin/common/effectsmodel.cpp b/src/kcmkwin/common/effectsmodel.cpp index 839e1561ba..b846b27583 100644 --- a/src/kcmkwin/common/effectsmodel.cpp +++ b/src/kcmkwin/common/effectsmodel.cpp @@ -623,12 +623,11 @@ QModelIndex EffectsModel::findByPluginId(const QString &pluginId) const static KCModule *loadBinaryConfig(const QString &configModule, QObject *parent) { - const KPluginMetaData metaData = KPluginMetaData::findPluginById(QStringLiteral("kwin/effects/configs/"), configModule); - - if (!metaData.isValid()) { + if (configModule.isEmpty()) { return nullptr; } + const KPluginMetaData metaData(QStringLiteral("kwin/effects/configs/") + configModule); return KPluginFactory::instantiatePlugin(metaData, parent).plugin; }