aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/ecore_wayland
diff options
context:
space:
mode:
authorJengHyun Kang <jhyuni.kang@samsung.com>2016-03-24 08:53:15 -0400
committerChris Michael <cpmichael@osg.samsung.com>2016-03-24 08:53:15 -0400
commit1a27f1274e12ce6c9dfeb6a0e7170d714917eb7c (patch)
tree4a37b80343f7974054e909ab6241e7eeafd6d35d /src/lib/ecore_wayland
parentecore_imf/wayland: fix IME flickering issue when input_panel_hide and show is... (diff)
downloadefl-1a27f1274e12ce6c9dfeb6a0e7170d714917eb7c.tar.gz
ecore_wayland: Add a new API to get keymap - ecore_wl_input_keymap_get()
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
Diffstat (limited to 'src/lib/ecore_wayland')
-rw-r--r--src/lib/ecore_wayland/Ecore_Wayland.h7
-rw-r--r--src/lib/ecore_wayland/ecore_wl_input.c10
2 files changed, 17 insertions, 0 deletions
diff --git a/src/lib/ecore_wayland/Ecore_Wayland.h b/src/lib/ecore_wayland/Ecore_Wayland.h
index 173501407f..d422520965 100644
--- a/src/lib/ecore_wayland/Ecore_Wayland.h
+++ b/src/lib/ecore_wayland/Ecore_Wayland.h
@@ -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
diff --git a/src/lib/ecore_wayland/ecore_wl_input.c b/src/lib/ecore_wayland/ecore_wl_input.c
index 90d5e497c0..4b0845970e 100644
--- a/src/lib/ecore_wayland/ecore_wl_input.c
+++ b/src/lib/ecore_wayland/ecore_wl_input.c
@@ -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)
{