aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBert <ber.t@gmx.com>2011-01-17 18:32:28 +0100
committerBert <ber.t@gmx.com>2011-01-17 18:32:28 +0100
commit15603c25cf00a11dbdf238203858d9eab313120c (patch)
treec8221de381839b2100550b15128fd2d1293ad999
parent6e0db8c88def1ba5758c385b7586585bcd251c5f (diff)
downloadnsxiv-15603c25cf00a11dbdf238203858d9eab313120c.tar.zst
Added event loop
-rw-r--r--app.c1
-rw-r--r--events.c7
2 files changed, 8 insertions, 0 deletions
diff --git a/app.c b/app.c
index 4b8aebe..8411be4 100644
--- a/app.c
+++ b/app.c
@@ -37,6 +37,7 @@ void app_init(app_t *app) {
}
void app_run(app_t *app) {
+ event_loop(app);
}
void app_quit(app_t *app) {
diff --git a/events.c b/events.c
index 54121ea..ccc5f2e 100644
--- a/events.c
+++ b/events.c
@@ -22,6 +22,7 @@
#include <X11/keysym.h>
#include "events.h"
+#include "window.h"
extern Display *dpy;
@@ -55,4 +56,10 @@ static void (*handler[LASTEvent])(app_t*, XEvent*) = {
};
void event_loop(app_t *app) {
+ XEvent ev;
+
+ while (!XNextEvent(dpy, &ev)) {
+ if (handler[ev.type])
+ handler[ev.type](app, &ev);
+ }
}