diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-08-30 14:49:12 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-08-30 14:49:12 -0700 |
commit | 249e75b46f07ebca6cce1b648b5d34bc4a75792c (patch) | |
tree | ef2889dc90b6347d7e9d58f6c46f678e302af5ec /tests/sdl_quit.c | |
parent | 2a193932e89d6371913d6fdcbb55a072508a8140 (diff) |
support for SDL_QUIT event
Diffstat (limited to 'tests/sdl_quit.c')
-rw-r--r-- | tests/sdl_quit.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/sdl_quit.c b/tests/sdl_quit.c new file mode 100644 index 00000000..1a07526f --- /dev/null +++ b/tests/sdl_quit.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include <SDL/SDL.h> +#include <SDL/SDL_ttf.h> +#include <assert.h> +#include <emscripten.h> + +int result = 0; + +void one() { + SDL_Event event; + while (SDL_PollEvent(&event)) { + switch(event.type) { + case SDL_QUIT: { + if (!result) { // prevent infinite recursion since REPORT_RESULT does window.close too. + result = 1; + REPORT_RESULT_INTERNAL(1); + } + } + } + } +} + +void main_2(); + +int main() { + SDL_Init(SDL_INIT_VIDEO); + SDL_Surface *screen = SDL_SetVideoMode(600, 450, 32, SDL_HWSURFACE); + + emscripten_set_main_loop(one, 0); + + emscripten_run_script("setTimeout(function() { window.close() }, 2000)"); +} + |