diff --git a/Wox.Plugin.SystemPlugins/Program/Programs.cs b/Wox.Plugin.SystemPlugins/Program/Programs.cs index aa0af3f10e..e4fe5e841f 100644 --- a/Wox.Plugin.SystemPlugins/Program/Programs.cs +++ b/Wox.Plugin.SystemPlugins/Program/Programs.cs @@ -51,7 +51,7 @@ namespace Wox.Plugin.SystemPlugins.Program protected override List QueryInternal(Query query) { - if (query.RawQuery.Length <= 1) return new List(); + if (query.RawQuery.Trim().Length <= 1) return new List(); var fuzzyMather = FuzzyMatcher.Create(query.RawQuery); List returnList = installedList.Where(o => MatchProgram(o, fuzzyMather)).ToList(); diff --git a/Wox/Commands/SystemCommand.cs b/Wox/Commands/SystemCommand.cs index e3eee7fb6c..50b38959fd 100644 --- a/Wox/Commands/SystemCommand.cs +++ b/Wox/Commands/SystemCommand.cs @@ -5,6 +5,7 @@ using System.Text; using System.Threading; using Wox.Infrastructure.Storage.UserSettings; using Wox.Plugin; +using Wox.Plugin.SystemPlugins; using Wox.PluginLoader; namespace Wox.Commands @@ -13,16 +14,25 @@ namespace Wox.Commands { public override void Dispatch(Query query) { - foreach (PluginPair pair in Plugins.AllPlugins.Where(o => o.Metadata.PluginType == PluginType.System)) + var allSytemPlugins = Plugins.AllPlugins.Where(o => o.Metadata.PluginType == PluginType.System); + if (UserSettingStorage.Instance.WebSearches.Exists(o => o.ActionWord == query.ActionName && o.Enabled)) + { + //websearch mode + allSytemPlugins = new List() + { + allSytemPlugins.First(o => ((ISystemPlugin)o.Plugin).ID == "565B73353DBF4806919830B9202EE3BF") + }; + } + + foreach (PluginPair pair in allSytemPlugins) { PluginPair pair1 = pair; - ThreadPool.QueueUserWorkItem(state => { List results = pair1.Plugin.Query(query); - results.ForEach(o=> { o.AutoAjustScore = true; }); + results.ForEach(o => { o.AutoAjustScore = true; }); - App.Window.PushResults(query,pair1.Metadata,results); + App.Window.PushResults(query, pair1.Metadata, results); }); } }