kbd: break out XKB kbd struct to a separate file

This commit is contained in:
Daniel Eklöf 2019-10-27 16:21:19 +01:00
parent 5ca1ee701b
commit 061bbd7049
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
5 changed files with 56 additions and 44 deletions

35
kbd.h Normal file
View file

@ -0,0 +1,35 @@
#pragma once
#include <stdint.h>
#include <stdbool.h>
#include <xkbcommon/xkbcommon.h>
struct kbd {
struct xkb_context *xkb;
struct xkb_keymap *xkb_keymap;
struct xkb_state *xkb_state;
struct xkb_compose_table *xkb_compose_table;
struct xkb_compose_state *xkb_compose_state;
struct {
int fd;
bool dont_re_repeat;
int32_t delay;
int32_t rate;
uint32_t key;
} repeat;
xkb_mod_index_t mod_shift;
xkb_mod_index_t mod_alt;
xkb_mod_index_t mod_ctrl;
xkb_mod_index_t mod_meta;
/* Enabled modifiers */
bool shift;
bool alt;
bool ctrl;
bool meta;
};
void kbd_destroy(struct kbd *kbd);