Generalized the raw input controller driver and moved XInput/WGI detection into it for XInput devices

This fixes bad report parsing for various newer Xbox controllers, and this driver is now preferred over XInput, since it handles more than 4 controllers.
This commit is contained in:
Sam Lantinga
2020-11-23 18:24:05 -08:00
parent 0ff5d55a07
commit 5b3616c325
23 changed files with 1804 additions and 1363 deletions

View File

@@ -409,6 +409,11 @@ struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned shor
goto cont;
}
/* XInput devices don't get real HID reports and are better handled by the raw input driver */
if (strstr(device_interface_detail_data->DevicePath, "&ig_") != NULL) {
goto cont;
}
/* Make sure this device is of Setup Class "HIDClass" and has a
driver bound to it. */
/* In the main HIDAPI tree this is a loop which will erroneously open