--- hatari/src/gui-sdl/dlgAlert.c 2019/04/09 08:55:56 1.1.1.11 +++ hatari/src/gui-sdl/dlgAlert.c 2019/04/09 08:57:07 1.1.1.12 @@ -48,8 +48,8 @@ static SGOBJ alertdlg[] = { SGTEXT, 0, 0, 1,3, 50,1, dlglines[2] }, { SGTEXT, 0, 0, 1,4, 50,1, dlglines[3] }, { SGBUTTON, SG_DEFAULT, 0, 5,5, 8,1, "OK" }, - { SGBUTTON, SG_CANCEL, 0, 24,5, 8,1, "Cancel" }, - { -1, 0, 0, 0,0, 0,0, NULL } + { SGBUTTON, SG_CANCEL, 0, 24,5, 8,1, NULL }, + { SGSTOP, 0, 0, 0,0, 0,0, NULL } }; @@ -130,6 +130,7 @@ static int DlgAlert_ShowDlg(const char * int lines, i, len, offset; bool bOldMouseVisibility; int nOldMouseX, nOldMouseY; + bool bWasEmuActive; #if WITH_SDL2 bool bOldMouseMode = SDL_GetRelativeMouseMode(); @@ -160,6 +161,8 @@ static int DlgAlert_ShowDlg(const char * return false; SDLGui_CenterDlg(alertdlg); + bWasEmuActive = Main_PauseEmulation(true); + SDL_GetMouseState(&nOldMouseX, &nOldMouseY); bOldMouseVisibility = SDL_ShowCursor(SDL_QUERY); SDL_ShowCursor(SDL_ENABLE); @@ -174,6 +177,9 @@ static int DlgAlert_ShowDlg(const char * SDL_SetRelativeMouseMode(bOldMouseMode); #endif + if (bWasEmuActive) + Main_UnPauseEmulation(); + return (i == DLGALERT_OK); }