diff --git a/Wox/App.xaml.cs b/Wox/App.xaml.cs index d1b7f5f69b..44b57bb193 100644 --- a/Wox/App.xaml.cs +++ b/Wox/App.xaml.cs @@ -4,6 +4,7 @@ using System.IO; using System.Linq; using System.Threading; using Wox.CommandArgs; +using Wox.Core.Plugin; using Wox.Helper; using Application = System.Windows.Application; using MessageBox = System.Windows.MessageBox; @@ -35,6 +36,8 @@ namespace Wox AppDomain.CurrentDomain.UnhandledException += ErrorReporting.UnhandledExceptionHandle; Window = new MainWindow(); + PluginManager.Init(Window); + ImageLoader.ImageLoader.PreloadImages(); CommandArgsFactory.Execute(e.Args.ToList()); } diff --git a/Wox/MainWindow.xaml.cs b/Wox/MainWindow.xaml.cs index 9e305ff40c..80dc021829 100644 --- a/Wox/MainWindow.xaml.cs +++ b/Wox/MainWindow.xaml.cs @@ -207,18 +207,7 @@ namespace Wox InitialTray(); Closing += MainWindow_Closing; - //since MainWIndow implement IPublicAPI, so we need to finish ctor MainWindow object before - //PublicAPI invoke in plugin init methods. E.g FolderPlugin - ThreadPool.QueueUserWorkItem(o => - { - Thread.Sleep(50); - PluginManager.Init(this); - }); - ThreadPool.QueueUserWorkItem(o => - { - Thread.Sleep(50); - PreLoadImages(); - }); + } void pnlResult_ItemDropEvent(Result result, IDataObject dropDataObject, DragEventArgs args) @@ -245,11 +234,6 @@ namespace Wox return true; } - private void PreLoadImages() - { - ImageLoader.ImageLoader.PreloadImages(); - } - void pnlResult_RightMouseClickEvent(Result result) { ShowContextMenu(result);