ExtensionSystem: Allow opt-in plugin loading without restart

Change-Id: I682e51d047c43ff5bf4647ef7e015222707f3204
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
hjk
2023-06-20 16:06:50 +02:00
committed by Marcus Tillmanns
parent 845337436c
commit 32914fe66b
9 changed files with 63 additions and 19 deletions

View File

@@ -237,9 +237,7 @@ public:
if (column == LoadedColumn && role == Qt::CheckStateRole) {
const QVector<PluginSpec *> affectedPlugins
= Utils::filtered(m_plugins, [](PluginSpec *spec) { return !spec->isRequired(); });
if (m_view->setPluginsEnabled(Utils::transform<QSet>(affectedPlugins,
[](PluginSpec *s) { return s; }),
data.toBool())) {
if (m_view->setPluginsEnabled(toSet(affectedPlugins), data.toBool())) {
update();
return true;
}
@@ -419,8 +417,8 @@ bool PluginView::setPluginsEnabled(const QSet<PluginSpec *> &plugins, bool enabl
spec->d->setEnabledBySettings(enable);
item->updateColumn(LoadedColumn);
item->parent()->updateColumn(LoadedColumn);
emit pluginSettingsChanged(spec);
}
emit pluginsChanged(affectedPlugins, enable);
return true;
}