-
-
Notifications
You must be signed in to change notification settings - Fork 74
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Added code for the new extension store * Test * Turned Mnemonic off for all controls supporting it (#158) (#159) Co-authored-by: Develeon64 <software@develeon.de> * Feature/check if a instance of macro deck is already running and show main window if (#162) * First non-working test * Switched pipe process spawn to STAThread (#161) * Added SynchronizationContext to prevent thread issues in the ui * Added SynchronizationContext to prevent thread issues in the ui * Fixed: tray icon was shown multiple times when Macro Deck was started while running Co-authored-by: RecklessBoon <16234384+RecklessBoon@users.noreply.github.com> * Fixed: main Window not shown * Fixed #155 (#163) * Fixed #145 (#164) * Added syntax highlighting * Syntax highlight improvements (#165) * syntax highlighting whole words allow returns in Cottle readable colours * renamed variables * Added option to turn on/off blank line trimming Added auto complete Added highlighting for variables * Feature/template editor syntax highlighting (#166) * Added syntax highlighting * Syntax highlight improvements (#165) * syntax highlighting whole words allow returns in Cottle readable colours * renamed variables * Added option to turn on/off blank line trimming Added auto complete Added highlighting for variables Co-authored-by: Will <54237626+PhoenixWyllow@users.noreply.github.com> * Added option to turn on/off blank line trimming * Updated the plugin api * Feature/offline plugin installation (#173) * Feature/offline plugin installation (#168) * Adds feature to install plugin from zip - Extracted code that installs from zip to separate func - Enhanced Manifest to create itself from a file - Added GUI for picking and installing local zip - Needs UI improvement, but it works for now * Improves manual plugin install GUI * Added ExtensionManifest Co-authored-by: RecklessBoon <16234384+RecklessBoon@users.noreply.github.com> * Update Spanish.xml (#172) * Feature/extension store (#174) * Fixed: plugin and extension manifest was not loaded * Fixed the url for the updater * Re-added the check of the md5 hash of downloaded extensions * Feature/extension store (#176) * Fixed: plugin and extension manifest was not loaded * Fixed the url for the updater * Re-added the check of the md5 hash of downloaded extensions * Fixed download counter * Added Guid (#177) * Feature/icon pack rewrite (#179) * Begin of the rewrite of the icon system Added converter for old icon packs * Fixed GIFs * Added local websocket server for usb connections in the future Now sending the IconBase64 directly in the button object again * Added message box * Added backup for the new icon pack format * Icon packs can be configured in the extension manager * Added icon pack export * Added icon pack import * Added icon packs to the extension store * Added icon packs to the extension store * Fixed missing icon when button state = on * Fixed installation for icon packs from the extension store * Fixed installation for icon packs from the extension store * Fixed ExtensionIcon for icon packs * Removed plugin and icon pack selection in the initial setup; Added download count for icon packs; changed version to 2.9.0 * Fixed error when searching for extension updates * Fixed bug that prevented the Extension Store from load (#181) * Fixed bug that prevented the Extension Store from load (#183) * Update templates (#184) * Update bug_report.md * Update issue templates * Changed translation files to json * Update README.md * Update Crowdin configuration file * Update Crowdin configuration file * Update Crowdin configuration file * Delete crowdin.yml * Improved the design of the extension manager and added missing translations * Improved the design of the extension manager and added missing translations (#186) * Improved the ui of the button editor * Removed untranslated strings * Update README.md * Update README.md * Added save varible to file action * Added Hungarian translation by @maketrue * Update English.json (POEditor.com) * Update Finnish.json (POEditor.com) * Update French.json (POEditor.com) * Update German.json (POEditor.com) * Update Italian.json (POEditor.com) * Update Korean.json (POEditor.com) * Update Portuguese.json (POEditor.com) * Update Russian.json (POEditor.com) * Update Spanish.json (POEditor.com) * Update Turkish.json (POEditor.com) * Update Hungarian.json (POEditor.com) * Added "Polish" translation by @kali * Added translation support for Save variable to file action * Updated translation files * Fixed duplicate icon pack after icon pack update * Fixes missing Author issue (#196) * Replaced WebView2 with CefSharp (#197) Co-authored-by: Manuel Mayer <suchbyte@hotmail.com> * Fixed error label positition when resize * Fixed error label positition when resize * Updated version * Fixed crash if Microsoft Visual C++ Redistributable is not installed Co-authored-by: Develeon64 <software@develeon.de> Co-authored-by: RecklessBoon <16234384+RecklessBoon@users.noreply.github.com> Co-authored-by: Will <54237626+PhoenixWyllow@users.noreply.github.com> Co-authored-by: l69lAnthony <91178943+l69lAnthony@users.noreply.github.com> Co-authored-by: Manuel Mayer <suchbyte@hotmail.com>
- Loading branch information
1 parent
21275c8
commit e1a69b6
Showing
188 changed files
with
8,945 additions
and
6,326 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
using SuchByte.MacroDeck.ExtensionStore; | ||
using System; | ||
using System.Collections.Generic; | ||
using System.Text; | ||
|
||
namespace SuchByte.MacroDeck.Extension | ||
{ | ||
public interface IMacroDeckExtension | ||
{ | ||
public ExtensionType ExtensionType { get; } | ||
public string ExtensionTypeDisplayName { get; } | ||
public object ExtensionObject { get; } | ||
public bool Configurable { get; } | ||
public void Uninstall(); | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
using SuchByte.MacroDeck.ExtensionStore; | ||
using SuchByte.MacroDeck.Icons; | ||
using SuchByte.MacroDeck.Language; | ||
using System; | ||
using System.Collections.Generic; | ||
using System.Text; | ||
|
||
namespace SuchByte.MacroDeck.Extension | ||
{ | ||
public class IconPackExtension : IMacroDeckExtension | ||
{ | ||
public ExtensionType ExtensionType => ExtensionType.IconPack; | ||
public string ExtensionTypeDisplayName => LanguageManager.Strings.IconPack; | ||
public object ExtensionObject { get; set; } | ||
public bool Configurable => false; | ||
|
||
public IconPackExtension(IconPack iconPack) | ||
{ | ||
this.ExtensionObject = iconPack; | ||
} | ||
|
||
public void Uninstall() | ||
{ | ||
|
||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
using SuchByte.MacroDeck.ExtensionStore; | ||
using SuchByte.MacroDeck.Language; | ||
using SuchByte.MacroDeck.Plugins; | ||
using System; | ||
using System.Collections.Generic; | ||
using System.Text; | ||
|
||
namespace SuchByte.MacroDeck.Extension | ||
{ | ||
public class PluginExtension : IMacroDeckExtension | ||
{ | ||
public ExtensionType ExtensionType => ExtensionType.Plugin; | ||
public string ExtensionTypeDisplayName => LanguageManager.Strings.Plugin; | ||
public object ExtensionObject { get; set; } | ||
|
||
public bool Configurable => this.ExtensionObject != null && (this.ExtensionObject as MacroDeckPlugin).CanConfigure; | ||
|
||
public PluginExtension(MacroDeckPlugin macroDeckPlugin) | ||
{ | ||
this.ExtensionObject = macroDeckPlugin; | ||
} | ||
|
||
public void Uninstall() | ||
{ | ||
|
||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
using SuchByte.MacroDeck.GUI.Dialogs; | ||
using SuchByte.MacroDeck.Icons; | ||
using SuchByte.MacroDeck.Model; | ||
using SuchByte.MacroDeck.Plugins; | ||
using System; | ||
using System.Collections.Generic; | ||
using System.IO; | ||
using System.Text; | ||
using System.Threading.Tasks; | ||
|
||
namespace SuchByte.MacroDeck.ExtensionStore | ||
{ | ||
public class ExtensionStoreHelper | ||
{ | ||
public static event EventHandler OnUpdateCheckFinished; | ||
|
||
private static ExtensionStoreDownloader extensionStoreDownloader; | ||
|
||
public static void InstallPluginById(string packageId) | ||
{ | ||
InstallPackages(new List<ExtensionStoreDownloaderPackageInfoModel> { new ExtensionStoreDownloaderPackageInfoModel() { PackageId = packageId, ExtensionType = ExtensionType.Plugin } }); | ||
} | ||
|
||
public static void InstallIconPackById(string packageId) | ||
{ | ||
InstallPackages(new List<ExtensionStoreDownloaderPackageInfoModel> { new ExtensionStoreDownloaderPackageInfoModel() { PackageId = packageId, ExtensionType = ExtensionType.IconPack } }); | ||
} | ||
|
||
internal static void InstallById(string packageId) | ||
{ | ||
InstallPackages(new List<ExtensionStoreDownloaderPackageInfoModel> { new ExtensionStoreDownloaderPackageInfoModel() { PackageId = packageId } }); | ||
} | ||
|
||
public static void InstallPackages(List<ExtensionStoreDownloaderPackageInfoModel> packages) | ||
{ | ||
if (MacroDeck.MainWindow == null) return; | ||
MacroDeck.MainWindow.Invoke(new Action(() => | ||
{ | ||
extensionStoreDownloader = new ExtensionStoreDownloader(packages) | ||
{ | ||
Owner = MacroDeck.MainWindow, | ||
}; | ||
extensionStoreDownloader.Show(); | ||
})); | ||
} | ||
|
||
public static string GetPackageId(MacroDeckPlugin macroDeckPlugin) | ||
{ | ||
return new DirectoryInfo(PluginManager.PluginDirectories[macroDeckPlugin]).Name; | ||
} | ||
|
||
public static void SearchUpdatesAsync() | ||
{ | ||
PluginManager.PluginsUpdateAvailable.Clear(); | ||
IconManager.IconPacksUpdateAvailable.Clear(); | ||
Task.Run(() => | ||
{ | ||
foreach (MacroDeckPlugin plugin in PluginManager.Plugins.Values) | ||
{ | ||
PluginManager.SearchUpdate(plugin); | ||
} | ||
foreach (MacroDeckPlugin plugin in PluginManager.PluginsNotLoaded.Values) | ||
{ | ||
PluginManager.SearchUpdate(plugin); | ||
} | ||
foreach (IconPack iconPack in IconManager.IconPacks.FindAll(iP => iP.ExtensionStoreManaged && !iP.Hidden)) | ||
{ | ||
IconManager.SearchUpdate(iconPack); | ||
} | ||
|
||
if (OnUpdateCheckFinished != null) | ||
{ | ||
OnUpdateCheckFinished(null, EventArgs.Empty); | ||
} | ||
}); | ||
} | ||
|
||
|
||
|
||
public static string InstalledIconPacksAsString | ||
{ | ||
get | ||
{ | ||
string installedPlugins = ""; | ||
foreach (var iconPack in IconManager.IconPacks.FindAll(x => x.ExtensionStoreManaged)) | ||
{ | ||
installedPlugins += $"{iconPack.PackageId.ToLower()}%20"; | ||
} | ||
|
||
return installedPlugins; | ||
} | ||
} | ||
|
||
public static string InstalledPluginsAsString | ||
{ | ||
get | ||
{ | ||
string installedPlugins = ""; | ||
foreach (var path in PluginManager.PluginDirectories.Values) | ||
{ | ||
installedPlugins += $"{new DirectoryInfo(path).Name.ToLower()}%20"; | ||
} | ||
|
||
return installedPlugins; | ||
} | ||
} | ||
} | ||
|
||
public enum ExtensionType | ||
{ | ||
Plugin, | ||
IconPack, | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.