summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorAlfred E. Heggestad <alfred.heggestad@gmail.com>2017-06-25 19:53:27 +0200
committerAlfred E. Heggestad <alfred.heggestad@gmail.com>2017-06-25 19:53:27 +0200
commitcffc0d638270fdb92577c4c9d92adb4bd3ca9526 (patch)
treed3698ee62970cd60436ae13179429b8c0ebd1177 /modules
parentd1cdff6f55464d8b3087b5a7cbf63b07d7bb142a (diff)
sdl2: toggle fullscreen with key 'f'
Diffstat (limited to 'modules')
-rw-r--r--modules/sdl2/sdl.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/modules/sdl2/sdl.c b/modules/sdl2/sdl.c
index aefe0ca..9b3f27e 100644
--- a/modules/sdl2/sdl.c
+++ b/modules/sdl2/sdl.c
@@ -76,6 +76,32 @@ static void sdl_reset(struct vidisp_st *st)
}
+static void handle_events(struct vidisp_st *st)
+{
+ SDL_Event event;
+
+ while (SDL_PollEvent(&event)) {
+
+ if (event.type == SDL_KEYDOWN) {
+
+ switch (event.key.keysym.sym) {
+
+ case SDLK_f:
+ /* press key 'f' to toggle fullscreen */
+ st->fullscreen = !st->fullscreen;
+ info("sdl: %sable fullscreen mode\n",
+ st->fullscreen ? "en" : "dis");
+ sdl_reset(st);
+ break;
+
+ default:
+ break;
+ }
+ }
+ }
+}
+
+
static void destructor(void *arg)
{
struct vidisp_st *st = arg;
@@ -246,6 +272,8 @@ static int display(struct vidisp_st *st, const char *title,
/* Update the screen! */
SDL_RenderPresent(st->renderer);
+ handle_events(st);
+
return 0;
}