Assume all 8BitDo Xbox controllers have a share button

Fixes https://github.com/libsdl-org/SDL/issues/8174

(cherry picked from commit 8049af3355975c25bc5ac29ac518893d776a769b)
This commit is contained in:
Sam Lantinga 2023-11-08 00:34:50 -08:00
parent b1807797a3
commit 524ccf033f
2 changed files with 7 additions and 4 deletions

View File

@ -2346,10 +2346,14 @@ SDL_bool SDL_IsJoystickXboxSeriesX(Uint16 vendor_id, Uint16 product_id)
} }
} }
if (vendor_id == USB_VENDOR_8BITDO) { if (vendor_id == USB_VENDOR_8BITDO) {
if (product_id == USB_PRODUCT_8BITDO_XBOX_CONTROLLER) { /* 8BitDo started making Xbox form factor controllers after the Series X
* release, so we'll assume for now that they all have the share button.
*
* We know for sure that the Ultimate Wired Controller for Xbox (0x2002)
* and the Ultimate Wireless / Pro 2 Wired Controller (0x3106) have them.
*/
return SDL_TRUE; return SDL_TRUE;
} }
}
return SDL_FALSE; return SDL_FALSE;
} }

View File

@ -52,7 +52,6 @@
#define USB_VENDOR_VALVE 0x28de #define USB_VENDOR_VALVE 0x28de
#define USB_VENDOR_ZEROPLUS 0x0c12 #define USB_VENDOR_ZEROPLUS 0x0c12
#define USB_PRODUCT_8BITDO_XBOX_CONTROLLER 0x2002
#define USB_PRODUCT_AMAZON_LUNA_CONTROLLER 0x0419 #define USB_PRODUCT_AMAZON_LUNA_CONTROLLER 0x0419
#define USB_PRODUCT_ASTRO_C40_XBOX360 0x0024 #define USB_PRODUCT_ASTRO_C40_XBOX360 0x0024
#define USB_PRODUCT_BACKBONE_ONE_IOS 0x0103 #define USB_PRODUCT_BACKBONE_ONE_IOS 0x0103