ecore-input: add keysym to Ecore_Event_Key struct
authorMike Blumenkrantz <zmike@osg.samsung.com>
Wed, 20 May 2015 18:38:38 +0000 (14:38 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Wed, 20 May 2015 18:50:46 +0000 (14:50 -0400)
currently only functional for x11, wl, drm

@feature

src/lib/ecore_drm/ecore_drm_evdev.c
src/lib/ecore_input/Ecore_Input.h
src/lib/ecore_wayland/ecore_wl_input.c
src/lib/ecore_x/xcb/ecore_xcb_events.c
src/lib/ecore_x/xlib/ecore_x_events.c

index e40ad40..ec50509 100644 (file)
@@ -361,6 +361,7 @@ _device_handle_key(struct libinput_device *device, struct libinput_event_keyboar
    e->timestamp = timestamp;
    e->same_screen = 1;
    e->keycode = code;
+   e->keysym = sym;
 
    _device_modifiers_update(edev);
 
index f58c56e..f944006 100644 (file)
@@ -152,6 +152,7 @@ extern "C" {
         unsigned int     keycode; /**< Key scan code numeric value @since 1.10 */
 
         void            *data; /**< User data associated with an Ecore_Event_Key @since 1.10 */
+        unsigned int     keysym; /**< Encoding of keyboard symbold @since 1.15 */
      };
 
    /**
index 7813a15..58d1030 100755 (executable)
@@ -827,6 +827,7 @@ _ecore_wl_input_cb_keyboard_key(void *data, struct wl_keyboard *keyboard EINA_UN
    e->timestamp = timestamp;
    e->modifiers = input->modifiers;
    e->keycode = code;
+   e->keysym = sym;
 
    if (state)
      ecore_event_add(ECORE_EVENT_KEY_DOWN, e, NULL, NULL);
index 0b71451..fdd17da 100644 (file)
@@ -2422,6 +2422,7 @@ _ecore_xcb_event_key_press(xcb_generic_event_t *event)
         e->same_screen = xevent->same_screen;
         e->root_window = xevent->root;
         e->keycode = keycode;
+        e->keysym = sym;
 
         DBG("Sending Key Down Event: %s", e->keyname);
         ecore_event_add(ECORE_EVENT_KEY_DOWN, e, NULL, NULL);
index 8ab79a4..9864074 100644 (file)
@@ -393,6 +393,7 @@ _ecore_key_press(int event,
    e->same_screen = xevent->same_screen;
    e->root_window = xevent->root;
    e->keycode = xevent->keycode;
+   e->keysym = sym;
 
    ecore_event_add(event, e, NULL, NULL);