diff --git a/Source/DiabloUI/diabloui.cpp b/Source/DiabloUI/diabloui.cpp index 55882fbf6..4a5c2c654 100644 --- a/Source/DiabloUI/diabloui.cpp +++ b/Source/DiabloUI/diabloui.cpp @@ -485,9 +485,9 @@ void UiHandleEvents(SDL_Event *event) HandleControllerAddedOrRemovedEvent(*event); if (event->type == SDL_WINDOWEVENT) { - if (event->window.event == SDL_WINDOWEVENT_SHOWN) { + if (IsAnyOf(event->window.event, SDL_WINDOWEVENT_SHOWN, SDL_WINDOWEVENT_EXPOSED)) { gbActive = true; - } else if (event->window.event == SDL_WINDOWEVENT_HIDDEN) { + } else if (IsAnyOf(event->window.event, SDL_WINDOWEVENT_HIDDEN, SDL_WINDOWEVENT_MINIMIZED)) { gbActive = false; } else if (event->window.event == SDL_WINDOWEVENT_SIZE_CHANGED) { ReinitializeHardwareCursor(); diff --git a/Source/init.cpp b/Source/init.cpp index 0416f24c2..f70f6ee41 100644 --- a/Source/init.cpp +++ b/Source/init.cpp @@ -331,13 +331,12 @@ void MainWndProc(const SDL_Event &event) return; switch (event.window.event) { case SDL_WINDOWEVENT_HIDDEN: + case SDL_WINDOWEVENT_MINIMIZED: gbActive = false; break; case SDL_WINDOWEVENT_SHOWN: - gbActive = false; - RedrawEverything(); - break; case SDL_WINDOWEVENT_EXPOSED: + gbActive = true; RedrawEverything(); break; case SDL_WINDOWEVENT_SIZE_CHANGED: