mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-12-12 22:36:59 +00:00
Merge branch ryujinx:master into ui-settings-input
This commit is contained in:
commit
ab0571ec2b
2 changed files with 16 additions and 2 deletions
|
|
@ -22,7 +22,7 @@ namespace Ryujinx.Input.SDL3
|
||||||
|
|
||||||
private StandardControllerInputConfig _configuration;
|
private StandardControllerInputConfig _configuration;
|
||||||
|
|
||||||
private static readonly SDL_GamepadButton[] _buttonsDriverMapping =
|
private readonly SDL_GamepadButton[] _buttonsDriverMapping =
|
||||||
[
|
[
|
||||||
// Unbound, ignored.
|
// Unbound, ignored.
|
||||||
SDL_GamepadButton.SDL_GAMEPAD_BUTTON_INVALID,
|
SDL_GamepadButton.SDL_GAMEPAD_BUTTON_INVALID,
|
||||||
|
|
@ -88,6 +88,20 @@ namespace Ryujinx.Input.SDL3
|
||||||
Features = GetFeaturesFlag();
|
Features = GetFeaturesFlag();
|
||||||
_triggerThreshold = 0.0f;
|
_triggerThreshold = 0.0f;
|
||||||
|
|
||||||
|
// Face button mapping
|
||||||
|
SDL_GamepadButton[] faceButtons = _buttonsDriverMapping[1..5];
|
||||||
|
foreach (SDL_GamepadButton btn in faceButtons) {
|
||||||
|
int mapId = SDL_GetGamepadButtonLabel(_gamepadHandle, btn) switch {
|
||||||
|
SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_A or SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_CROSS => 1,
|
||||||
|
SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_B or SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_CIRCLE => 2,
|
||||||
|
SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_X or SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_SQUARE => 3,
|
||||||
|
SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_Y or SDL_GamepadButtonLabel.SDL_GAMEPAD_BUTTON_LABEL_TRIANGLE => 4,
|
||||||
|
_ => -1
|
||||||
|
};
|
||||||
|
if (mapId == -1) { continue; }
|
||||||
|
_buttonsDriverMapping[mapId] = btn;
|
||||||
|
}
|
||||||
|
|
||||||
// Enable motion tracking
|
// Enable motion tracking
|
||||||
if ((Features & GamepadFeaturesFlag.Motion) != 0)
|
if ((Features & GamepadFeaturesFlag.Motion) != 0)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ namespace Ryujinx.Input.SDL3
|
||||||
|
|
||||||
string strGuid = new(guidBytes);
|
string strGuid = new(guidBytes);
|
||||||
|
|
||||||
return $"{strGuid[0..8]}-{strGuid[8..12]}-{strGuid[12..16]}-{strGuid[16..20]}-{strGuid[20..32]}";
|
return $"{strGuid[4..6]}{strGuid[6..8]}{strGuid[2..4]}{strGuid[0..2]}-{strGuid[10..12]}{strGuid[8..10]}-{strGuid[12..16]}-{strGuid[16..20]}-{strGuid[20..32]}";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue