Simplify keyboard input cleanup paths

This commit is contained in:
Babib3l
2026-03-22 00:40:45 +01:00
parent e4b920002f
commit d1464eb5f2
7 changed files with 167 additions and 196 deletions

View File

@@ -1,6 +1,5 @@
using Ryujinx.Common.Configuration.Hid;
using Ryujinx.Common.Configuration.Hid.Keyboard;
using Ryujinx.Common.Logging;
using System;
using System.Collections.Generic;
using System.Numerics;
@@ -15,10 +14,6 @@ namespace Ryujinx.Input.SDL3
class SDL3Keyboard : IKeyboard
{
private readonly Lock _userMappingLock = new();
#pragma warning disable IDE0052 // Remove unread private member
private readonly SDL3KeyboardDriver _driver;
#pragma warning restore IDE0052
private StandardKeyboardInputConfig _configuration;
private readonly List<KeyboardInputMappingHelper.KeyboardButtonMapping> _buttonsUserMapping;
@@ -165,9 +160,8 @@ namespace Ryujinx.Input.SDL3
SDL_Keycode.SDLK_0
];
public SDL3Keyboard(SDL3KeyboardDriver driver, string id, string name)
public SDL3Keyboard(string id, string name)
{
_driver = driver;
Id = id;
Name = name;
_buttonsUserMapping = [];
@@ -329,7 +323,7 @@ namespace Ryujinx.Input.SDL3
public void SetLed(uint packedRgb)
{
Logger.Info?.Print(LogClass.UI, "SetLed called on an SDL3Keyboard");
// Keyboard LEDs are not supported by this backend.
}
public void SetTriggerThreshold(float triggerThreshold)

View File

@@ -4,7 +4,7 @@ using System.Collections.Generic;
namespace Ryujinx.Input.SDL3
{
public class SDL3KeyboardDriver : IKeyboardModeDriver
public class SDL3KeyboardDriver : IGamepadDriver
{
public SDL3KeyboardDriver()
{
@@ -44,18 +44,13 @@ namespace Ryujinx.Input.SDL3
}
public IGamepad GetGamepad(string id)
{
return GetKeyboard(id, KeyboardInputMode.Semantic);
}
public IKeyboard GetKeyboard(string id, KeyboardInputMode mode)
{
if (!_keyboardIdentifers[0].Equals(id))
{
return null;
}
return new SDL3Keyboard(this, _keyboardIdentifers[0], "All keyboards");
return new SDL3Keyboard(_keyboardIdentifers[0], "All keyboards");
}
public IEnumerable<IGamepad> GetGamepads()