-
-
Notifications
You must be signed in to change notification settings - Fork 456
Plugin store #740
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
Plugin store #740
Changes from 62 commits
a9476b1
165cbb7
1a43f59
2ca3c6f
71c7ad5
096d142
4bed121
592ea8c
254a906
bec7d62
762df7f
4a4f0bb
0d11b79
2dc8bb3
234816d
5ff1e73
e6c4ca1
e48761a
2d98dcb
579f8c8
c5f1b28
d87d95e
1ca3c6e
8174d54
e5d3424
1e479ed
876d477
4164b46
ccb565e
3d06404
c4f9dcb
0fc1d15
dc6babe
4aae101
757d995
240dd92
736de20
c1b4f32
d47cb78
ec2db30
08f50ea
80a76b0
47749df
e784ea6
1ce3150
52b3579
da12a06
2c96467
a452feb
be0df40
d106f06
4b63d82
21931a8
ead14f2
fd70326
ef01cfe
f6d4736
3bacb3f
82464b7
799ed81
e5a7c86
d1addc7
1a51160
8a59e87
5487834
5610ca3
a7ac7b1
b939f22
63ffb3a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| 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.Text.Json; | ||
| using System.Threading; | ||
| using System.Threading.Tasks; | ||
|
|
||
| namespace Flow.Launcher.Core.ExternalPlugins | ||
| { | ||
| public static class PluginsManifest | ||
| { | ||
| static PluginsManifest() | ||
| { | ||
| UpdateTask = UpdateManifestAsync(); | ||
| } | ||
|
|
||
| public static List<UserPlugin> UserPlugins { get; private set; } = new List<UserPlugin>(); | ||
|
|
||
| public static Task UpdateTask { get; private set; } | ||
|
|
||
| private static readonly SemaphoreSlim manifestUpdateLock = new(1); | ||
|
|
||
| public static Task UpdateManifestAsync() | ||
| { | ||
| if (manifestUpdateLock.CurrentCount == 0) | ||
| { | ||
| return UpdateTask; | ||
| } | ||
|
|
||
| return UpdateTask = DownloadManifestAsync(); | ||
| } | ||
|
|
||
| private async static Task DownloadManifestAsync() | ||
| { | ||
| try | ||
| { | ||
| await manifestUpdateLock.WaitAsync().ConfigureAwait(false); | ||
|
|
||
| await using var jsonStream = await Http.GetStreamAsync("https://raw.githubusercontent.com/Flow-Launcher/Flow.Launcher.PluginsManifest/plugin_api_v2/plugins.json") | ||
| .ConfigureAwait(false); | ||
|
|
||
| UserPlugins = await JsonSerializer.DeserializeAsync<List<UserPlugin>>(jsonStream).ConfigureAwait(false); | ||
| } | ||
| catch (Exception e) | ||
| { | ||
| Log.Exception("|PluginManagement.GetManifest|Encountered error trying to download plugins manifest", e); | ||
|
|
||
| UserPlugins = new List<UserPlugin>(); | ||
| } | ||
| finally | ||
| { | ||
| manifestUpdateLock.Release(); | ||
| } | ||
| } | ||
| } | ||
| } |
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -13,50 +13,60 @@ | |
| <system:String x:Key="iconTraySettings">Settings</system:String> | ||
| <system:String x:Key="iconTrayAbout">About</system:String> | ||
| <system:String x:Key="iconTrayExit">Exit</system:String> | ||
| <system:String x:Key="closeWindow">Close</system:String> | ||
|
|
||
| <!--Setting General--> | ||
| <system:String x:Key="flowlauncher_settings">Flow Launcher Settings</system:String> | ||
| <system:String x:Key="general">General</system:String> | ||
| <system:String x:Key="portableMode">Portable Mode</system:String> | ||
| <system:String x:Key="portableModeToolTIp">Store all settings and user data in a central folder. Compatible with most removeable drives and cloud services.</system:String> | ||
| <system:String x:Key="startFlowLauncherOnSystemStartup">Start Flow Launcher on system startup</system:String> | ||
| <system:String x:Key="hideFlowLauncherWhenLoseFocus">Hide Flow Launcher when focus is lost</system:String> | ||
| <system:String x:Key="dontPromptUpdateMsg">Do not show new version notifications</system:String> | ||
| <system:String x:Key="rememberLastLocation">Remember last launch location</system:String> | ||
| <system:String x:Key="language">Language</system:String> | ||
| <system:String x:Key="lastQueryMode">Last Query Style</system:String> | ||
| <system:String x:Key="lastQueryModeToolTip">Show/Hide previous results when Flow Launcher is reactivated.</system:String> | ||
| <system:String x:Key="LastQueryPreserved">Preserve Last Query</system:String> | ||
| <system:String x:Key="LastQuerySelected">Select last Query</system:String> | ||
| <system:String x:Key="LastQueryEmpty">Empty last Query</system:String> | ||
| <system:String x:Key="maxShowResults">Maximum results shown</system:String> | ||
| <system:String x:Key="ignoreHotkeysOnFullscreen">Ignore hotkeys in fullscreen mode</system:String> | ||
| <system:String x:Key="ignoreHotkeysOnFullscreenToolTip">Disable Flow Launcher activation when a Full screen application is active (Recommended for games).</system:String> | ||
Garulf marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| <system:String x:Key="pythonDirectory">Python Directory</system:String> | ||
| <system:String x:Key="autoUpdates">Auto Update</system:String> | ||
| <system:String x:Key="autoHideScrollBar">Auto Hide Scroll Bar</system:String> | ||
| <system:String x:Key="autoHideScrollBarToolTip">Automatically hides the Settings window scroll bar and show when hover the mouse over it</system:String> | ||
| <system:String x:Key="autoHideScrollBar">Auto Hide Scroll Bar in Setting</system:String> | ||
|
||
| <system:String x:Key="selectPythonDirectory">Select</system:String> | ||
| <system:String x:Key="hideOnStartup">Hide Flow Launcher on startup</system:String> | ||
| <system:String x:Key="hideNotifyIcon">Hide tray icon</system:String> | ||
| <system:String x:Key="querySearchPrecision">Query Search Precision</system:String> | ||
| <system:String x:Key="querySearchPrecisionToolTip">Changes minimum match score required for results.</system:String> | ||
| <system:String x:Key="ShouldUsePinyin">Should Use Pinyin</system:String> | ||
| <system:String x:Key="ShouldUsePinyinToolTip">Allows using Pinyin to search. Pinyin is the standard system of romanized spelling for translating Chinese</system:String> | ||
| <system:String x:Key="shadowEffectNotAllowed">Shadow effect is not allowed while current theme has blur effect enabled</system:String> | ||
|
|
||
| <!--Setting Plugin--> | ||
| <system:String x:Key="plugin">Plugin</system:String> | ||
| <system:String x:Key="plugin">Plugins</system:String> | ||
| <system:String x:Key="browserMorePlugins">Find more plugins</system:String> | ||
| <system:String x:Key="enable">Enable</system:String> | ||
| <system:String x:Key="disable">Disable</system:String> | ||
| <system:String x:Key="actionKeywords">Action keyword:</system:String> | ||
| <system:String x:Key="enable">On</system:String> | ||
| <system:String x:Key="disable">Off</system:String> | ||
| <system:String x:Key="actionKeywords">Action keyword</system:String> | ||
| <system:String x:Key="currentActionKeywords">Current action keyword:</system:String> | ||
| <system:String x:Key="newActionKeyword">New action keyword:</system:String> | ||
| <system:String x:Key="currentPriority">Current Priority:</system:String> | ||
| <system:String x:Key="newPriority">New Priority:</system:String> | ||
| <system:String x:Key="priority">Priority:</system:String> | ||
| <system:String x:Key="priority">Priority</system:String> | ||
| <system:String x:Key="pluginDirectory">Plugin Directory</system:String> | ||
| <system:String x:Key="author">Author</system:String> | ||
| <system:String x:Key="author">Author:</system:String> | ||
| <system:String x:Key="plugin_init_time">Init time:</system:String> | ||
| <system:String x:Key="plugin_query_time">Query time:</system:String> | ||
|
|
||
|
|
||
| <!--Setting Plugin Store--> | ||
| <system:String x:Key="pluginStore">Plugin Store</system:String> | ||
| <system:String x:Key="refresh">Refresh</system:String> | ||
| <system:String x:Key="install">Install</system:String> | ||
|
|
||
| <!--Setting Theme--> | ||
| <system:String x:Key="theme">Theme</system:String> | ||
| <system:String x:Key="browserMoreThemes">Browse for more themes</system:String> | ||
|
|
@@ -67,12 +77,17 @@ | |
| <system:String x:Key="opacity">Opacity</system:String> | ||
| <system:String x:Key="theme_load_failure_path_not_exists">Theme {0} not exists, fallback to default theme</system:String> | ||
| <system:String x:Key="theme_load_failure_parse_error">Fail to load theme {0}, fallback to default theme</system:String> | ||
| <system:String x:Key="ThemeFolder">Theme Folder</system:String> | ||
| <system:String x:Key="OpenThemeFolder">Open Theme Folder</system:String> | ||
|
|
||
| <!--Setting Hotkey--> | ||
| <system:String x:Key="hotkey">Hotkey</system:String> | ||
| <system:String x:Key="flowlauncherHotkey">Flow Launcher Hotkey</system:String> | ||
| <system:String x:Key="flowlauncherHotkeyToolTip">Enter shortcut to show/hide Flow Launcher.</system:String> | ||
| <system:String x:Key="openResultModifiers">Open Result Modifiers</system:String> | ||
| <system:String x:Key="openResultModifiersToolTip">Select a modifier to action results via keyboard.</system:String> | ||
| <system:String x:Key="showOpenResultHotkey">Show Hotkey</system:String> | ||
| <system:String x:Key="showOpenResultHotkeyToolTip">Show result modifier with results.</system:String> | ||
Garulf marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| <system:String x:Key="customQueryHotkey">Custom Query Hotkey</system:String> | ||
| <system:String x:Key="customQuery">Query</system:String> | ||
| <system:String x:Key="delete">Delete</system:String> | ||
|
|
@@ -117,6 +132,7 @@ | |
| <system:String x:Key="documentation">Usage Tips:</system:String> | ||
|
|
||
| <!--Priority Setting Dialog--> | ||
| <system:String x:Key="changePriorityWindow">Change Priority</system:String> | ||
| <system:String x:Key="priority_tips">Greater the number, the higher the result will be ranked. Try setting it as 5. If you want the results to be lower than any other plugin's, provide a negative number</system:String> | ||
| <system:String x:Key="invalidPriority">Please provide an valid integer for Priority!</system:String> | ||
|
|
||
|
|
@@ -180,4 +196,4 @@ | |
| <system:String x:Key="update_flowlauncher_update_files">Update files</system:String> | ||
| <system:String x:Key="update_flowlauncher_update_upadte_description">Update description</system:String> | ||
|
|
||
| </ResourceDictionary> | ||
| </ResourceDictionary> | ||
Uh oh!
There was an error while loading. Please reload this page.