e_keyrouter: Impl getter/setter for E_Keyrouter_Event_Data 67/321567/1
authorTaeHyeon Jeong <thyeon.jeong@samsung.com>
Mon, 17 Feb 2025 10:22:26 +0000 (19:22 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Tue, 25 Mar 2025 07:49:40 +0000 (16:49 +0900)
- Add e_keyrouter_event_data_get/set functions to get/set E_Keyrouter_Event_Data members.

Change-Id: Icffa8215527e509d4b6e1f57dc997f2993872371

src/bin/inputmgr/e_keyrouter.c
src/bin/inputmgr/e_keyrouter_intern.h
src/include/e_keyrouter.h

index 1938a1466a69a654b3c8aea8ad909b26ff1137d8..a0ccbbe259f99fa0e2e0348bed381087b4f85444 100644 (file)
@@ -749,3 +749,83 @@ E_API int (*e_keyrouter_info_max_keycode_get(void))(void)
 {
    return e_keyrouter.max_keycode_get;
 }
+
+
+///////////////////////////////////////////////////////////////////////
+// This is for getting/setting internal value of E_Keyrouter_Event_Data
+E_API E_Keyrouter_Event_Data *
+e_keyrouter_event_data_create(void)
+{
+   return E_NEW(E_Keyrouter_Event_Data, 1);
+}
+
+E_API void
+e_keyrouter_event_data_destroy(E_Keyrouter_Event_Data *event_data)
+{
+   if (event_data) E_FREE(event_data);
+}
+
+E_API struct wl_client *
+e_keyrouter_event_data_client_get(const E_Keyrouter_Event_Data *event_data)
+{
+   if (!event_data) return NULL;
+   return event_data->client;
+}
+
+E_API void
+e_keyrouter_event_data_client_set(E_Keyrouter_Event_Data *event_data, struct wl_client *client)
+{
+   if (event_data) event_data->client = client;
+}
+
+E_API struct wl_resource *
+e_keyrouter_event_data_surface_get(const E_Keyrouter_Event_Data *event_data)
+{
+   if (!event_data) return NULL;
+   return event_data->surface;
+}
+
+E_API void
+e_keyrouter_event_data_surface_set(E_Keyrouter_Event_Data *event_data, struct wl_resource *surface)
+{
+   if (event_data) event_data->surface = surface;
+}
+
+EINTERN int
+e_keyrouter_event_data_mode_get(const E_Keyrouter_Event_Data *event_data)
+{
+   if (!event_data) return 0;
+   return event_data->mode;
+}
+
+EINTERN void
+e_keyrouter_event_data_mode_set(E_Keyrouter_Event_Data *event_data, int mode)
+{
+   if (event_data) event_data->mode = mode;
+}
+
+EINTERN Eina_Bool
+e_keyrouter_event_data_ignored_get(const E_Keyrouter_Event_Data *event_data)
+{
+   if (!event_data) return EINA_FALSE;
+   return event_data->ignored;
+}
+
+E_API void
+e_keyrouter_event_data_ignored_set(E_Keyrouter_Event_Data *event_data, Eina_Bool ignored)
+{
+   if (event_data) event_data->ignored = ignored;
+}
+
+E_API void *
+e_keyrouter_event_data_data_get(const E_Keyrouter_Event_Data *event_data)
+{
+   if (!event_data) return NULL;
+   return event_data->data;
+}
+
+E_API void
+e_keyrouter_event_data_data_set(E_Keyrouter_Event_Data *event_data, void *data)
+{
+   if (event_data) event_data->data = data;
+}
index 33ec976c86fd48c48b4763d8d28fa64f775fafac..4c520e00cf447a0013935d6510e0df88deb7a050 100644 (file)
@@ -147,4 +147,9 @@ EINTERN int e_keyrouter_keygrab_unset(struct wl_client *client, struct wl_resour
 
 EINTERN Eina_Bool e_keyrouter_event_process(void *event, E_Device *dev, int type);
 
+EINTERN int e_keyrouter_event_data_mode_get(const E_Keyrouter_Event_Data *event_data);
+EINTERN void e_keyrouter_event_data_mode_set(E_Keyrouter_Event_Data *event_data, int mode);
+EINTERN Eina_Bool e_keyrouter_event_data_ignored_get(const E_Keyrouter_Event_Data *event_data);
+
+
 #endif
index b8107240f9a380220ee51b45ca778bb091717421..41ed1dc5559ea932e98242d2cf21f7037e8c2bdc 100644 (file)
@@ -97,5 +97,18 @@ E_API void                         e_keyrouter_key_list_node_status_set(E_Keyrou
 E_API void *(*e_keyrouter_info_keygrab_list_get(void))(void);
 E_API int   (*e_keyrouter_info_max_keycode_get(void))(void);
 
+
+///////////////////////////////////////////////////////////////////////
+// This is for getting/setting internal value of E_Keyrouter_Event_Data
+E_API E_Keyrouter_Event_Data *e_keyrouter_event_data_create(void);
+E_API void                    e_keyrouter_event_data_destroy(E_Keyrouter_Event_Data *event_data);
+E_API struct wl_client       *e_keyrouter_event_data_client_get(const E_Keyrouter_Event_Data *event_data);
+E_API void                    e_keyrouter_event_data_client_set(E_Keyrouter_Event_Data *event_data, struct wl_client *client);
+E_API struct wl_resource     *e_keyrouter_event_data_surface_get(const E_Keyrouter_Event_Data *event_data);
+E_API void                    e_keyrouter_event_data_surface_set(E_Keyrouter_Event_Data *event_data, struct wl_resource *surface);
+E_API void                   *e_keyrouter_event_data_data_get(const E_Keyrouter_Event_Data *event_data);
+E_API void                    e_keyrouter_event_data_data_set(E_Keyrouter_Event_Data *event_data, void *data);
+E_API void                    e_keyrouter_event_data_ignored_set(E_Keyrouter_Event_Data *event_data, Eina_Bool ignored);
+
 #endif