diff --git a/src/Ryujinx/Input/ControllerAssignmentManager.cs b/src/Ryujinx/Input/ControllerAssignmentManager.cs index 4cc77cbc5..9e8bca7bd 100644 --- a/src/Ryujinx/Input/ControllerAssignmentManager.cs +++ b/src/Ryujinx/Input/ControllerAssignmentManager.cs @@ -140,6 +140,7 @@ namespace Ryujinx.Ava.Input if (orderedConfigs[index] is StandardControllerInputConfig standardConfig) { + if(standardConfig.Led.UseRainbow) continue; Logger.Warning?.Print(LogClass.Application, $"Setting color for Player{index + 1}"); standardConfig.Led = new LedConfigController { diff --git a/src/Ryujinx/UI/ViewModels/Input/InputViewModel.cs b/src/Ryujinx/UI/ViewModels/Input/InputViewModel.cs index db4d66f99..e79a2617a 100644 --- a/src/Ryujinx/UI/ViewModels/Input/InputViewModel.cs +++ b/src/Ryujinx/UI/ViewModels/Input/InputViewModel.cs @@ -387,18 +387,15 @@ namespace Ryujinx.Ava.UI.ViewModels.Input { 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 + + if (!inputConfig.TurnOffLed && !inputConfig.UseRainbowLed) { SelectedGamepad.SetLed(inputConfig.LedColor.ToUInt32()); }