Fix initialize GLFW's Joystick subsystem before window is created on Desktop platforms (#1554) (#1572)

This commit is contained in:
Gil Barbosa Reis 2021-02-07 16:49:37 -03:00 committed by GitHub
parent 090c790e50
commit 9081defd46
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -3329,6 +3329,20 @@ static bool InitGraphicsDevice(int width, int height)
#endif
}
#if defined(PLATFORM_DESKTOP)
// NOTE: GLFW 3.4+ defers initialization of the Joystick subsystem on the
// first call to any Joystick related functions. Forcing this
// initialization here avoids doing it on `PollInputEvents` called by
// `EndDrawing` after first frame has been just drawn. The initialization
// will still happen and possible delays still occur, but before the window
// is shown, which is a nicer experience.
// Ref: https://github.com/raysan5/raylib/issues/1554
if (MAX_GAMEPADS > 0)
{
glfwSetJoystickCallback(NULL);
}
#endif // PLATFORM_DESKTOP
if (CORE.Window.fullscreen)
{
// remember center for switchinging from fullscreen to window