fix: 修复拖动插件到任务栏后所有插件都显示的问题

在保存所有插件的时候,判断该插件是否被移除,如果已经移除,则不保存到配置中

Log:
Influence: 默认所有的快捷面板中的插件都在任务栏显示,从控制中心取消所有插件的勾选,然后从快捷面板拖动一个插件到任务栏,观察任务栏插件显示情况
Bug: https://pms.uniontech.com/bug-view-181945.html
Change-Id: Ic523ff21107f8429c61db1abde6c8c97793bb59d
This commit is contained in:
donghualin 2023-02-01 15:35:49 +08:00
parent 7b5f164b26
commit 63c03f58a7

View File

@ -158,9 +158,14 @@ void QuickPluginModel::initConfig()
void QuickPluginModel::saveConfig()
{
QStringList pluginNames;
for (PluginsItemInterface *item : m_dockedPluginsItems) {
pluginNames << item->pluginName();
}
QStringList plugins;
for (auto it = m_dockedPluginIndex.begin(); it != m_dockedPluginIndex.end(); it++) {
plugins << it.key();
if (pluginNames.contains(it.key()))
plugins << it.key();
}
std::sort(plugins.begin(), plugins.end(), [ this ](const QString &p1, const QString &p2) {
return m_dockedPluginIndex.value(p1) < m_dockedPluginIndex.value(p2);