From 478db0b4c78f57c8c71343e8401825f7253b6e63 Mon Sep 17 00:00:00 2001 From: Nicolas Fella Date: Mon, 29 Mar 2021 20:43:26 +0200 Subject: [PATCH] Use KPluginMetaData to list containments Instead of the half-deprecated KPluginInfo --- shell/containmentconfigview.cpp | 6 +++--- shell/scripting/appinterface.cpp | 8 +++---- shell/scripting/scriptengine.cpp | 6 +++--- shell/shellcorona.cpp | 36 ++++++++++++++++---------------- 4 files changed, 28 insertions(+), 28 deletions(-) diff --git a/shell/containmentconfigview.cpp b/shell/containmentconfigview.cpp index 5a24d710e..083dc4cac 100644 --- a/shell/containmentconfigview.cpp +++ b/shell/containmentconfigview.cpp @@ -152,9 +152,9 @@ PlasmaQuick::ConfigModel *ContainmentConfigView::containmentPluginsConfigModel() if (!m_containmentPluginsConfigModel) { m_containmentPluginsConfigModel = new PlasmaQuick::ConfigModel(this); - const KPluginInfo::List actions = Plasma::PluginLoader::self()->listContainmentsOfType(QStringLiteral("Desktop")); - for (const KPluginInfo &info : actions) { - m_containmentPluginsConfigModel->appendCategory(info.icon(), info.name(), QString(), info.pluginName()); + const QList actions = Plasma::PluginLoader::self()->listContainmentsMetaDataOfType(QStringLiteral("Desktop")); + for (const KPluginMetaData &plugin : actions) { + m_containmentPluginsConfigModel->appendCategory(plugin.iconName(), plugin.name(), QString(), plugin.pluginId()); } } return m_containmentPluginsConfigModel; diff --git a/shell/scripting/appinterface.cpp b/shell/scripting/appinterface.cpp index e387ee2e4..b190f7c3e 100644 --- a/shell/scripting/appinterface.cpp +++ b/shell/scripting/appinterface.cpp @@ -213,11 +213,11 @@ QStringList AppInterface::knownPanelTypes() const QStringList AppInterface::knownContainmentTypes(const QString &type) const { QStringList containments; - const KPluginInfo::List infoLs = Plasma::PluginLoader::listContainmentsOfType(type); + const QList plugins = Plasma::PluginLoader::listContainmentsMetaDataOfType(type); - containments.reserve(infoLs.count()); - for (const KPluginInfo &info : infoLs) { - containments.append(info.pluginName()); + containments.reserve(plugins.count()); + for (const KPluginMetaData &plugin : plugins) { + containments.append(plugin.pluginId()); } return containments; diff --git a/shell/scripting/scriptengine.cpp b/shell/scripting/scriptengine.cpp index abeda2533..74f688dfa 100644 --- a/shell/scripting/scriptengine.cpp +++ b/shell/scripting/scriptengine.cpp @@ -382,9 +382,9 @@ QList ScriptEngine::desktopsForActivity(const QString &id) Plasma::Containment *ScriptEngine::createContainment(const QString &type, const QString &plugin) { bool exists = false; - const KPluginInfo::List list = Plasma::PluginLoader::listContainmentsOfType(type); - foreach (const KPluginInfo &info, list) { - if (info.pluginName() == plugin) { + const QList list = Plasma::PluginLoader::listContainmentsMetaDataOfType(type); + foreach (const KPluginMetaData &pluginInfo, list) { + if (pluginInfo.pluginId() == plugin) { exists = true; break; } diff --git a/shell/shellcorona.cpp b/shell/shellcorona.cpp index ecec68079..df4789f66 100644 --- a/shell/shellcorona.cpp +++ b/shell/shellcorona.cpp @@ -1737,7 +1737,7 @@ void ShellCorona::checkAddPanelAction(const QStringList &sycocaChanges) m_addPanelsMenu.reset(nullptr); - KPluginInfo::List panelContainmentPlugins = Plasma::PluginLoader::listContainmentsOfType(QStringLiteral("Panel")); + const QList panelContainmentPlugins = Plasma::PluginLoader::listContainmentsMetaDataOfType(QStringLiteral("Panel")); auto filter = [](const KPluginMetaData &md) -> bool { return md.value(QStringLiteral("NoDisplay")) != QLatin1String("true") @@ -1767,12 +1767,12 @@ void ShellCorona::checkAddPanelAction(const QStringList &sycocaChanges) void ShellCorona::populateAddPanelsMenu() { m_addPanelsMenu->clear(); - const KPluginInfo emptyInfo; + const KPluginMetaData emptyInfo; - const KPluginInfo::List panelContainmentPlugins = Plasma::PluginLoader::listContainmentsOfType(QStringLiteral("Panel")); - QMap> sorted; - for (const KPluginInfo &plugin : panelContainmentPlugins) { - if (plugin.property(QStringLiteral("NoDisplay")).toString() == QLatin1String("true")) { + const QList panelContainmentPlugins = Plasma::PluginLoader::listContainmentsMetaDataOfType(QStringLiteral("Panel")); + QMap> sorted; + for (const KPluginMetaData &plugin : panelContainmentPlugins) { + if (plugin.value(QStringLiteral("NoDisplay")) == QLatin1String("true")) { continue; } sorted.insert(plugin.name(), qMakePair(plugin, KPluginMetaData())); @@ -1787,26 +1787,26 @@ void ShellCorona::populateAddPanelsMenu() sorted.insert(tpl.name(), qMakePair(emptyInfo, tpl)); } - QMapIterator> it(sorted); + QMapIterator> it(sorted); KPackage::Package package = KPackage::PackageLoader::self()->loadPackage(QStringLiteral("Plasma/LayoutTemplate")); while (it.hasNext()) { it.next(); - QPair pair = it.value(); + QPair pair = it.value(); if (pair.first.isValid()) { - KPluginInfo plugin = pair.first; + KPluginMetaData plugin = pair.first; QAction *action = m_addPanelsMenu->addAction(i18n("Empty %1", plugin.name())); - if (!plugin.icon().isEmpty()) { - action->setIcon(QIcon::fromTheme(plugin.icon())); + if (!plugin.iconName().isEmpty()) { + action->setIcon(QIcon::fromTheme(plugin.iconName())); } - action->setData(plugin.pluginName()); + action->setData(plugin.pluginId()); } else { - KPluginInfo info(pair.second); - package.setPath(info.pluginName()); + KPluginMetaData plugin(pair.second); + package.setPath(plugin.pluginId()); const QString scriptFile = package.filePath("mainscript"); if (!scriptFile.isEmpty()) { - QAction *action = m_addPanelsMenu->addAction(info.name()); - action->setData(QStringLiteral("plasma-desktop-template:%1").arg(info.pluginName())); + QAction *action = m_addPanelsMenu->addAction(plugin.name()); + action->setData(QStringLiteral("plasma-desktop-template:%1").arg(plugin.pluginId())); } } } @@ -1814,10 +1814,10 @@ void ShellCorona::populateAddPanelsMenu() void ShellCorona::addPanel() { - KPluginInfo::List panelPlugins = Plasma::PluginLoader::listContainmentsOfType(QStringLiteral("Panel")); + const QList panelPlugins = Plasma::PluginLoader::listContainmentsMetaDataOfType(QStringLiteral("Panel")); if (!panelPlugins.isEmpty()) { - addPanel(panelPlugins.first().pluginName()); + addPanel(panelPlugins.first().pluginId()); } }