From 0813d7dba404e731e0b947676f727e629abe5087 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Higor=20Eur=C3=ADpedes?= Date: Fri, 22 Aug 2014 19:39:29 -0300 Subject: [PATCH] (sdl_gl) Merge SDL and SDL2 event loops --- gfx/context/sdl_gl_ctx.c | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/gfx/context/sdl_gl_ctx.c b/gfx/context/sdl_gl_ctx.c index f8a80c2b10..0d1d8e03a0 100644 --- a/gfx/context/sdl_gl_ctx.c +++ b/gfx/context/sdl_gl_ctx.c @@ -266,18 +266,23 @@ static void sdl_ctx_check_window(void *data, bool *quit, bool *resize,unsigned * (void)data; SDL_Event event; + SDL_PumpEvents(); #ifdef HAVE_SDL2 - SDL_PumpEvents(); while (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_QUIT, SDL_WINDOWEVENT) > 0) +#else + while (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_QUITMASK|SDL_VIDEORESIZEMASK) > 0) +#endif { switch (event.type) { case SDL_QUIT: +#ifdef HAVE_SDL2 case SDL_APP_TERMINATING: +#endif *quit = true; break; - +#ifdef HAVE_SDL2 case SDL_WINDOWEVENT: if (event.window.event == SDL_WINDOWEVENT_RESIZED) { @@ -285,26 +290,17 @@ static void sdl_ctx_check_window(void *data, bool *quit, bool *resize,unsigned * g_new_width = event.window.data1; g_new_height = event.window.data2; } - break; - - default: - break; - } - } #else - while (SDL_PollEvent(&event)) - { - switch (event.type) - { - case SDL_QUIT: - *quit = true; + case SDL_VIDEORESIZE: + g_resized = true; + g_new_width = event.resize.w; + g_new_height = event.resize.h; +#endif break; - default: break; } } -#endif if (g_resized) {