Added the hint SDL_HINT_JOYSTICK_WGI to control whether to use Windows.Gaming.Input for controllers
This commit is contained in:
@@ -559,6 +559,10 @@ static int RAWINPUT_UpdateWindowsGamingInput()
|
||||
}
|
||||
static void RAWINPUT_InitWindowsGamingInput(RAWINPUT_DeviceContext *ctx)
|
||||
{
|
||||
if (!SDL_GetHintBoolean(SDL_HINT_JOYSTICK_WGI, SDL_TRUE)) {
|
||||
return;
|
||||
}
|
||||
|
||||
wgi_state.need_device_list_update = SDL_TRUE;
|
||||
wgi_state.ref_count++;
|
||||
if (!wgi_state.initialized) {
|
||||
@@ -874,12 +878,12 @@ static int RAWINPUT_JoystickInit(void)
|
||||
{
|
||||
SDL_assert(!SDL_RAWINPUT_inited);
|
||||
|
||||
if (!WIN_IsWindowsVistaOrGreater()) {
|
||||
/* According to bug 6400, this doesn't work on Windows XP */
|
||||
return -1;
|
||||
if (!SDL_GetHintBoolean(SDL_HINT_JOYSTICK_RAWINPUT, SDL_TRUE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!SDL_GetHintBoolean(SDL_HINT_JOYSTICK_RAWINPUT, SDL_TRUE)) {
|
||||
if (!WIN_IsWindowsVistaOrGreater()) {
|
||||
/* According to bug 6400, this doesn't work on Windows XP */
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -593,6 +593,10 @@ static int WGI_JoystickInit(void)
|
||||
{
|
||||
HRESULT hr;
|
||||
|
||||
if (!SDL_GetHintBoolean(SDL_HINT_JOYSTICK_WGI, SDL_TRUE)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (FAILED(WIN_RoInitialize())) {
|
||||
return SDL_SetError("RoInitialize() failed");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user