You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Improve detection of gamepads on Linux
Some devices (Nintendo Switch Right Joy-Con) report only a right stick.
This commit is contained in:
@@ -333,8 +333,9 @@ void JoypadLinux::open_joypad(const char *p_path) {
|
||||
}
|
||||
|
||||
// Check if the device supports basic gamepad events
|
||||
if (!(test_bit(EV_KEY, evbit) && test_bit(EV_ABS, evbit) &&
|
||||
test_bit(ABS_X, absbit) && test_bit(ABS_Y, absbit))) {
|
||||
bool has_abs_left = (test_bit(ABS_X, absbit) && test_bit(ABS_Y, absbit));
|
||||
bool has_abs_right = (test_bit(ABS_RX, absbit) && test_bit(ABS_RY, absbit));
|
||||
if (!(test_bit(EV_KEY, evbit) && test_bit(EV_ABS, evbit) && (has_abs_left || has_abs_right))) {
|
||||
close(fd);
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user