ecore_wayland: Add a new API to get keymap - ecore_wl_input_keymap_get()
authorJengHyun Kang <jhyuni.kang@samsung.com>
Thu, 24 Mar 2016 12:53:15 +0000 (08:53 -0400)
committerChris Michael <cpmichael@osg.samsung.com>
Thu, 24 Mar 2016 12:53:15 +0000 (08:53 -0400)
Summary:
Each Ecore_Wl_Input structure has there own keymap.
         This keymap is struct xkb_keymap used in libxkbcommon lib and
         the client can get this keymap from server in wayland system.
         So if the client want to get keymap and use some libxkbcommon APIs,
         use this API to get keymap.

Test Plan: Use this api after initialize wayland system.

Reviewers: raster, zmike, ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: input.hacker, ohduna, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3819

src/lib/ecore_wayland/Ecore_Wayland.h
src/lib/ecore_wayland/ecore_wl_input.c

index 1735014..d422520 100644 (file)
@@ -443,6 +443,13 @@ EAPI void ecore_wl_input_cursor_size_set(Ecore_Wl_Input *input, const int size);
 EAPI void ecore_wl_input_cursor_theme_name_set(Ecore_Wl_Input *input, const char *cursor_theme_name);
 
 /**
+ * @ingroup Ecore_Wl_Input_Group
+ * @since 1.17
+ */
+EAPI struct xkb_keymap *ecore_wl_input_keymap_get(Ecore_Wl_Input *input);
+
+
+/**
  * Retrieves the Wayland Globals Interface list used for the current Wayland connection.
  *
  * This call, if done after the ECORE_WL_EVENT_INTERFACES_BOUND event was
index 90d5e49..4b08459 100644 (file)
@@ -248,6 +248,16 @@ ecore_wl_input_cursor_theme_name_set(Ecore_Wl_Input *input, const char *cursor_t
                           input->display->wl.shm);
 }
 
+EAPI struct xkb_keymap *
+ecore_wl_input_keymap_get(Ecore_Wl_Input *input)
+{
+   LOGFN(__FILE__, __LINE__, __FUNCTION__);
+
+   EINA_SAFETY_ON_NULL_RETURN_VAL(input, NULL);
+
+   return input->xkb.keymap;
+}
+
 static Eina_Bool
 _ecore_wl_input_cursor_update(void *data)
 {