From 6e27dee8305776f1390ef917553cb06644390b2c Mon Sep 17 00:00:00 2001 From: Kevin Lange Date: Wed, 18 Jan 2017 19:21:17 +0900 Subject: [PATCH] Make teapot and cairo demos better WM citizens --- userspace/gui/demo/cairo-demo.c | 10 ++++++++++ userspace/gui/gl/teapot.c | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/userspace/gui/demo/cairo-demo.c b/userspace/gui/demo/cairo-demo.c index d2a492b7..772c8d16 100644 --- a/userspace/gui/demo/cairo-demo.c +++ b/userspace/gui/demo/cairo-demo.c @@ -58,6 +58,8 @@ int main(int argc, char * argv[]) { ctx = init_graphics_yutani(window); draw_fill(ctx, rgba(0,0,0,127)); + yutani_window_advertise_icon(yctx, window, "Cairo Demo", "cairo-demo"); + render(); while (1) { @@ -73,6 +75,14 @@ int main(int argc, char * argv[]) { } } break; + case YUTANI_MSG_WINDOW_MOUSE_EVENT: + { + struct yutani_msg_window_mouse_event * me = (void*)m->data; + if (me->command == YUTANI_MOUSE_EVENT_DOWN && me->buttons & YUTANI_MOUSE_BUTTON_LEFT) { + yutani_window_drag_start(yctx, window); + } + } + break; case YUTANI_MSG_SESSION_END: goto done; default: diff --git a/userspace/gui/gl/teapot.c b/userspace/gui/gl/teapot.c index 1afadc62..5e8a46be 100644 --- a/userspace/gui/gl/teapot.c +++ b/userspace/gui/gl/teapot.c @@ -492,6 +492,8 @@ int main(int argc, char** argv) { draw_fill(ctx, rgb(0,0,0)); yutani_window_update_shape(yctx, wina, YUTANI_SHAPE_THRESHOLD_HALF); + yutani_window_advertise_icon(yctx, wina, "GL Teapot", "teapot"); + OSMesaContext gl_ctx = OSMesaCreateContext(OSMESA_BGRA, NULL); if (resize(ctx, gl_ctx)) { fprintf(stderr, "%s: Something bad happened.\n", argv[0]); @@ -517,6 +519,14 @@ int main(int argc, char** argv) { } } break; + case YUTANI_MSG_WINDOW_MOUSE_EVENT: + { + struct yutani_msg_window_mouse_event * me = (void*)m->data; + if (me->command == YUTANI_MOUSE_EVENT_DOWN && me->buttons & YUTANI_MOUSE_BUTTON_LEFT) { + yutani_window_drag_start(yctx, wina); + } + } + break; case YUTANI_MSG_SESSION_END: quit = 1; break;