added function to handle gamepad led while in settings; added rainbow color handling in the new function.
This commit is contained in:
parent
fd9bce0f6b
commit
38ecb3d5bc
@ -19,7 +19,6 @@ using Ryujinx.Common.Logging;
|
||||
using Ryujinx.Common.SystemInterop;
|
||||
using Ryujinx.Graphics.Vulkan.MoltenVK;
|
||||
using Ryujinx.Headless;
|
||||
using Ryujinx.Input.SDL2;
|
||||
using Ryujinx.SDL2.Common;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -379,22 +379,31 @@ namespace Ryujinx.Ava.UI.ViewModels.Input
|
||||
LoadDevice();
|
||||
_isLoaded = true;
|
||||
|
||||
if (ConfigViewModel is not ControllerInputViewModel controllerInputViewModel) return;
|
||||
GamepadInputConfig inputConfig = controllerInputViewModel.Config;
|
||||
|
||||
if (inputConfig is not { EnableLedChanging: true }) return;
|
||||
|
||||
if (inputConfig.TurnOffLed)
|
||||
{
|
||||
SelectedGamepad.ClearLed();
|
||||
}
|
||||
else
|
||||
{
|
||||
SelectedGamepad.SetLed(inputConfig.LedColor.ToUInt32());
|
||||
}
|
||||
UpdateGamepadLed();
|
||||
});
|
||||
}
|
||||
|
||||
private void UpdateGamepadLed()
|
||||
{
|
||||
if (ConfigViewModel is not ControllerInputViewModel controllerInputViewModel) return;
|
||||
GamepadInputConfig inputConfig = controllerInputViewModel.Config;
|
||||
|
||||
if (inputConfig is not { EnableLedChanging: true }) return;
|
||||
|
||||
if (inputConfig.TurnOffLed)
|
||||
{
|
||||
SelectedGamepad.ClearLed();
|
||||
}
|
||||
else if(inputConfig.UseRainbowLed)
|
||||
{
|
||||
SelectedGamepad.SetLed((uint)Rainbow.Color.ToArgb());
|
||||
}
|
||||
else
|
||||
{
|
||||
SelectedGamepad.SetLed(inputConfig.LedColor.ToUInt32());
|
||||
}
|
||||
}
|
||||
|
||||
private string GetCurrentGamepadId()
|
||||
{
|
||||
if (_device < 0)
|
||||
|
Loading…
x
Reference in New Issue
Block a user