@@ -28,6 +28,8 @@ public static class PluginManager
2828
2929 private static IEnumerable < PluginPair > _contextMenuPlugins ;
3030 private static IEnumerable < PluginPair > _homePlugins ;
31+ private static IEnumerable < PluginPair > _resultUpdatePlugin ;
32+ private static IEnumerable < PluginPair > _translationPlugins ;
3133 private static IEnumerable < PluginPair > _hotkeyPlugins ;
3234
3335 public static List < PluginPair > AllPlugins { get ; private set ; }
@@ -257,6 +259,8 @@ public static async Task InitializePluginsAsync()
257259
258260 _contextMenuPlugins = GetPluginsForInterface < IContextMenu > ( ) ;
259261 _homePlugins = GetPluginsForInterface < IAsyncHomeQuery > ( ) ;
262+ _resultUpdatePlugin = GetPluginsForInterface < IResultUpdated > ( ) ;
263+ _translationPlugins = GetPluginsForInterface < IPluginI18n > ( ) ;
260264 _hotkeyPlugins = GetPluginsForInterface < IPluginHotkey > ( ) ;
261265 var pluginHotkeyInfo = GetPluginHotkeyInfo ( ) ;
262266 Settings . UpdatePluginHotkeyInfo ( pluginHotkeyInfo ) ;
@@ -420,7 +424,7 @@ public static PluginPair GetPluginForId(string id)
420424 return AllPlugins . FirstOrDefault ( o => o . Metadata . ID == id ) ;
421425 }
422426
423- public static IEnumerable < PluginPair > GetPluginsForInterface < T > ( ) where T : IFeatures
427+ private static IEnumerable < PluginPair > GetPluginsForInterface < T > ( ) where T : IFeatures
424428 {
425429 // Handle scenario where this is called before all plugins are instantiated, e.g. language change on startup
426430 return AllPlugins ? . Where ( p => p . Plugin is T ) ?? Array . Empty < PluginPair > ( ) ;
@@ -460,6 +464,17 @@ public static bool IsHomePlugin(string id)
460464 return _homePlugins . Any ( p => p . Metadata . ID == id ) ;
461465 }
462466
467+ public static IList < PluginPair > GetResultUpdatePlugin ( )
468+ {
469+ return _resultUpdatePlugin . Where ( p => ! PluginModified ( p . Metadata . ID ) ) . ToList ( ) ;
470+ }
471+
472+ public static IList < PluginPair > GetTranslationPlugins ( )
473+ {
474+ // Here we still return the modified plugins to update the possible string resources
475+ return _translationPlugins . ToList ( ) ;
476+ }
477+
463478 public static Dictionary < PluginPair , List < BasePluginHotkey > > GetPluginHotkeyInfo ( )
464479 {
465480 var hotkeyPluginInfos = new Dictionary < PluginPair , List < BasePluginHotkey > > ( ) ;
0 commit comments