diff options
| author | Fabrice <fabrice@schaub-dev.xyz> | 2026-02-10 12:43:12 +0100 |
|---|---|---|
| committer | Fabrice <fabrice@schaub-dev.xyz> | 2026-02-10 12:43:12 +0100 |
| commit | 16bedd8b739808193b527f173c0ae2053926b736 (patch) | |
| tree | b37a60612db1ba717a6262df79700fd2d7e25585 /src/wayclock.cc | |
| parent | 03ef673d02aa11ec187264d571aeface8cef1482 (diff) | |
redraw request
Diffstat (limited to 'src/wayclock.cc')
| -rw-r--r-- | src/wayclock.cc | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/src/wayclock.cc b/src/wayclock.cc index 369657e..17d7123 100644 --- a/src/wayclock.cc +++ b/src/wayclock.cc @@ -1,12 +1,33 @@ #include "events.h" #include "window.h" +#include <cstdio> #define WAYC_APP_NAME "Wayclock" +void frame(struct window_s *window, struct eventloop_s *loop) { + wayc_notnull(window); + wayc_notnull(loop); + + wayc_window_redraw(window, loop); +} + void handle(struct eventloop_s *loop, struct event_s *event) { + wayc_notnull(loop); + wayc_notnull(event); + + struct window_s *window = event->window; + union event_data_u data = event->data; + switch (event->kind) { case EVENT_KIND_CLOSE: - wayc_eventloop_unregister(loop, event->window->id); + wayc_eventloop_unregister(loop, window->id); + break; + case EVENT_KIND_RESIZE: + fprintf(stderr, "Window resized: %d x %d\n", data.resize.width, + data.resize.height); + break; + case EVENT_KIND_FRAME: + frame(window, loop); break; default: break; @@ -27,9 +48,8 @@ int main() { window_id_t winid = wayc_eventloop_register(&loop, &window); window.id = winid; - while (wayc_eventloop_running(&loop)) { + while (wayc_eventloop_running(&loop)) wayc_eventloop_update(&loop); - } wayc_window_deinit(&window); wayc_eventloop_deinit(&loop); |
