From 16bedd8b739808193b527f173c0ae2053926b736 Mon Sep 17 00:00:00 2001 From: Fabrice Date: Tue, 10 Feb 2026 12:43:12 +0100 Subject: redraw request --- src/wayclock.cc | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) (limited to 'src/wayclock.cc') 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 #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); -- cgit v1.2.3