discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=15ea942ab859b6ce542d60dfcbdfef44c2310c73
commit 15ea942ab859b6ce542d60dfcbdfef44c2310c73 Author: Mike Blumenkrantz <[email protected]> Date: Fri May 26 16:34:13 2017 -0400 update wl input to use new keyboard context/keymap api fix keymap changes on compositor canvas --- src/bin/e_comp_wl_input.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/bin/e_comp_wl_input.c b/src/bin/e_comp_wl_input.c index 90e833755..1e05d7747 100644 --- a/src/bin/e_comp_wl_input.c +++ b/src/bin/e_comp_wl_input.c @@ -667,25 +667,19 @@ _e_comp_wl_input_context_keymap_set(struct xkb_keymap *keymap, struct xkb_contex cached_keymap = keymap; } + if (!e_comp->ee) return; //set the values to the drm devices #ifdef HAVE_WL_DRM # ifdef HAVE_DRM2 - if (e_config->xkb.use_cache) + if (strstr(ecore_evas_engine_name_get(e_comp->ee), "drm")) { Ecore_Drm2_Device *dev; dev = ecore_evas_data_get(e_comp->ee, "device"); if (dev) - { - ecore_drm2_device_keyboard_cached_context_set(dev, context); - ecore_drm2_device_keyboard_cached_keymap_set(dev, keymap); - } + ecore_drm2_device_keyboard_info_set(dev, context, keymap, + e_comp_wl ? e_comp_wl->kbd.choosen_group : choosen_group); } -# else - if (e_config->xkb.use_cache) - ecore_drm_device_keyboard_cached_context_set(context); - if (e_config->xkb.use_cache) - ecore_drm_device_keyboard_cached_keymap_set(keymap); # endif #endif } @@ -693,6 +687,18 @@ _e_comp_wl_input_context_keymap_set(struct xkb_keymap *keymap, struct xkb_contex E_API void e_comp_wl_input_keymap_index_set(xkb_layout_index_t index) { +#ifdef HAVE_WL_DRM +# ifdef HAVE_DRM2 + if (e_comp && e_comp->ee && strstr(ecore_evas_engine_name_get(e_comp->ee), "drm")) + { + Ecore_Drm2_Device *dev; + + dev = ecore_evas_data_get(e_comp->ee, "device"); + if (dev) + ecore_drm2_device_keyboard_group_set(dev, index); + } +# endif +#endif if (e_comp_wl) { e_comp_wl->kbd.choosen_group = index; --
