dont_set_e_input_keymap = e_secure_getenv("NO_E_INPUT_KEYMAP_CACHE") ? EINA_TRUE : EINA_FALSE;
dont_use_xkb_cache = e_secure_getenv("NO_KEYMAP_CACHE") ? EINA_TRUE : EINA_FALSE;
- g_mutex_init(&comp_wl->kbd.resource_mutex);
- g_mutex_init(&comp_wl->xkb.keymap_mutex);
-
/* get default keyboard repeat delay from configuration */
atomic_store(&e_comp_input_key->kbd.repeat_delay, e_config->keyboard.repeat_delay);
/* check for valid repeat_delay */
wl_resource_destroy(res);
e_comp_input_key->kbd.resources = eina_list_free(e_comp_input_key->kbd.resources);
- g_mutex_clear(&comp_wl->kbd.resource_mutex);
-
/* destroy touch resources */
EINA_LIST_FREE(comp_wl->touch.resources, res)
wl_resource_destroy(res);
/* destroy e_comp_input_key->kbd.keys array */
- wl_array_release(&comp_wl->kbd.keys);
+ wl_array_release(&e_comp_input_key->kbd.keys);
wl_array_release(&e_comp_input_key->kbd.routed_keys);
dont_set_e_input_keymap = EINA_FALSE;
dont_use_xkb_cache = EINA_FALSE;
-
- g_mutex_clear(&comp_wl->xkb.keymap_mutex);
}
EINTERN Eina_Bool
struct wl_event_loop *loop;
} wl;
- struct
- {
- Eina_List *resources;
- Eina_List *focused;
- Eina_Bool enabled : 1;
- xkb_mod_index_t mod_shift, mod_caps;
- xkb_mod_index_t mod_ctrl, mod_alt;
- xkb_mod_index_t mod_super;
- xkb_mod_mask_t mod_depressed, mod_latched, mod_locked;
- xkb_layout_index_t mod_group;
- struct wl_array keys;
- struct wl_array routed_keys;
- struct wl_resource *focus;
- int mod_changed;
- atomic_int repeat_delay;
- atomic_int repeat_rate;
- unsigned int num_devices;
- GMutex resource_mutex; /* for resources variable */
- } kbd;
-
struct
{
Eina_List *resources;