From b9b5d5ae2be24d41f3cbd71b9b30338afdb132ee Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Tue, 11 Apr 2023 09:09:03 +0200 Subject: add ctrl-sequences and custom kmap --- wayland.h | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'wayland.h') diff --git a/wayland.h b/wayland.h index 5d12ac5..7cbbc90 100644 --- a/wayland.h +++ b/wayland.h @@ -2,9 +2,29 @@ #define WAYLAND_H #include +#include #include #include "xdg-shell-client-protocol.h" +typedef enum { + KEY_MOD_NONE = 0, + KEY_MOD_CTRL = 1, + KEY_MOD_ALT = 2, + KEY_MOD_SHIFT = 4, + KEY_MOD_LOGO = 8, + KEY_MOD_ANY = 16 +} ModMask; + + +typedef struct { + uint32_t k; + uint32_t mask; + char *s; + /* three-valued logic variables: 0 indifferent, 1 on, -1 off */ + signed char appkey; /* application keypad */ + signed char appcursor; /* application cursor */ +} Key; + typedef struct { struct wl_display *display; @@ -21,11 +41,7 @@ typedef struct { struct { uint32_t state; uint32_t sym; - struct { - uint32_t ctrl; - uint32_t alt; - uint32_t shift; - } mods; + uint32_t mod; } event; struct { int timer; -- cgit v1.2.3-70-g09d2