diff --git a/Flow.Launcher.Core/Plugin/PluginManager.cs b/Flow.Launcher.Core/Plugin/PluginManager.cs index 45659aedb..f23b529cc 100644 --- a/Flow.Launcher.Core/Plugin/PluginManager.cs +++ b/Flow.Launcher.Core/Plugin/PluginManager.cs @@ -188,6 +188,12 @@ namespace Flow.Launcher.Core.Plugin AllPlugins = PluginsLoader.Plugins(_metadatas, Settings); // Since dotnet plugins need to get assembly name first, we should update plugin directory after loading plugins UpdatePluginDirectory(_metadatas); + // Initialize plugin enumerable after all plugins are initialized + _contextMenuPlugins = GetPluginsForInterface(); + _homePlugins = GetPluginsForInterface(); + _resultUpdatePlugin = GetPluginsForInterface(); + _translationPlugins = GetPluginsForInterface(); + _hotkeyPlugins = GetPluginsForInterface(); } private static void UpdatePluginDirectory(List metadatas) @@ -257,11 +263,6 @@ namespace Flow.Launcher.Core.Plugin await Task.WhenAll(InitTasks); - _contextMenuPlugins = GetPluginsForInterface(); - _homePlugins = GetPluginsForInterface(); - _resultUpdatePlugin = GetPluginsForInterface(); - _translationPlugins = GetPluginsForInterface(); - _hotkeyPlugins = GetPluginsForInterface(); var pluginHotkeyInfo = GetPluginHotkeyInfo(); Settings.UpdatePluginHotkeyInfo(pluginHotkeyInfo); InitializeWindowPluginHotkeys(pluginHotkeyInfo);