Path: blob/master/thirdparty/linuxbsd_headers/xkbcommon/xkbcommon-compat.h
9912 views
/*1* Copyright © 2012 Daniel Stone2*3* Permission is hereby granted, free of charge, to any person obtaining a4* copy of this software and associated documentation files (the "Software"),5* to deal in the Software without restriction, including without limitation6* the rights to use, copy, modify, merge, publish, distribute, sublicense,7* and/or sell copies of the Software, and to permit persons to whom the8* Software is furnished to do so, subject to the following conditions:9*10* The above copyright notice and this permission notice (including the next11* paragraph) shall be included in all copies or substantial portions of the12* Software.13*14* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR15* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,16* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL17* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER18* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING19* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER20* DEALINGS IN THE SOFTWARE.21*22* Author: Daniel Stone <[email protected]>23*/2425#ifndef _XKBCOMMON_COMPAT_H26#define _XKBCOMMON_COMPAT_H2728/**29* Renamed keymap API.30*/31#define xkb_group_index_t xkb_layout_index_t32#define xkb_group_mask_t xkb_layout_mask_t33#define xkb_map_compile_flags xkb_keymap_compile_flags34#define XKB_GROUP_INVALID XKB_LAYOUT_INVALID3536#define XKB_STATE_DEPRESSED \37(XKB_STATE_MODS_DEPRESSED | XKB_STATE_LAYOUT_DEPRESSED)38#define XKB_STATE_LATCHED \39(XKB_STATE_MODS_LATCHED | XKB_STATE_LAYOUT_LATCHED)40#define XKB_STATE_LOCKED \41(XKB_STATE_MODS_LOCKED | XKB_STATE_LAYOUT_LOCKED)42#define XKB_STATE_EFFECTIVE \43(XKB_STATE_DEPRESSED | XKB_STATE_LATCHED | XKB_STATE_LOCKED | \44XKB_STATE_MODS_EFFECTIVE | XKB_STATE_LAYOUT_EFFECTIVE)4546#define xkb_map_new_from_names(context, names, flags) \47xkb_keymap_new_from_names(context, names, flags)48#define xkb_map_new_from_file(context, file, format, flags) \49xkb_keymap_new_from_file(context, file, format, flags)50#define xkb_map_new_from_string(context, string, format, flags) \51xkb_keymap_new_from_string(context, string, format, flags)52#define xkb_map_get_as_string(keymap) \53xkb_keymap_get_as_string(keymap, XKB_KEYMAP_FORMAT_TEXT_V1)54#define xkb_map_ref(keymap) xkb_keymap_ref(keymap)55#define xkb_map_unref(keymap) xkb_keymap_unref(keymap)5657#define xkb_map_num_mods(keymap) xkb_keymap_num_mods(keymap)58#define xkb_map_mod_get_name(keymap, idx) xkb_keymap_mod_get_name(keymap, idx)59#define xkb_map_mod_get_index(keymap, str) xkb_keymap_mod_get_index(keymap, str)60#define xkb_key_mod_index_is_consumed(state, key, mod) \61xkb_state_mod_index_is_consumed(state, key, mod)62#define xkb_key_mod_mask_remove_consumed(state, key, modmask) \63xkb_state_mod_mask_remove_consumed(state, key, modmask)6465#define xkb_map_num_groups(keymap) xkb_keymap_num_layouts(keymap)66#define xkb_key_num_groups(keymap, key) \67xkb_keymap_num_layouts_for_key(keymap, key)68#define xkb_map_group_get_name(keymap, idx) \69xkb_keymap_layout_get_name(keymap, idx)70#define xkb_map_group_get_index(keymap, str) \71xkb_keymap_layout_get_index(keymap, str)7273#define xkb_map_num_leds(keymap) xkb_keymap_num_leds(keymap)74#define xkb_map_led_get_name(keymap, idx) xkb_keymap_led_get_name(keymap, idx)75#define xkb_map_led_get_index(keymap, str) \76xkb_keymap_led_get_index(keymap, str)7778#define xkb_key_repeats(keymap, key) xkb_keymap_key_repeats(keymap, key)7980#define xkb_key_get_syms(state, key, syms_out) \81xkb_state_key_get_syms(state, key, syms_out)8283#define xkb_state_group_name_is_active(state, name, type) \84xkb_state_layout_name_is_active(state, name, type)85#define xkb_state_group_index_is_active(state, idx, type) \86xkb_state_layout_index_is_active(state, idx, type)8788#define xkb_state_serialize_group(state, component) \89xkb_state_serialize_layout(state, component)9091#define xkb_state_get_map(state) xkb_state_get_keymap(state)9293/* Not needed anymore, since there's NO_FLAGS. */94#define XKB_MAP_COMPILE_PLACEHOLDER XKB_KEYMAP_COMPILE_NO_FLAGS95#define XKB_MAP_COMPILE_NO_FLAGS XKB_KEYMAP_COMPILE_NO_FLAGS9697#endif9899100