Browse Source

Don't try to interpret Xbox controllers as raw HID devices on Windows

These generate fake reports which don't include separate trigger axes, and the HIDAPI joystick driver doesn't understand this report format.
Sam Lantinga 1 year ago
parent
commit
b6a88b0339
1 changed files with 5 additions and 0 deletions
  1. 5 0
      src/hidapi/windows/hid.c

+ 5 - 0
src/hidapi/windows/hid.c

@@ -884,6 +884,11 @@ struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned shor
 		HANDLE device_handle = INVALID_HANDLE_VALUE;
 		HIDD_ATTRIBUTES attrib;
 
+        /* XInput devices don't get real HID reports and are better handled by the raw input driver */
+        if (wcsstr(device_interface, L"&IG_") != NULL) {
+            continue;
+        }
+
 		/* Open read-only handle to the device */
 		device_handle = open_device(device_interface, FALSE);