+ new event which fires after a rescan or first start scan, fixes #40

This commit is contained in:
Shaydera
2020-10-08 13:35:22 +02:00
parent a6c4b1f27a
commit 7463f3e65e
3 changed files with 9 additions and 1 deletions

View File

@@ -46,6 +46,7 @@ namespace WowUp.WPF.Services
public event AddonEventHandler AddonInstalled;
public event AddonEventHandler AddonUpdated;
public event AddonStateEventHandler AddonStateChanged;
public event AddonListUpdatedEventHandler AddonListUpdated;
public string BackupPath => Path.Combine(FileUtilities.AppDataPath, BackupFolder);
@@ -175,10 +176,10 @@ namespace WowUp.WPF.Services
{
var newAddons = await ScanAddons(clientType);
addons = UpdateAddons(addons, newAddons);
AddonListUpdated?.Invoke(this, new EventArgs());
}
await SyncAddons(clientType, addons);
return addons;
}
catch(Exception ex)

View File

@@ -10,6 +10,7 @@ namespace WowUp.WPF.Services.Contracts
{
public delegate void AddonEventHandler(object sender, AddonEventArgs e);
public delegate void AddonStateEventHandler(object sender, AddonStateEventArgs e);
public delegate void AddonListUpdatedEventHandler(object sender, EventArgs e);
public interface IAddonService
{
@@ -17,6 +18,7 @@ namespace WowUp.WPF.Services.Contracts
event AddonEventHandler AddonInstalled;
event AddonEventHandler AddonUpdated;
event AddonStateEventHandler AddonStateChanged;
event AddonListUpdatedEventHandler AddonListUpdated;
string BackupPath { get; }

View File

@@ -77,6 +77,11 @@ namespace WowUp.WPF.ViewModels
OnRefresh();
};
_addonService.AddonListUpdated += (sender, args) =>
{
OnRefresh();
};
_sessionService.SessionChanged += (sender, args) =>
{
SelectedClientType = args.SessionState.SelectedClientType;