xkb_state Struct Reference

`#include <xkbcommon.h>`

## Public Member Functions

struct xkb_state * | xkb_state_new (struct xkb_keymap *keymap)
struct xkb_state * | xkb_state_ref (struct xkb_state *state)
void | xkb_state_unref (struct xkb_state *state)
struct xkb_keymap * | xkb_state_get_keymap (struct xkb_state *state)
enum xkb_state_component | xkb_state_update_key (struct xkb_state *state, xkb_keycode_t key, enum xkb_key_direction direction)
enum xkb_state_component | xkb_state_update_mask (struct xkb_state *state, xkb_mod_mask_t depressed_mods, xkb_mod_mask_t latched_mods, xkb_mod_mask_t locked_mods, xkb_layout_index_t depressed_layout, xkb_layout_index_t latched_layout, xkb_layout_index_t locked_layout)
int | xkb_state_key_get_syms (struct xkb_state *state, xkb_keycode_t key, const xkb_keysym_t **syms_out)
int | xkb_state_key_get_utf8 (struct xkb_state *state, xkb_keycode_t key, char *buffer, size_t size)
uint32_t | xkb_state_key_get_utf32 (struct xkb_state *state, xkb_keycode_t key)
xkb_keysym_t | xkb_state_key_get_one_sym (struct xkb_state *state, xkb_keycode_t key)
xkb_layout_index_t | xkb_state_key_get_layout (struct xkb_state *state, xkb_keycode_t key)
xkb_level_index_t | xkb_state_key_get_level (struct xkb_state *state, xkb_keycode_t key, xkb_layout_index_t layout)
xkb_mod_mask_t | xkb_state_serialize_mods (struct xkb_state *state, enum xkb_state_component components)
xkb_layout_index_t | xkb_state_serialize_layout (struct xkb_state *state, enum xkb_state_component components)
int | xkb_state_mod_name_is_active (struct xkb_state *state, const char *name, enum xkb_state_component type)
int | xkb_state_mod_names_are_active (struct xkb_state *state, enum xkb_state_component type, enum xkb_state_match match,...)
int | xkb_state_mod_index_is_active (struct xkb_state *state, xkb_mod_index_t idx, enum xkb_state_component type)
int | xkb_state_mod_indices_are_active (struct xkb_state *state, enum xkb_state_component type, enum xkb_state_match match,...)
int | xkb_state_mod_index_is_consumed (struct xkb_state *state, xkb_keycode_t key, xkb_mod_index_t idx)
xkb_mod_mask_t | xkb_state_mod_mask_remove_consumed (struct xkb_state *state, xkb_keycode_t key, xkb_mod_mask_t mask)
xkb_mod_mask_t | xkb_state_key_get_consumed_mods (struct xkb_state *state, xkb_keycode_t key)
int | xkb_state_layout_name_is_active (struct xkb_state *state, const char *name, enum xkb_state_component type)
int | xkb_state_layout_index_is_active (struct xkb_state *state, xkb_layout_index_t idx, enum xkb_state_component type)
int | xkb_state_led_name_is_active (struct xkb_state *state, const char *name)
int | xkb_state_led_index_is_active (struct xkb_state *state, xkb_led_index_t idx)
struct xkb_state * | xkb_x11_state_new_from_device (struct xkb_keymap *keymap, xcb_connection_t *connection, int32_t device_id)

## Detailed Description

Opaque keyboard state object.

State objects contain the active state of a keyboard (or keyboards), such as the currently effective layout and the active modifiers. It acts as a simple state machine, wherein key presses and releases are the input, and key symbols (keysyms) are the output.

The documentation for this struct was generated from the following files:

- xkbcommon/xkbcommon.h
- xkbcommon/xkbcommon-x11.h