From 8ab907baa67771b0e377b555922c4c155b07de72 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 18 Jun 2019 14:24:26 -0700 Subject: [PATCH] Only warp the mouse to set focus if we're definitely going into relative mode --- src/events/SDL_mouse.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/events/SDL_mouse.c b/src/events/SDL_mouse.c index 7c0927238f068..d63f00cc80af9 100644 --- a/src/events/SDL_mouse.c +++ b/src/events/SDL_mouse.c @@ -785,14 +785,6 @@ SDL_SetRelativeMouseMode(SDL_bool enabled) return 0; } - if (enabled && focusWindow) { - /* Center it in the focused window to prevent clicks from going through - * to background windows. - */ - SDL_SetMouseFocus(focusWindow); - SDL_WarpMouseInWindow(focusWindow, focusWindow->w/2, focusWindow->h/2); - } - /* Set the relative mode */ if (!enabled && mouse->relative_mode_warp) { mouse->relative_mode_warp = SDL_FALSE; @@ -811,6 +803,14 @@ SDL_SetRelativeMouseMode(SDL_bool enabled) mouse->scale_accum_x = 0.0f; mouse->scale_accum_y = 0.0f; + if (enabled && focusWindow) { + /* Center it in the focused window to prevent clicks from going through + * to background windows. + */ + SDL_SetMouseFocus(focusWindow); + SDL_WarpMouseInWindow(focusWindow, focusWindow->w/2, focusWindow->h/2); + } + if (mouse->focus) { SDL_UpdateWindowGrab(mouse->focus);