Skip to content

Release 1.16.0 | Plugin 4.1.0 #2197

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 112 commits into from
Jul 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
112 commits
Select commit Hold shift + click to select a range
099021b
Save programs cache after indexing
VictoriousRaptor Apr 24, 2023
b123c09
Remove unused settings
VictoriousRaptor Apr 24, 2023
4debacd
Refactor program indexing and cache logic
VictoriousRaptor Apr 24, 2023
00e6e5b
Remove unused using
VictoriousRaptor Apr 25, 2023
df5e8ca
Remove unused packages
VictoriousRaptor Apr 25, 2023
306ad79
Merge branch 'dev' into RemoveUnusedNuget
VictoriousRaptor May 4, 2023
955ff69
add sponsor
jjw24 May 5, 2023
e03b993
Merge pull request #2118 from Flow-Launcher/add_sponsor
jjw24 May 5, 2023
dd42b9d
Remove deprecated Everything plugin from readme
VictoriousRaptor May 10, 2023
ce2333e
Merge pull request #2127 from Flow-Launcher/remove-everything-reademe
VictoriousRaptor May 10, 2023
bc18168
Add plugin API: HideMainWindow(), IsMainWindowVisible()
rainyl May 11, 2023
cd06f13
Merge pull request #2133 from rainyl/dev
Garulf May 11, 2023
19a820c
Bump Microsoft.VisualStudio.Threading from 17.4.27 to 17.5.22
dependabot[bot] May 15, 2023
410e23d
Merge pull request #2140 from Flow-Launcher/dependabot/nuget/Microsof…
jjw24 May 16, 2023
eaaf7c2
Plugin Store search works after refresh button clicked
May 18, 2023
c55edca
Merge pull request #2137 from ngtr6788/search-plugin-store-refresh
VictoriousRaptor May 18, 2023
f019bb2
Remove result logic so this method can be reused
Garulf May 19, 2023
f992729
Provide CopyText field instead of empty string
Garulf May 19, 2023
ed11cc2
Use ResultCopy to support files
Garulf May 19, 2023
6cc5fe8
Add admin permissions when non-admin doesn't work
May 22, 2023
d0289b4
Refactor file watcher logic
VictoriousRaptor May 22, 2023
cbf73fc
Don't load bookmark files if plugin disabled
VictoriousRaptor May 22, 2023
0dc01a1
update
VictoriousRaptor May 22, 2023
4591fa7
Create file watchers when reloading bookmarks
VictoriousRaptor May 23, 2023
31d80fe
Bump Microsoft.IO.RecyclableMemoryStream from 2.3.1 to 2.3.2 (#2154)
dependabot[bot] May 26, 2023
4144829
Merge pull request #2149 from ngtr6788/windows-settings-elevation
taooceros May 26, 2023
4ddf037
remove NuGet.CommandLine package
JohnTheGr8 May 26, 2023
1cf3099
Merge pull request #2160 from JohnTheGr8/remove_nuget_commandline
VictoriousRaptor May 26, 2023
bbaa388
Bump FSharp.Core from 7.0.0 to 7.0.300 (#2163)
dependabot[bot] Jun 1, 2023
6bdf6ac
fix kill command to honor "Last Query Style"
JohnTheGr8 Jun 4, 2023
22dd59e
Merge pull request #2170 from JohnTheGr8/kill_honor_last_query_style
VictoriousRaptor Jun 4, 2023
d59bdff
Merge branch 'dev' into expand-resultcopy
Garulf Jun 4, 2023
488c8e8
Update docstring
Garulf Jun 4, 2023
c631895
Copy selected query text if there is a selection
Garulf Jun 4, 2023
fa2c894
Merge pull request #2143 from Flow-Launcher/expand-resultcopy
Garulf Jun 4, 2023
9a28266
Bump Microsoft.NET.Test.Sdk from 17.4.1 to 17.6.1
dependabot[bot] Jun 5, 2023
0b05e95
add `Query.IsForced` property
JohnTheGr8 Jun 6, 2023
fa783a9
bind `Ctrl + R` to re-running the current query
JohnTheGr8 Jun 6, 2023
936d2b7
Merge pull request #2173 from Flow-Launcher/dependabot/nuget/Microsof…
jjw24 Jun 7, 2023
a360ac1
Query: rename `IsForced` property to `IsReQuery`
JohnTheGr8 Jun 7, 2023
1ff328b
update copy calls to use API CopyToClipboard method
jjw24 Jun 8, 2023
2b862f7
Make CopyToClipboard generic
jjw24 Jun 9, 2023
a35b001
Update AppVeyor NuGet API (#2180)
jjw24 Jun 11, 2023
6655d83
Merge pull request #2123 from VictoriousRaptor/BoostProgramInit
VictoriousRaptor Jun 11, 2023
dcc7dbb
Merge branch 'dev' into RemoveUnusedNuget
VictoriousRaptor Jun 11, 2023
6f7c3eb
add option to suppress notification when calling copy
jjw24 Jun 11, 2023
e078de5
add CopyText for Shell plugin
jjw24 Jun 11, 2023
f22ce37
rename params to isReQuery for consistency
JohnTheGr8 Jun 11, 2023
144fdad
Merge pull request #2177 from Flow-Launcher/refactor_copy
jjw24 Jun 11, 2023
1b68d09
Merge pull request #2115 from VictoriousRaptor/RemoveUnusedNuget
VictoriousRaptor Jun 12, 2023
e6baa88
decouple Shell from the ComboBox SelectedIndex
JohnTheGr8 Jun 12, 2023
c6a6c6b
plugin/shell: add powershell core (pwsh) option
JohnTheGr8 Jun 12, 2023
0047d8a
Merge pull request #2174 from JohnTheGr8/requery_enhancements
jjw24 Jun 13, 2023
6d64abd
Load bookmarks in Query() if not initialized
VictoriousRaptor Jun 15, 2023
0d7dbe2
Bump Microsoft.VisualStudio.Threading from 17.5.22 to 17.6.40 (#2187)
dependabot[bot] Jun 15, 2023
e46df28
Move initialized flag
VictoriousRaptor Jun 16, 2023
e1c63af
Add quotes surrounding auto startup entry (#2150)
VictoriousRaptor Jun 17, 2023
9b5341c
Preserve file watchers when monitored files change
VictoriousRaptor Jun 18, 2023
be72c14
readme: document Ctrl+R hotkey
JohnTheGr8 Jun 18, 2023
9b5fbee
update documentation in Result
JohnTheGr8 Jun 18, 2023
6ebac4e
update documentation in Query
JohnTheGr8 Jun 18, 2023
bb5e1d3
more documentation in Plugin package
JohnTheGr8 Jun 18, 2023
da41f2c
update plugin readme, include in nupkg
JohnTheGr8 Jun 18, 2023
bb7023a
Added Animation Length slider
AlexDavies8 Jun 23, 2023
9d04745
Refactored to describe via discrete speed settings
AlexDavies8 Jun 23, 2023
e0e86d0
Remove delay
VictoriousRaptor Jun 24, 2023
d602f5c
Merge branch 'dev' into FirefoxBookmark
VictoriousRaptor Jun 24, 2023
cdff8fc
fix: :bug: check autocomplete and copy text for `Result` equality (#2…
JamesNZL Jun 24, 2023
7b8f998
perf: :zap: improve `Result` hashcode algorithm (#2201)
JamesNZL Jun 25, 2023
2daed50
merge PR #2183: support Pwsh in Shell Plugin (PowerShell 7.x)
JohnTheGr8 Jun 25, 2023
5dd0d34
refactor: :recycle: use `HashCode.Combine` for `Result` hashcode (#2201)
JamesNZL Jun 26, 2023
a48f060
merge PR #2193: Update Plugin documentation
JohnTheGr8 Jun 26, 2023
340dc3c
clear obsolete code from Flow.Launcher.Plugin
JohnTheGr8 Jun 24, 2023
823d4e1
update QueryBuilder tests
JohnTheGr8 Jun 24, 2023
ea4286b
clear backwards compat code
JohnTheGr8 Jun 25, 2023
0909f8b
delete unused files
JohnTheGr8 Jun 25, 2023
46c7c53
use AccelerateBuildsInVisualStudio for faster builds
JohnTheGr8 Jun 25, 2023
4360c77
Merge branch 'dev' into dev
AlexDavies8 Jun 26, 2023
67d8b20
Merge pull request #2202 from JamesNZL/ResultEquals
VictoriousRaptor Jun 27, 2023
a7fc5b3
Merge pull request #2204 from Flow-Launcher/clear_obsolete
jjw24 Jun 27, 2023
06e9149
Merge pull request #2199 from AlexDavies8/dev
jjw24 Jun 27, 2023
9656e5c
Clarify initialized condition
VictoriousRaptor Jun 29, 2023
f23284a
Merge pull request #2152 from VictoriousRaptor/FirefoxBookmark
VictoriousRaptor Jun 29, 2023
17009c8
Bump versions for release
jjw24 Jun 29, 2023
eec0b9d
bump Flow.Launcher.Plugin version
jjw24 Jun 30, 2023
e695781
New Crowdin updates (#2119)
jjw24 Jun 30, 2023
ddeca15
version bump plugins
jjw24 Jun 30, 2023
da26a17
New Crowdin updates (#2211)
jjw24 Jul 2, 2023
fa96132
Add Plugin API -> VisibiltyChangedEventHandler
Odotocodot Jul 3, 2023
c743749
Update AvailableLanguages.cs
taooceros Jul 4, 2023
ed3f4b1
Update expect.txt
taooceros Jul 4, 2023
cf820c4
Update expect.txt
taooceros Jul 4, 2023
c2c5929
Add Arabic language
VictoriousRaptor Jul 4, 2023
39e544a
Merge pull request #2219 from Flow-Launcher/taooceros-patch-1
VictoriousRaptor Jul 4, 2023
f7b5858
rework how we fetch plugins from manifest URLs
JohnTheGr8 Jul 4, 2023
194dbab
add more manifest file fallback URLs
JohnTheGr8 Jul 4, 2023
64f0da4
refactor CommunityPluginSource.FetchAsync
JohnTheGr8 Jul 4, 2023
f03ac76
throttle PluginsManifest.UpdateManifestAsync
JohnTheGr8 Jul 5, 2023
2d6b476
use Ctrl+R to fetch primary manifest source
JohnTheGr8 Jul 5, 2023
df149fa
increase plugin manifest fetch timeout to 2m
JohnTheGr8 Jul 8, 2023
4758ea2
New Crowdin updates (#2215)
jjw24 Jul 9, 2023
7f43d85
Update Flow.Launcher.Plugin/Interfaces/IPublicAPI.cs
Odotocodot Jul 9, 2023
088818b
Move delegate into EventHandler.cs
Odotocodot Jul 9, 2023
1e1884f
Merge branch 'dev' into feature/VisibilityChanged
Odotocodot Jul 9, 2023
4eb20e2
fix build issue introduced in 088818bb
JohnTheGr8 Jul 9, 2023
b1286d9
switch winget release action to only fire manually
JohnTheGr8 Jul 9, 2023
0429cef
Merge pull request #2216 from Odotocodot/feature/VisibilityChanged
jjw24 Jul 10, 2023
826449c
Merge pull request #2222 from JohnTheGr8/plugin_manifest_enhancements
jjw24 Jul 10, 2023
e627667
Merge pull request #2231 from JohnTheGr8/manual_winget_release
jjw24 Jul 10, 2023
e6c9a79
version bump plugin
jjw24 Jul 10, 2023
f5b2a3f
New Crowdin updates (#2230)
jjw24 Jul 10, 2023
6020cd9
Merge pull request #2209 from Flow-Launcher/version_bumps
jjw24 Jul 10, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/actions/spelling/expect.txt
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ WCA_ACCENT_POLICY
HGlobal
dopusrt
firefox
Firefox
msedge
svgc
ime
Expand All @@ -95,3 +96,10 @@ keyevent
KListener
requery
vkcode
čeština
Polski
Srpski
Português
Português (Brasil)
Italiano
Slovenský
3 changes: 1 addition & 2 deletions .github/workflows/winget.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
name: Publish to Winget

on:
release:
types: [released]
workflow_dispatch:

jobs:
publish:
Expand Down
4 changes: 0 additions & 4 deletions Deploy/local_build.ps1

This file was deleted.

5 changes: 5 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<Project>
<PropertyGroup>
<AccelerateBuildsInVisualStudio>true</AccelerateBuildsInVisualStudio>
</PropertyGroup>
</Project>
57 changes: 57 additions & 0 deletions Flow.Launcher.Core/ExternalPlugins/CommunityPluginSource.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
using Flow.Launcher.Infrastructure.Http;
using Flow.Launcher.Infrastructure.Logger;
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Net.Http.Json;
using System.Threading;
using System.Threading.Tasks;

namespace Flow.Launcher.Core.ExternalPlugins
{
public record CommunityPluginSource(string ManifestFileUrl)
{
private string latestEtag = "";

private List<UserPlugin> plugins = new();

/// <summary>
/// Fetch and deserialize the contents of a plugins.json file found at <see cref="ManifestFileUrl"/>.
/// We use conditional http requests to keep repeat requests fast.
/// </summary>
/// <remarks>
/// This method will only return plugin details when the underlying http request is successful (200 or 304).
/// In any other case, an exception is raised
/// </remarks>
public async Task<List<UserPlugin>> FetchAsync(CancellationToken token)
{
Log.Info(nameof(CommunityPluginSource), $"Loading plugins from {ManifestFileUrl}");

var request = new HttpRequestMessage(HttpMethod.Get, ManifestFileUrl);

request.Headers.Add("If-None-Match", latestEtag);

using var response = await Http.SendAsync(request, HttpCompletionOption.ResponseHeadersRead, token).ConfigureAwait(false);

if (response.StatusCode == HttpStatusCode.OK)
{
this.plugins = await response.Content.ReadFromJsonAsync<List<UserPlugin>>(cancellationToken: token).ConfigureAwait(false);
this.latestEtag = response.Headers.ETag.Tag;

Log.Info(nameof(CommunityPluginSource), $"Loaded {this.plugins.Count} plugins from {ManifestFileUrl}");
return this.plugins;
}
else if (response.StatusCode == HttpStatusCode.NotModified)
{
Log.Info(nameof(CommunityPluginSource), $"Resource {ManifestFileUrl} has not been modified.");
return this.plugins;
}
else
{
Log.Warn(nameof(CommunityPluginSource), $"Failed to load resource {ManifestFileUrl} with response {response.StatusCode}");
throw new Exception($"Failed to load resource {ManifestFileUrl} with response {response.StatusCode}");
}
}
}
}
54 changes: 54 additions & 0 deletions Flow.Launcher.Core/ExternalPlugins/CommunityPluginStore.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;

namespace Flow.Launcher.Core.ExternalPlugins
{
/// <summary>
/// Describes a store of community-made plugins.
/// The provided URLs should point to a json file, whose content
/// is deserializable as a <see cref="UserPlugin"/> array.
/// </summary>
/// <param name="primaryUrl">Primary URL to the manifest json file.</param>
/// <param name="secondaryUrls">Secondary URLs to access the <paramref name="primaryUrl"/>, for example CDN links</param>
public record CommunityPluginStore(string primaryUrl, params string[] secondaryUrls)
{
private readonly List<CommunityPluginSource> pluginSources =
secondaryUrls
.Append(primaryUrl)
.Select(url => new CommunityPluginSource(url))
.ToList();

public async Task<List<UserPlugin>> FetchAsync(CancellationToken token, bool onlyFromPrimaryUrl = false)
{
// we create a new cancellation token source linked to the given token.
// Once any of the http requests completes successfully, we call cancel
// to stop the rest of the running http requests.
var cts = CancellationTokenSource.CreateLinkedTokenSource(token);

var tasks = onlyFromPrimaryUrl
? new() { pluginSources.Last().FetchAsync(cts.Token) }
: pluginSources.Select(pluginSource => pluginSource.FetchAsync(cts.Token)).ToList();

var pluginResults = new List<UserPlugin>();

// keep going until all tasks have completed
while (tasks.Any())
{
var completedTask = await Task.WhenAny(tasks);
if (completedTask.IsCompletedSuccessfully)
{
// one of the requests completed successfully; keep its results
// and cancel the remaining http requests.
pluginResults = await completedTask;
cts.Cancel();
}
tasks.Remove(completedTask);
}

// all tasks have finished
return pluginResults;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,18 +41,6 @@ internal IEnumerable<PluginPair> Setup()
if (!PluginMetadataList.Any(o => o.Language.Equals(Language, StringComparison.OrdinalIgnoreCase)))
return new List<PluginPair>();

// TODO: Remove. This is backwards compatibility for 1.10.0 release- changed PythonEmbeded to Environments/Python
if (Language.Equals(AllowedLanguage.Python, StringComparison.OrdinalIgnoreCase))
{
FilesFolders.RemoveFolderIfExists(Path.Combine(DataLocation.DataDirectory(), "PythonEmbeddable"));

if (!string.IsNullOrEmpty(PluginSettings.PythonDirectory) && PluginSettings.PythonDirectory.StartsWith(Path.Combine(DataLocation.DataDirectory(), "PythonEmbeddable")))
{
InstallEnvironment();
PluginSettings.PythonDirectory = string.Empty;
}
}

if (!string.IsNullOrEmpty(PluginsSettingsFilePath) && FilesFolders.FileExists(PluginsSettingsFilePath))
{
// Ensure latest only if user is using Flow's environment setup.
Expand Down
39 changes: 14 additions & 25 deletions Flow.Launcher.Core/ExternalPlugins/PluginsManifest.cs
Original file line number Diff line number Diff line change
@@ -1,49 +1,38 @@
using Flow.Launcher.Infrastructure.Http;
using Flow.Launcher.Infrastructure.Logger;
using Flow.Launcher.Infrastructure.Logger;
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;

namespace Flow.Launcher.Core.ExternalPlugins
{
public static class PluginsManifest
{
private const string manifestFileUrl = "https://cdn.jsdelivr.net/gh/Flow-Launcher/Flow.Launcher.PluginsManifest@plugin_api_v2/plugins.json";
private static readonly CommunityPluginStore mainPluginStore =
new("https://raw.githubusercontent.com/Flow-Launcher/Flow.Launcher.PluginsManifest/plugin_api_v2/plugins.json",
"https://fastly.jsdelivr.net/gh/Flow-Launcher/Flow.Launcher.PluginsManifest@plugin_api_v2/plugins.json",
"https://gcore.jsdelivr.net/gh/Flow-Launcher/Flow.Launcher.PluginsManifest@plugin_api_v2/plugins.json",
"https://cdn.jsdelivr.net/gh/Flow-Launcher/Flow.Launcher.PluginsManifest@plugin_api_v2/plugins.json");

private static readonly SemaphoreSlim manifestUpdateLock = new(1);

private static string latestEtag = "";
private static DateTime lastFetchedAt = DateTime.MinValue;
private static TimeSpan fetchTimeout = TimeSpan.FromMinutes(2);

public static List<UserPlugin> UserPlugins { get; private set; } = new List<UserPlugin>();
public static List<UserPlugin> UserPlugins { get; private set; }

public static async Task UpdateManifestAsync(CancellationToken token = default)
public static async Task UpdateManifestAsync(CancellationToken token = default, bool usePrimaryUrlOnly = false)
{
try
{
await manifestUpdateLock.WaitAsync(token).ConfigureAwait(false);

var request = new HttpRequestMessage(HttpMethod.Get, manifestFileUrl);
request.Headers.Add("If-None-Match", latestEtag);

using var response = await Http.SendAsync(request, HttpCompletionOption.ResponseHeadersRead, token).ConfigureAwait(false);

if (response.StatusCode == HttpStatusCode.OK)
if (UserPlugins == null || usePrimaryUrlOnly || DateTime.Now.Subtract(lastFetchedAt) >= fetchTimeout)
{
Log.Info($"|PluginsManifest.{nameof(UpdateManifestAsync)}|Fetched plugins from manifest repo");

await using var json = await response.Content.ReadAsStreamAsync(token).ConfigureAwait(false);
var results = await mainPluginStore.FetchAsync(token, usePrimaryUrlOnly).ConfigureAwait(false);

UserPlugins = await JsonSerializer.DeserializeAsync<List<UserPlugin>>(json, cancellationToken: token).ConfigureAwait(false);

latestEtag = response.Headers.ETag.Tag;
}
else if (response.StatusCode != HttpStatusCode.NotModified)
{
Log.Warn($"|PluginsManifest.{nameof(UpdateManifestAsync)}|Http response for manifest file was {response.StatusCode}");
UserPlugins = results;
lastFetchedAt = DateTime.Now;
}
}
catch (Exception e)
Expand Down
6 changes: 3 additions & 3 deletions Flow.Launcher.Core/Flow.Launcher.Core.csproj
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0-windows</TargetFramework>
Expand Down Expand Up @@ -54,8 +54,8 @@

<ItemGroup>
<PackageReference Include="Droplex" Version="1.6.0" />
<PackageReference Include="FSharp.Core" Version="7.0.0" />
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="2.3.1" />
<PackageReference Include="FSharp.Core" Version="7.0.300" />
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="2.3.2" />
<PackageReference Include="squirrel.windows" Version="1.5.2" NoWarn="NU1701" />
</ItemGroup>

Expand Down
1 change: 0 additions & 1 deletion Flow.Launcher.Core/Plugin/ExecutablePlugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using Flow.Launcher.Plugin;

namespace Flow.Launcher.Core.Plugin
{
Expand Down
2 changes: 0 additions & 2 deletions Flow.Launcher.Core/Plugin/JsonPRCModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@
*
*/

using Flow.Launcher.Core.Resource;
using System.Collections.Generic;
using System.Linq;
using System.Text.Json.Serialization;
using Flow.Launcher.Plugin;
using System.Text.Json;
Expand Down
3 changes: 0 additions & 3 deletions Flow.Launcher.Core/Plugin/JsonRPCPlugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,6 @@
using TextBox = System.Windows.Controls.TextBox;
using UserControl = System.Windows.Controls.UserControl;
using System.Windows.Documents;
using static System.Windows.Forms.LinkLabel;
using Droplex;
using System.Windows.Forms;

namespace Flow.Launcher.Core.Plugin
{
Expand Down
6 changes: 1 addition & 5 deletions Flow.Launcher.Core/Plugin/NodePlugin.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Flow.Launcher.Plugin;
Expand Down
5 changes: 1 addition & 4 deletions Flow.Launcher.Core/Plugin/PluginAssemblyLoader.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
using Flow.Launcher.Infrastructure;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System;
using System.IO;
using System.Linq;
using System.Reflection;
Expand Down
2 changes: 2 additions & 0 deletions Flow.Launcher.Core/Plugin/PluginsLoader.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@
using System.Threading.Tasks;
using System.Windows.Forms;
using Flow.Launcher.Core.ExternalPlugins.Environments;
#pragma warning disable IDE0005
using Flow.Launcher.Infrastructure.Logger;
#pragma warning restore IDE0005
using Flow.Launcher.Infrastructure.UserSettings;
using Flow.Launcher.Plugin;
using Stopwatch = Flow.Launcher.Infrastructure.Stopwatch;
Expand Down
3 changes: 1 addition & 2 deletions Flow.Launcher.Core/Plugin/PythonPlugin.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System;
using System.Diagnostics;
using System.Diagnostics;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
Expand Down
13 changes: 8 additions & 5 deletions Flow.Launcher.Core/Plugin/QueryBuilder.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using Flow.Launcher.Plugin;

namespace Flow.Launcher.Core.Plugin
Expand Down Expand Up @@ -34,9 +33,13 @@ public static Query Build(string text, Dictionary<string, PluginPair> nonGlobalP
searchTerms = terms;
}

var query = new Query(rawQuery, search,terms, searchTerms, actionKeyword);

return query;
return new Query ()
{
Search = search,
RawQuery = rawQuery,
SearchTerms = searchTerms,
ActionKeyword = actionKeyword
};
}
}
}
6 changes: 5 additions & 1 deletion Flow.Launcher.Core/Resource/AvailableLanguages.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ internal static class AvailableLanguages
public static Language Norwegian_Bokmal = new Language("nb-NO", "Norsk Bokmål");
public static Language Slovak = new Language("sk", "Slovenský");
public static Language Turkish = new Language("tr", "Türkçe");
public static Language Czech = new Language("cs", "čeština");
public static Language Arabic = new Language("ar", "اللغة العربية");

public static List<Language> GetAvailableLanguages()
{
Expand All @@ -50,7 +52,9 @@ public static List<Language> GetAvailableLanguages()
Italian,
Norwegian_Bokmal,
Slovak,
Turkish
Turkish,
Czech,
Arabic
};
return languages;
}
Expand Down
Loading