else state = WL_KEYBOARD_KEY_STATE_RELEASED;
comp_conf = e_comp_config_get();
+ e_keyrouter_event_surface_send(ec, keycode);
EINA_LIST_FOREACH(e_comp_wl->kbd.resources, l, res)
{
if (!time) time = (uint32_t)(ecore_time_get() * 1000);
comp_conf = e_comp_config_get();
+ e_keyrouter_event_surface_send(ec, keycode);
EINA_LIST_FOREACH(e_comp_wl->kbd.resources, l, res)
{
KLINF("Delete %d and %d key composition.\n", keys[0], keys[1]);
}
+E_API void
+e_keyrouter_event_surface_send(E_Client *ec, int key)
+{
+ EINA_SAFETY_ON_NULL_RETURN(krt);
+ EINA_SAFETY_ON_NULL_RETURN(ec);
+ EINA_SAFETY_ON_NULL_RETURN(ec->comp_data);
+ EINA_SAFETY_ON_NULL_RETURN(ec->comp_data->surface);
+ key = key - 8;
+
+ e_keyrouter_wl_event_surface_send(ec->comp_data->surface, key, TIZEN_KEYROUTER_MODE_NONE);
+}
E_API int
e_keyrouter_init(void)
E_API int e_keyrouter_composition_key_add(int *keys, int count);
E_API void e_keyrouter_composition_key_del(int *keys, int count);
+E_API void e_keyrouter_event_surface_send(E_Client *ec, int key);
+
#endif
#endif
Eina_Bool e_keyrouter_wl_key_send(Ecore_Event_Key *ev, Eina_Bool pressed, struct wl_client *client, struct wl_resource *surface, Eina_Bool focused);
void e_keyrouter_keycancel_send(struct wl_client *client, struct wl_resource *surface, unsigned int key);
+void e_keyrouter_wl_event_surface_send(struct wl_resource *surface, int key, int mode);
+
#include "e_keyrouter_private.h"
-static void
-_e_keyrouter_event_surface_send(struct wl_resource *surface, int key, int mode)
+void
+e_keyrouter_wl_event_surface_send(struct wl_resource *surface, int key, int mode)
{
Eina_List *l;
struct wl_resource *res_data;
if (surface && !focused)
{
- _e_keyrouter_event_surface_send(surface, ev->keycode, TIZEN_KEYROUTER_MODE_NONE);
+ e_keyrouter_wl_event_surface_send(surface, ev->keycode, TIZEN_KEYROUTER_MODE_NONE);
}
EINA_LIST_FOREACH(key_list, l, res)