summaryrefslogtreecommitdiff
path: root/src/locale/xkbcommon-util.h
blob: e99c2d7783da7849130290d22ead9229d893cb27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once

#if HAVE_XKBCOMMON
#include <xkbcommon/xkbcommon.h>

extern struct xkb_context* (*sym_xkb_context_new)(enum xkb_context_flags flags);
extern void (*sym_xkb_context_unref)(struct xkb_context *context);
extern void (*sym_xkb_context_set_log_fn)(
                struct xkb_context *context,
                void (*log_fn)(
                        struct xkb_context *context,
                        enum xkb_log_level level,
                        const char *format,
                        va_list args));
extern struct xkb_keymap* (*sym_xkb_keymap_new_from_names)(
                struct xkb_context *context,
                const struct xkb_rule_names *names,
                enum xkb_keymap_compile_flags flags);
extern void (*sym_xkb_keymap_unref)(struct xkb_keymap *keymap);

int verify_xkb_rmlvo(const char *model, const char *layout, const char *variant, const char *options);

#else

static inline int verify_xkb_rmlvo(const char *model, const char *layout, const char *variant, const char *options) {
        return 0;
}

#endif