diff --git a/Flow.Launcher.Plugin/Result.cs b/Flow.Launcher.Plugin/Result.cs
index fe80292be..4a5eb39af 100644
--- a/Flow.Launcher.Plugin/Result.cs
+++ b/Flow.Launcher.Plugin/Result.cs
@@ -29,6 +29,13 @@ namespace Flow.Launcher.Plugin
///
public string ActionKeywordAssigned { get; set; }
+ ///
+ /// This holds the text which can be provided by plugin to be copied to the
+ /// user's clipboard when Ctrl + C is pressed on a result. If the text is a file/directory path
+ /// flow will copy the actual file/folder instead of just the path text.
+ ///
+ public string CopyText { get; set; } = string.Empty;
+
///
/// This holds the text which can be provided by plugin to help Flow autocomplete text
/// for user on the plugin result. If autocomplete action for example is tab, pressing tab will have
diff --git a/Flow.Launcher/App.xaml.cs b/Flow.Launcher/App.xaml.cs
index ea4b25f5e..4ebff16a9 100644
--- a/Flow.Launcher/App.xaml.cs
+++ b/Flow.Launcher/App.xaml.cs
@@ -153,7 +153,6 @@ namespace Flow.Launcher
DispatcherUnhandledException += ErrorReporting.DispatcherUnhandledException;
}
-
///
/// let exception throw as normal is better for Debug
///
@@ -179,4 +178,4 @@ namespace Flow.Launcher
Current.MainWindow.Show();
}
}
-}
\ No newline at end of file
+}
diff --git a/Flow.Launcher/Flow.Launcher.csproj b/Flow.Launcher/Flow.Launcher.csproj
index f431504c2..35a6389ca 100644
--- a/Flow.Launcher/Flow.Launcher.csproj
+++ b/Flow.Launcher/Flow.Launcher.csproj
@@ -88,6 +88,7 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
+
diff --git a/Flow.Launcher/Images/Browser.png b/Flow.Launcher/Images/Browser.png
index 619d1ad6a..5d475f82e 100644
Binary files a/Flow.Launcher/Images/Browser.png and b/Flow.Launcher/Images/Browser.png differ
diff --git a/Flow.Launcher/Images/EXE.png b/Flow.Launcher/Images/EXE.png
index e4c789689..ecc91bdb3 100644
Binary files a/Flow.Launcher/Images/EXE.png and b/Flow.Launcher/Images/EXE.png differ
diff --git a/Flow.Launcher/Images/Link.png b/Flow.Launcher/Images/Link.png
index c0c3607bd..3218c94c9 100644
Binary files a/Flow.Launcher/Images/Link.png and b/Flow.Launcher/Images/Link.png differ
diff --git a/Flow.Launcher/Images/New Message.png b/Flow.Launcher/Images/New Message.png
index 2dd2c45f2..fec9a7182 100644
Binary files a/Flow.Launcher/Images/New Message.png and b/Flow.Launcher/Images/New Message.png differ
diff --git a/Flow.Launcher/Images/app_missing_img.png b/Flow.Launcher/Images/app_missing_img.png
index 11d5466f0..b86c29ac9 100644
Binary files a/Flow.Launcher/Images/app_missing_img.png and b/Flow.Launcher/Images/app_missing_img.png differ
diff --git a/Flow.Launcher/Images/calculator.png b/Flow.Launcher/Images/calculator.png
index 102a86bde..4bdade8b7 100644
Binary files a/Flow.Launcher/Images/calculator.png and b/Flow.Launcher/Images/calculator.png differ
diff --git a/Flow.Launcher/Images/cancel.png b/Flow.Launcher/Images/cancel.png
index 022fbc197..69ec5a969 100644
Binary files a/Flow.Launcher/Images/cancel.png and b/Flow.Launcher/Images/cancel.png differ
diff --git a/Flow.Launcher/Images/close.png b/Flow.Launcher/Images/close.png
index 17c4363ad..2fb501a40 100644
Binary files a/Flow.Launcher/Images/close.png and b/Flow.Launcher/Images/close.png differ
diff --git a/Flow.Launcher/Images/cmd.png b/Flow.Launcher/Images/cmd.png
index 686583653..0ec0122d4 100644
Binary files a/Flow.Launcher/Images/cmd.png and b/Flow.Launcher/Images/cmd.png differ
diff --git a/Flow.Launcher/Images/color.png b/Flow.Launcher/Images/color.png
index da28583b1..a4301c9af 100644
Binary files a/Flow.Launcher/Images/color.png and b/Flow.Launcher/Images/color.png differ
diff --git a/Flow.Launcher/Images/copy.png b/Flow.Launcher/Images/copy.png
index 8f1fca752..bf12c186e 100644
Binary files a/Flow.Launcher/Images/copy.png and b/Flow.Launcher/Images/copy.png differ
diff --git a/Flow.Launcher/Images/down.png b/Flow.Launcher/Images/down.png
index 2349d8917..59d8ac7f3 100644
Binary files a/Flow.Launcher/Images/down.png and b/Flow.Launcher/Images/down.png differ
diff --git a/Flow.Launcher/Images/file.png b/Flow.Launcher/Images/file.png
index 36156767a..63058fd8e 100644
Binary files a/Flow.Launcher/Images/file.png and b/Flow.Launcher/Images/file.png differ
diff --git a/Flow.Launcher/Images/find.png b/Flow.Launcher/Images/find.png
index a3f0be1f5..017ebf5f2 100644
Binary files a/Flow.Launcher/Images/find.png and b/Flow.Launcher/Images/find.png differ
diff --git a/Flow.Launcher/Images/folder.png b/Flow.Launcher/Images/folder.png
index 569fa7049..2ae7250a2 100644
Binary files a/Flow.Launcher/Images/folder.png and b/Flow.Launcher/Images/folder.png differ
diff --git a/Flow.Launcher/Images/history.png b/Flow.Launcher/Images/history.png
index 2a3b72dc4..b298f8c82 100644
Binary files a/Flow.Launcher/Images/history.png and b/Flow.Launcher/Images/history.png differ
diff --git a/Flow.Launcher/Images/image.png b/Flow.Launcher/Images/image.png
index 7fc14c38e..9f26517e8 100644
Binary files a/Flow.Launcher/Images/image.png and b/Flow.Launcher/Images/image.png differ
diff --git a/Flow.Launcher/Images/lock.png b/Flow.Launcher/Images/lock.png
index 4aef7007b..daefde98e 100644
Binary files a/Flow.Launcher/Images/lock.png and b/Flow.Launcher/Images/lock.png differ
diff --git a/Flow.Launcher/Images/logoff.png b/Flow.Launcher/Images/logoff.png
index 0d1378830..4973b66d8 100644
Binary files a/Flow.Launcher/Images/logoff.png and b/Flow.Launcher/Images/logoff.png differ
diff --git a/Flow.Launcher/Images/ok.png b/Flow.Launcher/Images/ok.png
index f2dde98ef..945cceed3 100644
Binary files a/Flow.Launcher/Images/ok.png and b/Flow.Launcher/Images/ok.png differ
diff --git a/Flow.Launcher/Images/open.png b/Flow.Launcher/Images/open.png
index b5c7a0e19..817eb9269 100644
Binary files a/Flow.Launcher/Images/open.png and b/Flow.Launcher/Images/open.png differ
diff --git a/Flow.Launcher/Images/plugin.png b/Flow.Launcher/Images/plugin.png
index 6ff9b8b15..b213f0b04 100644
Binary files a/Flow.Launcher/Images/plugin.png and b/Flow.Launcher/Images/plugin.png differ
diff --git a/Flow.Launcher/Images/recyclebin.png b/Flow.Launcher/Images/recyclebin.png
index 2cc3b0116..878a02189 100644
Binary files a/Flow.Launcher/Images/recyclebin.png and b/Flow.Launcher/Images/recyclebin.png differ
diff --git a/Flow.Launcher/Images/restart.png b/Flow.Launcher/Images/restart.png
index aaa2ee711..ffdb6745e 100644
Binary files a/Flow.Launcher/Images/restart.png and b/Flow.Launcher/Images/restart.png differ
diff --git a/Flow.Launcher/Images/search.png b/Flow.Launcher/Images/search.png
index a3f0be1f5..017ebf5f2 100644
Binary files a/Flow.Launcher/Images/search.png and b/Flow.Launcher/Images/search.png differ
diff --git a/Flow.Launcher/Images/settings.png b/Flow.Launcher/Images/settings.png
index c61729fe0..79691ed95 100644
Binary files a/Flow.Launcher/Images/settings.png and b/Flow.Launcher/Images/settings.png differ
diff --git a/Flow.Launcher/Images/shutdown.png b/Flow.Launcher/Images/shutdown.png
index 7da7a528d..50d157efd 100644
Binary files a/Flow.Launcher/Images/shutdown.png and b/Flow.Launcher/Images/shutdown.png differ
diff --git a/Flow.Launcher/Images/sleep.png b/Flow.Launcher/Images/sleep.png
index 42426286d..3ca80f9fa 100644
Binary files a/Flow.Launcher/Images/sleep.png and b/Flow.Launcher/Images/sleep.png differ
diff --git a/Flow.Launcher/Images/up.png b/Flow.Launcher/Images/up.png
index e68def0b5..6940d80ad 100644
Binary files a/Flow.Launcher/Images/up.png and b/Flow.Launcher/Images/up.png differ
diff --git a/Flow.Launcher/Images/update.png b/Flow.Launcher/Images/update.png
index 6fe579091..3f0b6aa9b 100644
Binary files a/Flow.Launcher/Images/update.png and b/Flow.Launcher/Images/update.png differ
diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml
index ec355a0ac..25de530bc 100644
--- a/Flow.Launcher/Languages/en.xaml
+++ b/Flow.Launcher/Languages/en.xaml
@@ -18,6 +18,9 @@
Copy
Cut
Paste
+ File
+ Folder
+ Text
Game Mode
Suspend the use of Hotkeys.
diff --git a/Flow.Launcher/MainWindow.xaml b/Flow.Launcher/MainWindow.xaml
index 5d26433b5..714fcc53f 100644
--- a/Flow.Launcher/MainWindow.xaml
+++ b/Flow.Launcher/MainWindow.xaml
@@ -175,6 +175,9 @@
Style="{DynamicResource QueryBoxStyle}"
Text="{Binding QueryText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Visibility="Visible">
+
+
+
diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs
index c1d170f9a..366407182 100644
--- a/Flow.Launcher/MainWindow.xaml.cs
+++ b/Flow.Launcher/MainWindow.xaml.cs
@@ -18,6 +18,8 @@ using KeyEventArgs = System.Windows.Input.KeyEventArgs;
using NotifyIcon = System.Windows.Forms.NotifyIcon;
using Flow.Launcher.Infrastructure;
using System.Windows.Media;
+using Flow.Launcher.Infrastructure.Hotkey;
+using Flow.Launcher.Plugin.SharedCommands;
namespace Flow.Launcher
{
@@ -50,7 +52,18 @@ namespace Flow.Launcher
{
InitializeComponent();
}
+ private void OnCopy(object sender, ExecutedRoutedEventArgs e)
+ {
+ if (QueryTextBox.SelectionLength == 0)
+ {
+ _viewModel.ResultCopy(string.Empty);
+ }
+ else if (!string.IsNullOrEmpty(QueryTextBox.Text))
+ {
+ _viewModel.ResultCopy(QueryTextBox.SelectedText);
+ }
+ }
private async void OnClosing(object sender, CancelEventArgs e)
{
_settings.WindowTop = Top;
@@ -59,6 +72,7 @@ namespace Flow.Launcher
_viewModel.Save();
e.Cancel = true;
await PluginManager.DisposePluginsAsync();
+ Notification.Uninstall();
Environment.Exit(0);
}
@@ -498,6 +512,24 @@ namespace Flow.Launcher
e.Handled = true;
}
break;
+ case Key.Back:
+ var specialKeyState = GlobalHotkey.CheckModifiers();
+ if (specialKeyState.CtrlPressed)
+ {
+ if (_viewModel.SelectedIsFromQueryResults()
+ && QueryTextBox.CaretIndex == QueryTextBox.Text.Length)
+ {
+ var queryWithoutActionKeyword =
+ QueryBuilder.Build(QueryTextBox.Text.Trim(), PluginManager.NonGlobalPlugins).Search;
+
+ if (FilesFolders.IsLocationPathString(queryWithoutActionKeyword))
+ {
+ _viewModel.BackspaceCommand.Execute(null);
+ e.Handled = true;
+ }
+ }
+ }
+ break;
default:
break;
diff --git a/Flow.Launcher/Notification.cs b/Flow.Launcher/Notification.cs
index d8f9fd45e..3f5565eeb 100644
--- a/Flow.Launcher/Notification.cs
+++ b/Flow.Launcher/Notification.cs
@@ -1,4 +1,5 @@
using Flow.Launcher.Infrastructure;
+using Microsoft.Toolkit.Uwp.Notifications;
using System;
using System.IO;
using Windows.Data.Xml.Dom;
@@ -8,10 +9,17 @@ namespace Flow.Launcher
{
internal static class Notification
{
+ internal static bool legacy = Environment.OSVersion.Version.Build < 19041;
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Interoperability", "CA1416:Validate platform compatibility", Justification = "")]
+ internal static void Uninstall()
+ {
+ if (!legacy)
+ ToastNotificationManagerCompat.Uninstall();
+ }
+
[System.Diagnostics.CodeAnalysis.SuppressMessage("Interoperability", "CA1416:Validate platform compatibility", Justification = "")]
public static void Show(string title, string subTitle, string iconPath)
{
- var legacy = Environment.OSVersion.Version.Build < 19041;
// Handle notification for win7/8/early win10
if (legacy)
{
@@ -24,13 +32,11 @@ namespace Flow.Launcher
? Path.Combine(Constant.ProgramDirectory, "Images\\app.png")
: iconPath;
- var xml = $"{title}" +
- $"{subTitle}";
- var toastXml = new XmlDocument();
- toastXml.LoadXml(xml);
- var toast = new ToastNotification(toastXml);
- ToastNotificationManager.CreateToastNotifier("Flow Launcher").Show(toast);
-
+ new ToastContentBuilder()
+ .AddText(title, hintMaxLines: 1)
+ .AddText(subTitle)
+ .AddAppLogoOverride(new Uri(Icon))
+ .Show();
}
private static void LegacyShow(string title, string subTitle, string iconPath)
diff --git a/Flow.Launcher/SettingWindow.xaml b/Flow.Launcher/SettingWindow.xaml
index 214c410be..967e4d52b 100644
--- a/Flow.Launcher/SettingWindow.xaml
+++ b/Flow.Launcher/SettingWindow.xaml
@@ -2514,6 +2514,18 @@
Margin="14,14,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Bottom"
+ FontSize="12"
+ Foreground="{DynamicResource Color15B}"
+ TextWrapping="WrapWithOverflow">
+
+
+
+
+
+
+ {
+ var query = QueryBuilder.Build(QueryText.Trim(), PluginManager.NonGlobalPlugins);
+
+ // GetPreviousExistingDirectory does not require trailing '\', otherwise will return empty string
+ var path = FilesFolders.GetPreviousExistingDirectory((_) => true, query.Search.TrimEnd('\\'));
+
+ var actionKeyword = string.IsNullOrEmpty(query.ActionKeyword) ? string.Empty : $"{query.ActionKeyword} ";
+
+ ChangeQueryText($"{actionKeyword}{path}");
+ });
+
LoadContextMenuCommand = new RelayCommand(_ =>
{
if (SelectedIsFromQueryResults())
@@ -398,6 +412,7 @@ namespace Flow.Launcher.ViewModel
public string PluginIconPath { get; set; } = null;
public ICommand EscCommand { get; set; }
+ public ICommand BackspaceCommand { get; set; }
public ICommand SelectNextItemCommand { get; set; }
public ICommand SelectPrevItemCommand { get; set; }
public ICommand SelectNextPageCommand { get; set; }
@@ -410,6 +425,9 @@ namespace Flow.Launcher.ViewModel
public ICommand OpenSettingCommand { get; set; }
public ICommand ReloadPluginDataCommand { get; set; }
public ICommand ClearQueryCommand { get; private set; }
+
+ public ICommand CopyToClipboard { get; set; }
+
public ICommand AutocompleteQueryCommand { get; set; }
public string OpenResultCommandModifiers { get; private set; }
@@ -706,7 +724,11 @@ namespace Flow.Launcher.ViewModel
IcoPath = icon,
SubTitle = subtitle,
PluginDirectory = metadata.PluginDirectory,
- Action = _ => false
+ Action = _ =>
+ {
+ App.API.OpenUrl(metadata.Website);
+ return true;
+ }
};
return menu;
}
@@ -853,6 +875,52 @@ namespace Flow.Launcher.ViewModel
Results.AddResults(resultsForUpdates, token);
}
+ ///
+ /// This is the global copy method for an individual result. If no text is passed,
+ /// the method will work out what is to be copied based on the result, so plugin can offer the text
+ /// to be copied via the result model. If the text is a directory/file path,
+ /// then actual file/folder will be copied instead.
+ /// The result's subtitle text is the default text to be copied
+ ///
+ public void ResultCopy(string stringToCopy)
+ {
+ if (string.IsNullOrEmpty(stringToCopy))
+ {
+ var result = Results.SelectedItem?.Result;
+ if (result != null)
+ {
+ string copyText = string.IsNullOrEmpty(result.CopyText) ? result.SubTitle : result.CopyText;
+ var isFile = File.Exists(copyText);
+ var isFolder = Directory.Exists(copyText);
+ if (isFile || isFolder)
+ {
+ var paths = new StringCollection();
+ paths.Add(copyText);
+
+ Clipboard.SetFileDropList(paths);
+ App.API.ShowMsg(
+ App.API.GetTranslation("copy")
+ +" "
+ + (isFile? App.API.GetTranslation("fileTitle") : App.API.GetTranslation("folderTitle")),
+ App.API.GetTranslation("completedSuccessfully"));
+ }
+ else
+ {
+ Clipboard.SetDataObject(copyText.ToString());
+ App.API.ShowMsg(
+ App.API.GetTranslation("copy")
+ + " "
+ + App.API.GetTranslation("textTitle"),
+ App.API.GetTranslation("completedSuccessfully"));
+ }
+ }
+
+ return;
+ }
+
+ Clipboard.SetDataObject(stringToCopy);
+ }
+
#endregion
}
}
\ No newline at end of file
diff --git a/Flow.Launcher/ViewModel/ResultViewModel.cs b/Flow.Launcher/ViewModel/ResultViewModel.cs
index 908de0c09..4d32d792d 100644
--- a/Flow.Launcher/ViewModel/ResultViewModel.cs
+++ b/Flow.Launcher/ViewModel/ResultViewModel.cs
@@ -7,11 +7,16 @@ using Flow.Launcher.Infrastructure.Logger;
using Flow.Launcher.Infrastructure.UserSettings;
using Flow.Launcher.Plugin;
using System.IO;
+using System.Drawing.Text;
+using System.Collections.Generic;
namespace Flow.Launcher.ViewModel
{
public class ResultViewModel : BaseModel
{
+ private static PrivateFontCollection fontCollection = new();
+ private static Dictionary fonts = new();
+
public ResultViewModel(Result result, Settings settings)
{
if (result != null)
@@ -23,13 +28,29 @@ namespace Flow.Launcher.ViewModel
// Checks if it's a system installed font, which does not require path to be provided.
if (glyph.FontFamily.EndsWith(".ttf") || glyph.FontFamily.EndsWith(".otf"))
{
- var fontPath = Result.Glyph.FontFamily;
- Glyph = Path.IsPathRooted(fontPath)
- ? Result.Glyph
- : Result.Glyph with
+ string fontFamilyPath = glyph.FontFamily;
+
+ if (!Path.IsPathRooted(fontFamilyPath))
+ {
+ fontFamilyPath = Path.Combine(Result.PluginDirectory, fontFamilyPath);
+ }
+
+ if (fonts.ContainsKey(fontFamilyPath))
+ {
+ Glyph = glyph with
{
- FontFamily = Path.Combine(Result.PluginDirectory, fontPath)
+ FontFamily = fonts[fontFamilyPath]
};
+ }
+ else
+ {
+ fontCollection.AddFontFile(fontFamilyPath);
+ fonts[fontFamilyPath] = $"{Path.GetDirectoryName(fontFamilyPath)}/#{fontCollection.Families[^1].Name}";
+ Glyph = glyph with
+ {
+ FontFamily = fonts[fontFamilyPath]
+ };
+ }
}
else
{
diff --git a/Flow.Launcher/ViewModel/ResultsViewModel.cs b/Flow.Launcher/ViewModel/ResultsViewModel.cs
index 01a19d871..db24825d0 100644
--- a/Flow.Launcher/ViewModel/ResultsViewModel.cs
+++ b/Flow.Launcher/ViewModel/ResultsViewModel.cs
@@ -310,4 +310,4 @@ namespace Flow.Launcher.ViewModel
}
}
}
-}
\ No newline at end of file
+}
diff --git a/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/bookmark.png b/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/bookmark.png
index b8aee3564..d68cecea1 100644
Binary files a/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/bookmark.png and b/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/bookmark.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/copylink.png b/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/copylink.png
index 0dee870b6..3218c94c9 100644
Binary files a/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/copylink.png and b/Plugins/Flow.Launcher.Plugin.BrowserBookmark/Images/copylink.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.BrowserBookmark/plugin.json b/Plugins/Flow.Launcher.Plugin.BrowserBookmark/plugin.json
index 3dfa418c7..afc4f9855 100644
--- a/Plugins/Flow.Launcher.Plugin.BrowserBookmark/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.BrowserBookmark/plugin.json
@@ -4,7 +4,7 @@
"Name": "Browser Bookmarks",
"Description": "Search your browser bookmarks",
"Author": "qianlifeng, Ioannis G.",
- "Version": "1.6.2",
+ "Version": "1.6.3",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.BrowserBookmark.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.Calculator/Images/calculator.png b/Plugins/Flow.Launcher.Plugin.Calculator/Images/calculator.png
index 102a86bde..4bdade8b7 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Calculator/Images/calculator.png and b/Plugins/Flow.Launcher.Plugin.Calculator/Images/calculator.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/copy.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/copy.png
index 8f1fca752..26786b11e 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/copy.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/copy.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/deletefilefolder.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/deletefilefolder.png
index 024cc9291..a8e27d342 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/deletefilefolder.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/deletefilefolder.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/excludeindexpath.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/excludeindexpath.png
index 8578ac7fb..19b7025a5 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/excludeindexpath.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/excludeindexpath.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/file.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/file.png
index 36156767a..bf12c186e 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/file.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/file.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/folder.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/folder.png
index 569fa7049..2ae7250a2 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/folder.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/folder.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/index.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/index.png
index c63fc8069..a671dac21 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/index.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/index.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/quickaccess.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/quickaccess.png
index 470a6782f..e3fdeb4f7 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/quickaccess.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/quickaccess.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/removequickaccess.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/removequickaccess.png
index fbfb0b960..0ca287ea3 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/removequickaccess.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/removequickaccess.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Images/user.png b/Plugins/Flow.Launcher.Plugin.Explorer/Images/user.png
index 2d45c1ee9..03402d8e8 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Explorer/Images/user.png and b/Plugins/Flow.Launcher.Plugin.Explorer/Images/user.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/plugin.json b/Plugins/Flow.Launcher.Plugin.Explorer/plugin.json
index a54606182..10be3381d 100644
--- a/Plugins/Flow.Launcher.Plugin.Explorer/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.Explorer/plugin.json
@@ -10,7 +10,7 @@
"Name": "Explorer",
"Description": "Search and manage files and folders. Explorer utilises Windows Index Search",
"Author": "Jeremy Wu",
- "Version": "1.11.1",
+ "Version": "1.11.2",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.Explorer.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.PluginIndicator/Images/work.png b/Plugins/Flow.Launcher.Plugin.PluginIndicator/Images/work.png
index 6ff9b8b15..b213f0b04 100644
Binary files a/Plugins/Flow.Launcher.Plugin.PluginIndicator/Images/work.png and b/Plugins/Flow.Launcher.Plugin.PluginIndicator/Images/work.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/manifestsite.png b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/manifestsite.png
index f96ba15b2..54f3f62fc 100644
Binary files a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/manifestsite.png and b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/manifestsite.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/pluginsmanager.png b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/pluginsmanager.png
index 65f0e41dc..91b3148c5 100644
Binary files a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/pluginsmanager.png and b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/pluginsmanager.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/request.png b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/request.png
index a9126cb9b..a43b87d85 100644
Binary files a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/request.png and b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/request.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/sourcecode.png b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/sourcecode.png
index 8efbdaa48..77afc44f9 100644
Binary files a/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/sourcecode.png and b/Plugins/Flow.Launcher.Plugin.PluginsManager/Images/sourcecode.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.PluginsManager/plugin.json b/Plugins/Flow.Launcher.Plugin.PluginsManager/plugin.json
index c8d5bd8a3..6e74fa9e4 100644
--- a/Plugins/Flow.Launcher.Plugin.PluginsManager/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.PluginsManager/plugin.json
@@ -6,7 +6,7 @@
"Name": "Plugins Manager",
"Description": "Management of installing, uninstalling or updating Flow Launcher plugins",
"Author": "Jeremy Wu",
- "Version": "1.12.0",
+ "Version": "1.12.1",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.PluginsManager.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.ProcessKiller/Images/app.png b/Plugins/Flow.Launcher.Plugin.ProcessKiller/Images/app.png
index fa76a5d29..418086275 100644
Binary files a/Plugins/Flow.Launcher.Plugin.ProcessKiller/Images/app.png and b/Plugins/Flow.Launcher.Plugin.ProcessKiller/Images/app.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.ProcessKiller/plugin.json b/Plugins/Flow.Launcher.Plugin.ProcessKiller/plugin.json
index 9e2d2a065..8e3eb87fe 100644
--- a/Plugins/Flow.Launcher.Plugin.ProcessKiller/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.ProcessKiller/plugin.json
@@ -4,7 +4,7 @@
"Name":"Process Killer",
"Description":"Kill running processes from Flow",
"Author":"Flow-Launcher",
- "Version":"1.2.5",
+ "Version":"1.2.6",
"Language":"csharp",
"Website":"https://github.com/Flow-Launcher/Flow.Launcher.Plugin.ProcessKiller",
"IcoPath":"Images\\app.png",
diff --git a/Plugins/Flow.Launcher.Plugin.Program/Images/cmd.png b/Plugins/Flow.Launcher.Plugin.Program/Images/cmd.png
index 686583653..284e1d371 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Program/Images/cmd.png and b/Plugins/Flow.Launcher.Plugin.Program/Images/cmd.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Program/Images/disable.png b/Plugins/Flow.Launcher.Plugin.Program/Images/disable.png
index e9d4976bc..61bcc97fb 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Program/Images/disable.png and b/Plugins/Flow.Launcher.Plugin.Program/Images/disable.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Program/Images/folder.png b/Plugins/Flow.Launcher.Plugin.Program/Images/folder.png
index 569fa7049..2ae7250a2 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Program/Images/folder.png and b/Plugins/Flow.Launcher.Plugin.Program/Images/folder.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Program/Images/program.png b/Plugins/Flow.Launcher.Plugin.Program/Images/program.png
index e4c789689..ecc91bdb3 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Program/Images/program.png and b/Plugins/Flow.Launcher.Plugin.Program/Images/program.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Program/Images/user.png b/Plugins/Flow.Launcher.Plugin.Program/Images/user.png
index 2d45c1ee9..03402d8e8 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Program/Images/user.png and b/Plugins/Flow.Launcher.Plugin.Program/Images/user.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Program/plugin.json b/Plugins/Flow.Launcher.Plugin.Program/plugin.json
index 29bdcd90d..993b2adba 100644
--- a/Plugins/Flow.Launcher.Plugin.Program/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.Program/plugin.json
@@ -4,7 +4,7 @@
"Name": "Program",
"Description": "Search programs in Flow.Launcher",
"Author": "qianlifeng",
- "Version": "1.8.1",
+ "Version": "1.8.2",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.Program.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Images/admin.png b/Plugins/Flow.Launcher.Plugin.Shell/Images/admin.png
index bc3fe8778..284e1d371 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Shell/Images/admin.png and b/Plugins/Flow.Launcher.Plugin.Shell/Images/admin.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Images/copy.png b/Plugins/Flow.Launcher.Plugin.Shell/Images/copy.png
index cc3bf4ea8..bf12c186e 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Shell/Images/copy.png and b/Plugins/Flow.Launcher.Plugin.Shell/Images/copy.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Images/shell.png b/Plugins/Flow.Launcher.Plugin.Shell/Images/shell.png
index 686583653..0ec0122d4 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Shell/Images/shell.png and b/Plugins/Flow.Launcher.Plugin.Shell/Images/shell.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Images/user.png b/Plugins/Flow.Launcher.Plugin.Shell/Images/user.png
index 2d45c1ee9..03402d8e8 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Shell/Images/user.png and b/Plugins/Flow.Launcher.Plugin.Shell/Images/user.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Shell/plugin.json b/Plugins/Flow.Launcher.Plugin.Shell/plugin.json
index aaad63665..5871432c9 100644
--- a/Plugins/Flow.Launcher.Plugin.Shell/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.Shell/plugin.json
@@ -4,7 +4,7 @@
"Name": "Shell",
"Description": "Provide executing commands from Flow Launcher",
"Author": "qianlifeng",
- "Version": "1.4.9",
+ "Version": "1.4.10",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.Shell.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/checkupdate.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/checkupdate.png
index 955f6fdbb..0eb06af18 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/checkupdate.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/checkupdate.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/close.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/close.png
index 17c4363ad..2fb501a40 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/close.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/close.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/hibernate.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/hibernate.png
index 703204fa7..668048e19 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/hibernate.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/hibernate.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/lock.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/lock.png
index 4aef7007b..daefde98e 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/lock.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/lock.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/logoff.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/logoff.png
index 0d1378830..4973b66d8 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/logoff.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/logoff.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/recyclebin.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/recyclebin.png
index 2cc3b0116..878a02189 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/recyclebin.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/recyclebin.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/restart.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/restart.png
index aaa2ee711..ffdb6745e 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/restart.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/restart.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/restart_advanced.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/restart_advanced.png
index feabbefa1..09257d2c0 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/restart_advanced.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/restart_advanced.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/shutdown.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/shutdown.png
index 7da7a528d..50d157efd 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/shutdown.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/shutdown.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/Images/sleep.png b/Plugins/Flow.Launcher.Plugin.Sys/Images/sleep.png
index 42426286d..3ca80f9fa 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Sys/Images/sleep.png and b/Plugins/Flow.Launcher.Plugin.Sys/Images/sleep.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Sys/plugin.json b/Plugins/Flow.Launcher.Plugin.Sys/plugin.json
index 9c2dcbfff..c9e9c1272 100644
--- a/Plugins/Flow.Launcher.Plugin.Sys/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.Sys/plugin.json
@@ -4,7 +4,7 @@
"Name": "System Commands",
"Description": "Provide System related commands. e.g. shutdown,lock, setting etc.",
"Author": "qianlifeng",
- "Version": "1.6.1",
+ "Version": "1.6.2",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.Sys.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.Url/Images/url.png b/Plugins/Flow.Launcher.Plugin.Url/Images/url.png
index 619d1ad6a..5d475f82e 100644
Binary files a/Plugins/Flow.Launcher.Plugin.Url/Images/url.png and b/Plugins/Flow.Launcher.Plugin.Url/Images/url.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.Url/plugin.json b/Plugins/Flow.Launcher.Plugin.Url/plugin.json
index e128ceafb..0d71232d8e 100644
--- a/Plugins/Flow.Launcher.Plugin.Url/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.Url/plugin.json
@@ -4,7 +4,7 @@
"Name": "URL",
"Description": "Open the typed URL from Flow Launcher",
"Author": "qianlifeng",
- "Version": "1.2.1",
+ "Version": "1.2.2",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.Url.dll",
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/Images/web_search.png b/Plugins/Flow.Launcher.Plugin.WebSearch/Images/web_search.png
index a3f0be1f5..017ebf5f2 100644
Binary files a/Plugins/Flow.Launcher.Plugin.WebSearch/Images/web_search.png and b/Plugins/Flow.Launcher.Plugin.WebSearch/Images/web_search.png differ
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/Main.cs b/Plugins/Flow.Launcher.Plugin.WebSearch/Main.cs
index 31d56c108..2ed412130 100644
--- a/Plugins/Flow.Launcher.Plugin.WebSearch/Main.cs
+++ b/Plugins/Flow.Launcher.Plugin.WebSearch/Main.cs
@@ -41,8 +41,8 @@ namespace Flow.Launcher.Plugin.WebSearch
var results = new List();
foreach (SearchSource searchSource in _settings.SearchSources.Where(o => (o.ActionKeyword == query.ActionKeyword ||
- o.ActionKeyword == SearchSourceGlobalPluginWildCardSign)
- && o.Enabled))
+ o.ActionKeyword == SearchSourceGlobalPluginWildCardSign)
+ && o.Enabled))
{
string keyword = string.Empty;
keyword = searchSource.ActionKeyword == SearchSourceGlobalPluginWildCardSign ? query.ToString() : query.Search;
@@ -105,11 +105,11 @@ namespace Flow.Launcher.Plugin.WebSearch
if (_settings.EnableSuggestion)
{
var suggestions = await SuggestionsAsync(keyword, subtitle, searchSource, token).ConfigureAwait(false);
- if (token.IsCancellationRequested || !suggestions.Any())
+ var enumerable = suggestions?.ToList();
+ if (token.IsCancellationRequested || enumerable is not { Count: > 0 })
return;
-
-
- results.AddRange(suggestions);
+
+ results.AddRange(enumerable);
token.ThrowIfCancellationRequested();
}
@@ -118,32 +118,32 @@ namespace Flow.Launcher.Plugin.WebSearch
private async Task> SuggestionsAsync(string keyword, string subtitle, SearchSource searchSource, CancellationToken token)
{
var source = _settings.SelectedSuggestion;
- if (source != null)
+ if (source == null)
{
- //Suggestions appear below actual result, and appear above global action keyword match if non-global;
- var score = searchSource.ActionKeyword == SearchSourceGlobalPluginWildCardSign ? scoreSuggestions : scoreSuggestions + 1;
-
- var suggestions = await source.Suggestions(keyword, token).ConfigureAwait(false);
-
- token.ThrowIfCancellationRequested();
-
- var resultsFromSuggestion = suggestions?.Select(o => new Result
- {
- Title = o,
- SubTitle = subtitle,
- Score = score,
- IcoPath = searchSource.IconPath,
- ActionKeywordAssigned = searchSource.ActionKeyword == SearchSourceGlobalPluginWildCardSign ? string.Empty : searchSource.ActionKeyword,
- Action = c =>
- {
- _context.API.OpenUrl(searchSource.Url.Replace("{q}", Uri.EscapeDataString(o)));
-
- return true;
- }
- });
- return resultsFromSuggestion;
+ return new List();
}
- return new List();
+ //Suggestions appear below actual result, and appear above global action keyword match if non-global;
+ var score = searchSource.ActionKeyword == SearchSourceGlobalPluginWildCardSign ? scoreSuggestions : scoreSuggestions + 1;
+
+ var suggestions = await source.SuggestionsAsync(keyword, token).ConfigureAwait(false);
+
+ token.ThrowIfCancellationRequested();
+
+ var resultsFromSuggestion = suggestions?.Select(o => new Result
+ {
+ Title = o,
+ SubTitle = subtitle,
+ Score = score,
+ IcoPath = searchSource.IconPath,
+ ActionKeywordAssigned = searchSource.ActionKeyword == SearchSourceGlobalPluginWildCardSign ? string.Empty : searchSource.ActionKeyword,
+ Action = c =>
+ {
+ _context.API.OpenUrl(searchSource.Url.Replace("{q}", Uri.EscapeDataString(o)));
+
+ return true;
+ }
+ });
+ return resultsFromSuggestion;
}
public Task InitAsync(PluginInitContext context)
@@ -191,4 +191,4 @@ namespace Flow.Launcher.Plugin.WebSearch
public event ResultUpdatedEventHandler ResultsUpdated;
}
-}
+}
\ No newline at end of file
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Baidu.cs b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Baidu.cs
index ccb5b20d7..d1fbd4ac5 100644
--- a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Baidu.cs
+++ b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Baidu.cs
@@ -16,7 +16,7 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
{
private readonly Regex _reg = new Regex("window.baidu.sug\\((.*)\\)");
- public override async Task> Suggestions(string query, CancellationToken token)
+ public override async Task> SuggestionsAsync(string query, CancellationToken token)
{
string result;
@@ -25,7 +25,7 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
const string api = "http://suggestion.baidu.com/su?json=1&wd=";
result = await Http.GetAsync(api + Uri.EscapeUriString(query), token).ConfigureAwait(false);
}
- catch (Exception e) when (e is HttpRequestException || e.InnerException is TimeoutException)
+ catch (Exception e) when (e is HttpRequestException or {InnerException: TimeoutException})
{
Log.Exception("|Baidu.Suggestions|Can't get suggestion from baidu", e);
return null;
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Bing.cs b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Bing.cs
index 38c5fb4a0..971fc079c 100644
--- a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Bing.cs
+++ b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Bing.cs
@@ -15,7 +15,7 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
{
class Bing : SuggestionSource
{
- public override async Task> Suggestions(string query, CancellationToken token)
+ public override async Task> SuggestionsAsync(string query, CancellationToken token)
{
try
@@ -40,7 +40,7 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
}
- catch (Exception e) when (e is HttpRequestException || e.InnerException is TimeoutException)
+ catch (Exception e) when (e is HttpRequestException or {InnerException: TimeoutException})
{
Log.Exception("|Baidu.Suggestions|Can't get suggestion from baidu", e);
return null;
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Google.cs b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Google.cs
index c5f43d081..a6c18b1ef 100644
--- a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Google.cs
+++ b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/Google.cs
@@ -14,7 +14,7 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
{
public class Google : SuggestionSource
{
- public override async Task> Suggestions(string query, CancellationToken token)
+ public override async Task> SuggestionsAsync(string query, CancellationToken token)
{
try
{
@@ -32,7 +32,7 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
return results.EnumerateArray().Select(o => o.GetString()).ToList();
}
- catch (Exception e) when (e is HttpRequestException || e.InnerException is TimeoutException)
+ catch (Exception e) when (e is HttpRequestException or {InnerException: TimeoutException})
{
Log.Exception("|Baidu.Suggestions|Can't get suggestion from baidu", e);
return null;
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/SuggestionSource.cs b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/SuggestionSource.cs
index c58e61141..e89addee9 100644
--- a/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/SuggestionSource.cs
+++ b/Plugins/Flow.Launcher.Plugin.WebSearch/SuggestionSources/SuggestionSource.cs
@@ -6,6 +6,6 @@ namespace Flow.Launcher.Plugin.WebSearch.SuggestionSources
{
public abstract class SuggestionSource
{
- public abstract Task> Suggestions(string query, CancellationToken token);
+ public abstract Task> SuggestionsAsync(string query, CancellationToken token);
}
}
diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/plugin.json b/Plugins/Flow.Launcher.Plugin.WebSearch/plugin.json
index 41c642b1f..9239e082c 100644
--- a/Plugins/Flow.Launcher.Plugin.WebSearch/plugin.json
+++ b/Plugins/Flow.Launcher.Plugin.WebSearch/plugin.json
@@ -26,7 +26,7 @@
"Name": "Web Searches",
"Description": "Provide the web search ability",
"Author": "qianlifeng",
- "Version": "1.5.2",
+ "Version": "1.5.3",
"Language": "csharp",
"Website": "https://github.com/Flow-Launcher/Flow.Launcher",
"ExecuteFileName": "Flow.Launcher.Plugin.WebSearch.dll",
diff --git a/README.md b/README.md
index 5e824077a..0066fc6af 100644
--- a/README.md
+++ b/README.md
@@ -51,8 +51,8 @@ Dedicated to making your workflow flow more seamless. Search everything from app
### Installation
-| [Windows 7+ installer](https://github.com/Flow-Launcher/Flow.Launcher/releases/latest/download/Flow-Launcher-Setup.exe) | [Portable](https://github.com/Flow-Launcher/Flow.Launcher/releases/latest/download/Flow-Launcher-Portable.zip) | `WinGet install "Flow Launcher"` |
-| :----------------------------------------------------------: | :----------------------------------------------------------: | :------------------------------: |
+| [Windows 7+ installer](https://github.com/Flow-Launcher/Flow.Launcher/releases/latest/download/Flow-Launcher-Setup.exe) | [Portable](https://github.com/Flow-Launcher/Flow.Launcher/releases/latest/download/Flow-Launcher-Portable.zip) | `winget install "Flow Launcher"` | `scoop install Flow-Launcher` |
+| :----------------------------------------------------------: | :----------------------------------------------------------: | :------------------------------: | :------------------------------: |
> Windows may complain about security due to code not being signed, this will be completed at a later stage. If you downloaded from this repo, you are good to continue the set up.
@@ -215,17 +215,18 @@ And you can download