X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fevents.c;h=d91a7c46d8d3ce9c5e70a47a207a43be7ec70fa8;hb=5abed77f4575375756d228a2afc749589a25c87a;hp=4d70027d34911d1aaf5fedc93763d21077fb50e1;hpb=9ea8b203a29569f4d2ed059d33def627ff2b17aa;p=rocksndiamonds.git diff --git a/src/events.c b/src/events.c index 4d70027d..d91a7c46 100644 --- a/src/events.c +++ b/src/events.c @@ -175,6 +175,13 @@ void EventLoop(void) case EVENT_TEXTINPUT: HandleTextEvent((TextEvent *) &event); break; + + case SDL_APP_WILLENTERBACKGROUND: + case SDL_APP_DIDENTERBACKGROUND: + case SDL_APP_WILLENTERFOREGROUND: + case SDL_APP_DIDENTERFOREGROUND: + HandlePauseResumeEvent((PauseResumeEvent *) &event); + break; #endif case EVENT_KEYPRESS: @@ -363,10 +370,6 @@ void SleepWhileUnmapped() void HandleExposeEvent(ExposeEvent *event) { -#if !defined(TARGET_SDL) - RedrawPlayfield(FALSE, event->x, event->y, event->width, event->height); - FlushDisplay(); -#endif } void HandleButtonEvent(ButtonEvent *event) @@ -980,6 +983,19 @@ void HandleTextEvent(TextEvent *event) HandleKey(key, KEY_RELEASED); } } + +void HandlePauseResumeEvent(PauseResumeEvent *event) +{ + if (event->type == SDL_APP_WILLENTERBACKGROUND) + { + Mix_PauseMusic(); + } + else if (event->type == SDL_APP_DIDENTERFOREGROUND) + { + Mix_ResumeMusic(); + } +} + #endif void HandleKeyEvent(KeyEvent *event)