Remove action keyword first

This commit is contained in:
Jack251970 2025-02-21 13:43:53 +08:00
parent 37ad5aa09b
commit 300d64d661

View file

@ -412,14 +412,16 @@ namespace Flow.Launcher.Core.Plugin
{
if (CheckActionKeywordChanged(oldActionKeywords, newActionKeywords))
{
// Fix collection modified while iterating exception
var oldActionKeywordsClone = oldActionKeywords.ToList();
foreach (var actionKeyword in oldActionKeywordsClone)
{
RemoveActionKeyword(id, actionKeyword);
}
foreach (var actionKeyword in newActionKeywords)
{
AddActionKeyword(id, actionKeyword);
}
foreach (var actionKeyword in oldActionKeywords)
{
RemoveActionKeyword(id, actionKeyword);
}
// Update action keyword in plugin metadata
var plugin = GetPluginForId(id);
@ -445,8 +447,8 @@ namespace Flow.Launcher.Core.Plugin
{
if (oldActionKeyword != newActionKeyword)
{
AddActionKeyword(id, newActionKeyword);
RemoveActionKeyword(id, oldActionKeyword);
AddActionKeyword(id, newActionKeyword);
// Update action keyword in plugin metadata
var plugin = GetPluginForId(id);