labwc/include/rcxml.h

43 lines
987 B
C
Raw Normal View History

2020-06-05 23:04:54 +01:00
#ifndef RCXML_H
#define RCXML_H
#include <stdio.h>
#include <stdbool.h>
2020-06-16 07:21:53 +01:00
#include <wlr/types/wlr_keyboard.h>
#include <wayland-server-core.h>
#include <xkbcommon/xkbcommon.h>
2020-06-05 23:04:54 +01:00
#include "buf.h"
2020-06-19 22:00:22 +01:00
#define BUG_ON(condition) \
do { \
if ((condition) != 0) { \
fprintf(stderr, "Badness in %s() at %s:%d\n", \
__func__, __FILE__, __LINE__); \
} \
} while (0)
2020-06-16 07:21:53 +01:00
struct keybind {
2020-06-19 22:00:22 +01:00
uint32_t modifiers;
xkb_keysym_t *keysyms;
size_t keysyms_len;
char *action;
char *command;
struct wl_list link;
2020-06-16 07:21:53 +01:00
};
2020-06-19 22:00:22 +01:00
struct keybind *keybind_add(const char *keybind);
2020-06-16 07:21:53 +01:00
2020-06-05 23:04:54 +01:00
struct rcxml {
bool client_side_decorations;
2020-06-16 07:21:53 +01:00
struct wl_list keybinds;
2020-06-05 23:04:54 +01:00
};
extern struct rcxml rc;
void rcxml_parse_xml(struct buf *b);
2020-06-05 23:04:54 +01:00
void rcxml_read(const char *filename);
void rcxml_get_nodenames(struct buf *b);
2020-06-05 23:04:54 +01:00
#endif /* RCXML_H */