From 7291987ece532b4bd68c8bd00d7c7a3fa0943645 Mon Sep 17 00:00:00 2001 From: AL2009man <67606569+AL2009man@users.noreply.github.com> Date: Fri, 7 Mar 2025 14:34:54 -0500 Subject: [PATCH] Moving all Gamepad Hotplug changes to separate branch To ensure all Hotplug-related changes don't accidentally get leftover: this commit will revert all the back back to the accidental removal of Button Label's note. --- UnleashedRecomp/hid/driver/sdl_hid.cpp | 39 +------------------------- 1 file changed, 1 insertion(+), 38 deletions(-) diff --git a/UnleashedRecomp/hid/driver/sdl_hid.cpp b/UnleashedRecomp/hid/driver/sdl_hid.cpp index 3ca65ac2..c9515263 100644 --- a/UnleashedRecomp/hid/driver/sdl_hid.cpp +++ b/UnleashedRecomp/hid/driver/sdl_hid.cpp @@ -74,12 +74,6 @@ public: return controller; } - void ClearState() - { - memset(&state, 0, sizeof(state)); - } - - void PollAxis() { if (!CanPoll()) @@ -179,11 +173,6 @@ inline Controller* FindController(int which) static void SetControllerInputDevice(Controller* controller) { - if (g_activeController && g_activeController != controller) - { - g_activeController->ClearState(); - } - g_activeController = controller; if (App::s_isLoading) @@ -208,14 +197,9 @@ static void SetControllerTimeOfDayLED(Controller& controller, bool isNight) auto g = isNight ? 0 : 37; auto b = isNight ? 101 : 184; - // Ensure the lightbar is set correctly - if (SDL_GameControllerHasLED(controller.controller)) - { - SDL_GameControllerSetLED(controller.controller, r, g, b); - } + controller.SetLED(r, g, b); } - int HID_OnSDLEvent(void*, SDL_Event* event) { switch (event->type) @@ -231,12 +215,6 @@ int HID_OnSDLEvent(void*, SDL_Event* event) g_controllers[freeIndex] = controller; SetControllerTimeOfDayLED(controller, App::s_isWerehog); - - // Ensure Player 1's controller is always the active controller - if (freeIndex == 0) - { - SetControllerInputDevice(&g_controllers[0]); - } } break; @@ -249,19 +227,6 @@ int HID_OnSDLEvent(void*, SDL_Event* event) if (controller) controller->Close(); - // If Player 1's controller is removed, set the next available controller as active - if (controller == &g_controllers[0]) - { - for (auto& ctrl : g_controllers) - { - if (ctrl.CanPoll()) - { - SetControllerInputDevice(&ctrl); - break; - } - } - } - break; } @@ -337,8 +302,6 @@ int HID_OnSDLEvent(void*, SDL_Event* event) return 0; } - - void hid::Init() { SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1");