Device providers - Fixed an issue removing device providers

Surface auto-arrange - Fixed a crash when arranging with no devices
This commit is contained in:
Robert committed 2021-02-25 20:40:04 +01:00
1 parent a9d6b17aa4
commit af4bf79936
2 files changed
+7 -2

No files matched your search

+2 -2
View File
@@ -74,7 +74,7 @@ namespace Artemis.Core.Services
_modifyingProviders = true;
List<ArtemisDevice> toRemove = _devices.Where(a => deviceProvider.Devices.Any(d => a.RgbDevice == d)).ToList();
Surface.Detach(deviceProvider.Devices);
Surface.Detach(toRemove.Select(d => d.RgbDevice));
foreach (ArtemisDevice device in toRemove)
RemoveDevice(device);
@@ -118,7 +118,7 @@ namespace Artemis.Core.Services
_modifyingProviders = true;
List<ArtemisDevice> toRemove = _devices.Where(a => deviceProvider.Devices.Any(d => a.RgbDevice == d)).ToList();
Surface.Detach(deviceProvider.Devices);
Surface.Detach(toRemove.Select(d => d.RgbDevice));
foreach (ArtemisDevice device in toRemove)
RemoveDevice(device);
@@ -79,6 +79,11 @@ namespace Artemis.Core.Services.Models
public void Arrange(List<ArtemisDevice> devices)
{
ArrangedDevices.Clear();
// Not much to do here
if (!devices.Any())
return;
foreach (ArtemisDevice surfaceDevice in devices)
{
surfaceDevice.X = 0;