diff --git a/app/streaming/video/ffmpeg-renderers/sdlvid.cpp b/app/streaming/video/ffmpeg-renderers/sdlvid.cpp index 182cd81f..15a8cd3b 100644 --- a/app/streaming/video/ffmpeg-renderers/sdlvid.cpp +++ b/app/streaming/video/ffmpeg-renderers/sdlvid.cpp @@ -168,6 +168,15 @@ bool SdlRenderer::initialize(SDL_Window* window, return false; } +#ifdef Q_OS_WIN32 + // For some reason, using Direct3D9Ex breaks this with multi-monitor setups. + // When focus is lost, the window is minimized then immediately restored without + // input focus. This glitches out the renderer and a bunch of other stuff. + // Direct3D9Ex itself seems to have this minimize on focus loss behavior on its + // own, so just disable SDL's handling of the focus loss event. + SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0"); +#endif + return true; } diff --git a/libs/windows/lib/x64/SDL2.dll b/libs/windows/lib/x64/SDL2.dll index 9dfedb40..8ecb8b04 100644 Binary files a/libs/windows/lib/x64/SDL2.dll and b/libs/windows/lib/x64/SDL2.dll differ diff --git a/libs/windows/lib/x64/SDL2.lib b/libs/windows/lib/x64/SDL2.lib index 82cec002..fc457ae3 100644 Binary files a/libs/windows/lib/x64/SDL2.lib and b/libs/windows/lib/x64/SDL2.lib differ diff --git a/libs/windows/lib/x64/SDL2.pdb b/libs/windows/lib/x64/SDL2.pdb index d63eb331..0728ea6d 100644 Binary files a/libs/windows/lib/x64/SDL2.pdb and b/libs/windows/lib/x64/SDL2.pdb differ diff --git a/libs/windows/lib/x86/SDL2.dll b/libs/windows/lib/x86/SDL2.dll index 65c80fd6..20bfc874 100644 Binary files a/libs/windows/lib/x86/SDL2.dll and b/libs/windows/lib/x86/SDL2.dll differ diff --git a/libs/windows/lib/x86/SDL2.lib b/libs/windows/lib/x86/SDL2.lib index c63e39c2..cce9122a 100644 Binary files a/libs/windows/lib/x86/SDL2.lib and b/libs/windows/lib/x86/SDL2.lib differ diff --git a/libs/windows/lib/x86/SDL2.pdb b/libs/windows/lib/x86/SDL2.pdb index 1cd87f0d..50dfabb7 100644 Binary files a/libs/windows/lib/x86/SDL2.pdb and b/libs/windows/lib/x86/SDL2.pdb differ