-
-
Notifications
You must be signed in to change notification settings - Fork 24.8k
Laptop touchpads are seen as gamepads #59250
Description
Godot version
4.0-alpha4
System information
Linux - Manjaro 21.2.5
Issue description
In Godot 4.0-alpha4, my laptop's touchpads are seen as gamepads. When no actual controllers are attached to my laptop, functions and signals such as Input.get_connected_joypads() and Input.joy_connection_changed.connect see two existing devices. When I add real controllers, they are assigned device ids from 2 and up. In contrast, this is not the case in Godot 3.4.3.
Godot 3 output at start
[blank]
Godot 3 output when I connect a Xbox 360
0 Xbox 360 Controller
Godot 4 output at start
0 SYNA8008:00 06CB:CE58 Touchpad
1 ELAN901C:00 04F3:2C29
Godot 4 output when I connect a Xbox 360
2 Xbox 360 Controller
Note that if the Xbox controller is connected when I launch the "game", it is seen with device id = 0.
A tool such as gamepad-tool yields the same results as Godot 3 (no additional devices detected).
Steps to reproduce
Create an empty project with a single Node2D and the following script attached
extends Node2D
func _ready():
Input.joy_connection_changed.connect(self._on_joy_connection_changed)
for device in Input.get_connected_joypads():
print(device, " ", Input.get_joy_name(device))
func _on_joy_connection_changed(device, connected):
print(device, " ", Input.get_joy_name(device))
Minimal reproduction project
No response