From a3023493c8d81423ae2c89d008ce518cd36f2ad1 Mon Sep 17 00:00:00 2001 From: MaxLastBreath Date: Fri, 26 Apr 2024 04:20:14 +0300 Subject: [PATCH] Get Keyboard Inputs outside of the controller loop. - Moved GetHLEKeyboardInput outside of the controller loop. - Made GetHLEKeyboardInput public static from public --- src/Ryujinx.Input/HLE/NpadController.cs | 2 +- src/Ryujinx.Input/HLE/NpadManager.cs | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Ryujinx.Input/HLE/NpadController.cs b/src/Ryujinx.Input/HLE/NpadController.cs index 6b802157d7..834c3d3115 100644 --- a/src/Ryujinx.Input/HLE/NpadController.cs +++ b/src/Ryujinx.Input/HLE/NpadController.cs @@ -487,7 +487,7 @@ namespace Ryujinx.Input.HLE return value; } - public KeyboardInput? GetHLEKeyboardInput(IGamepadDriver KeyboardDriver) + public static KeyboardInput? GetHLEKeyboardInput(IGamepadDriver KeyboardDriver) { var keyboard = KeyboardDriver.GetGamepad("0") as IKeyboard; diff --git a/src/Ryujinx.Input/HLE/NpadManager.cs b/src/Ryujinx.Input/HLE/NpadManager.cs index a0ace67a72..af37e6a0a3 100644 --- a/src/Ryujinx.Input/HLE/NpadManager.cs +++ b/src/Ryujinx.Input/HLE/NpadManager.cs @@ -232,10 +232,6 @@ namespace Ryujinx.Input.HLE motionState = (controller.GetHLEMotionState(), altMotionState); - if (_enableKeyboard) - { - hleKeyboardInput = controller.GetHLEKeyboardInput(_keyboardDriver); - } } else { @@ -257,6 +253,11 @@ namespace Ryujinx.Input.HLE } } + if (!_blockInputUpdates && _enableKeyboard) + { + hleKeyboardInput = NpadController.GetHLEKeyboardInput(_keyboardDriver); + } + _device.Hid.Npads.Update(hleInputStates); _device.Hid.Npads.UpdateSixAxis(hleMotionStates);