Add: [SDL2] Driver parameter 'no_mouse_capture' to ease interactive debugging (#12336)

This commit is contained in:
frosch 2024-03-23 20:48:26 +01:00 committed by GitHub
parent 0f25eaa271
commit 603154899a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 9 additions and 0 deletions

View File

@ -534,6 +534,15 @@ const char *VideoDriver_SDL_Base::Start(const StringList &param)
const char *error = this->Initialize();
if (error != nullptr) return error;
#ifdef SDL_HINT_MOUSE_AUTO_CAPTURE
if (GetDriverParamBool(param, "no_mouse_capture")) {
/* By default SDL captures the mouse, while a button is pressed.
* This is annoying during debugging, when OpenTTD is suspended while the button was pressed.
*/
if (!SDL_SetHint(SDL_HINT_MOUSE_AUTO_CAPTURE, "0")) return SDL_GetError();
}
#endif
this->startup_display = FindStartupDisplay(GetDriverParamInt(param, "display", -1));
if (!CreateMainSurface(_cur_resolution.width, _cur_resolution.height, false)) {