Workshop - Improves default entry handling in workshop

Core - Modifies the Artemis data folder path based on the build configuration.
Plugins - Adds a confirmation dialog to prompt the user to restart if a plugin requires admin rights.
Startup wizard - Updates the installation progress bar in the startup wizard.
Workshop - Changes category retrieval to be based on EntryType.
Workshop - Adds the ability to include default entries when searching the workshop.
This commit is contained in:
Robert committed 2025-12-08 22:27:18 +01:00
1 parent f0cbc3e561
commit 565647f1ed
19 files changed
+55 -43

No files matched your search

@@ -62,7 +62,6 @@
<ProgressBar Minimum="0"
Maximum="{CompiledBinding TotalEntries}"
Value="{CompiledBinding CurrentEntry.InstallProgress, FallbackValue=0}"
IsIndeterminate="{CompiledBinding CurrentEntry.Enabling, FallbackValue=true}"
Margin="0 0 0 5" />
<TextBlock>
<Run>Currently installing: </Run>
@@ -41,7 +41,7 @@ public partial class DefaultEntriesStepViewModel : WizardStepViewModel
_client = client;
_getDefaultEntryItemViewModel = getDefaultEntryItemViewModel;
_remainingEntries = this.WhenAnyValue(vm => vm.InstalledEntries, vm => vm.TotalEntries)
.Select(t => t.Item2 - t.Item1)
.Select(t => t.Item2 - t.Item1 + 1)
.ToProperty(this, vm => vm.RemainingEntries);
ContinueText = "Install selected entries";
@@ -31,7 +31,6 @@ public partial class DefaultEntryItemViewModel : ActivatableViewModelBase
[Notify] private bool _isInstalled;
[Notify] private bool _shouldInstall;
[Notify] private bool _enabling;
[Notify] private float _installProgress;
public DefaultEntryItemViewModel(ILogger logger, IEntrySummary entry, IWorkshopService workshopService, IWindowService windowService, IPluginManagementService pluginManagementService,
@@ -70,9 +69,7 @@ public partial class DefaultEntryItemViewModel : ActivatableViewModelBase
// If the entry is a plugin, enable the plugin and all features
else if (result.Entry?.EntryType == EntryType.Plugin)
{
Enabling = true;
await EnablePluginAndFeatures(result.Entry);
Enabling = false;
}
return result.IsSuccess;