From e101b44b986811b3e37bccae230fcb73adc4dee2 Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Wed, 12 Oct 2022 14:36:28 +0200 Subject: [WIP] Add mouse click input --- src/main.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main.c b/src/main.c index c9bd4b1..2c0e397 100644 --- a/src/main.c +++ b/src/main.c @@ -118,7 +118,6 @@ poll_mouse(void) { struct input_event mouse_event; if (read(in.mouse_fd, &mouse_event, sizeof(mouse_event)) != -1) { if (mouse_event.type == EV_REL) { - printf("MOUSE REL EVENT\n"); if (mouse_event.code == REL_X) { in.mouse.x = CLAMP( in.mouse.x / zoom + (s32)mouse_event.value, 0, (s32)screen_width); @@ -127,14 +126,12 @@ poll_mouse(void) { in.mouse.y / zoom + (s32)mouse_event.value, 0, (s32)screen_height); } } else if (mouse_event.type == EV_ABS) { - printf("MOUSE ABS EVENT\n"); if (mouse_event.code == ABS_X) { in.mouse.x = CLAMP((s32)mouse_event.value / zoom, 0, (s32)screen_width); } else if (mouse_event.code == ABS_Y) { in.mouse.y = CLAMP((s32)mouse_event.value / zoom, 0, (s32)screen_height); } } else if (mouse_event.type == EV_KEY) { - printf("MOUSE KEY EVENT\n"); switch (mouse_event.code) { case BTN_LEFT: { if (mouse_event.value == 1) { @@ -150,7 +147,14 @@ poll_mouse(void) { in.mouse.buttons &= ~0x10; } } break; - default: break; + default: { + // NOTE: nook press. + if (mouse_event.value == 1) { + in.mouse.buttons |= 0x01; + } else { + in.mouse.buttons &= ~0x01; + } + } break; } } in.mouse.update = true; -- cgit v1.2.1