From 244d0ad85483787af96cc1b862649a0735693554 Mon Sep 17 00:00:00 2001 From: Manuel Alfayate Corchete Date: Tue, 8 Sep 2020 15:30:45 +0200 Subject: [PATCH] kmsdrm: Tell SDL that mouse has entered the window via artificial event. Fixes sticky mouse in Scummvm. --- src/video/kmsdrm/SDL_kmsdrmvideo.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/video/kmsdrm/SDL_kmsdrmvideo.c b/src/video/kmsdrm/SDL_kmsdrmvideo.c index 54162b6bc..fba1d14c6 100644 --- a/src/video/kmsdrm/SDL_kmsdrmvideo.c +++ b/src/video/kmsdrm/SDL_kmsdrmvideo.c @@ -1643,6 +1643,15 @@ KMSDRM_CreateWindow(_THIS, SDL_Window * window) SDL_SetMouseFocus(window); SDL_SetKeyboardFocus(window); + /***********************************************************/ + /* Tell SDL that the mouse has entered the window using an */ + /* artificial event: we have no windowing system to tell */ + /* SDL that it has happened. This makes SDL set the */ + /* SDL_WINDOW_MOUSE_FOCUS on this window, thus fixing */ + /* Scummvm sticky-on-sides software cursor. */ + /***********************************************************/ + SDL_SendWindowEvent(window, SDL_WINDOWEVENT_ENTER, 0, 0); + return 0; error: