summaryrefslogtreecommitdiff
path: root/src/lib/ecore_imf
diff options
context:
space:
mode:
authorWonkeun Oh <wonkeun.oh@samsung.com>2015-03-24 10:26:20 +0900
committerJihoon Kim <jihoon48.kim@samsung.com>2015-03-24 10:26:21 +0900
commitc7af3af835ff838d5d6dba15240d20bd4af68029 (patch)
tree8f85cd12aa71fb3f3bf0ccf0311a1c5f45dbc462 /src/lib/ecore_imf
parent9a767921c552892dd1e8b6f73f4cc8d99db50fea (diff)
ecore-imf: Added the device information in the Ecore_IMF_Event structs
Summary: Added the device information in the Ecore_IMF_Event structs. Applications may require to know actual source of key event to handle it differently depending on device. Even if key events are currently generated from different devices, application couldn't distinguish it. This patch will support device information for the Ecore-imf key events. Reviewers: jihoon Reviewed By: jihoon Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2214
Diffstat (limited to 'src/lib/ecore_imf')
-rw-r--r--src/lib/ecore_imf/Ecore_IMF.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/lib/ecore_imf/Ecore_IMF.h b/src/lib/ecore_imf/Ecore_IMF.h
index 5a8b781..53f6b7a 100644
--- a/src/lib/ecore_imf/Ecore_IMF.h
+++ b/src/lib/ecore_imf/Ecore_IMF.h
@@ -378,6 +378,7 @@ enum
378 ECORE_IMF_INPUT_PANEL_LAYOUT_PASSWORD_VARIATION_NORMAL, /**< The normal password layout @since 1.12 */ 378 ECORE_IMF_INPUT_PANEL_LAYOUT_PASSWORD_VARIATION_NORMAL, /**< The normal password layout @since 1.12 */
379 ECORE_IMF_INPUT_PANEL_LAYOUT_PASSWORD_VARIATION_NUMBERONLY /**< The password layout to allow only number @since 1.12 */ 379 ECORE_IMF_INPUT_PANEL_LAYOUT_PASSWORD_VARIATION_NUMBERONLY /**< The password layout to allow only number @since 1.12 */
380}; 380};
381
381/** 382/**
382 * @typedef Ecore_IMF_BiDi_Direction 383 * @typedef Ecore_IMF_BiDi_Direction
383 * @brief Enumeration that defines the types of Ecore_IMF bidirectionality 384 * @brief Enumeration that defines the types of Ecore_IMF bidirectionality
@@ -390,6 +391,33 @@ typedef enum
390 ECORE_IMF_BIDI_DIRECTION_RTL /**< The Right to Left mode @since 1.12 */ 391 ECORE_IMF_BIDI_DIRECTION_RTL /**< The Right to Left mode @since 1.12 */
391} Ecore_IMF_BiDi_Direction; 392} Ecore_IMF_BiDi_Direction;
392 393
394typedef enum _Ecore_IMF_Device_Class
395{
396 ECORE_IMF_DEVICE_CLASS_NONE, /**< Not a device @since 1.14 */
397 ECORE_IMF_DEVICE_CLASS_SEAT, /**< The user/seat (the user themselves) @since 1.14 */
398 ECORE_IMF_DEVICE_CLASS_KEYBOARD, /**< A regular keyboard, numberpad or attached buttons @since 1.14 */
399 ECORE_IMF_DEVICE_CLASS_MOUSE, /**< A mouse, trackball or touchpad relative motion device @since 1.14 */
400 ECORE_IMF_DEVICE_CLASS_TOUCH, /**< A touchscreen with fingers or stylus @since 1.14 */
401 ECORE_IMF_DEVICE_CLASS_PEN, /**< A special pen device @since 1.14 */
402 ECORE_IMF_DEVICE_CLASS_POINTER, /**< A laser pointer, wii-style or "minority report" pointing device @since 1.14 */
403 ECORE_IMF_DEVICE_CLASS_GAMEPAD /**< A gamepad controller or joystick @since 1.14 */
404} Ecore_IMF_Device_Class; /**< A general class of device @since 1.14 */
405
406typedef enum _Ecore_IMF_Device_Subclass
407{
408 ECORE_IMF_DEVICE_SUBCLASS_NONE, /**< Not a device @since 1.14 */
409 ECORE_IMF_DEVICE_SUBCLASS_FINGER, /**< The normal flat of your finger @since 1.14 */
410 ECORE_IMF_DEVICE_SUBCLASS_FINGERNAIL, /**< A fingernail @since 1.14 */
411 ECORE_IMF_DEVICE_SUBCLASS_KNUCKLE, /**< A Knuckle @since 1.14 */
412 ECORE_IMF_DEVICE_SUBCLASS_PALM, /**< The palm of a users hand @since 1.14 */
413 ECORE_IMF_DEVICE_SUBCLASS_HAND_SIZE, /**< The side of your hand @since 1.14 */
414 ECORE_IMF_DEVICE_SUBCLASS_HAND_FLAT, /**< The flat of your hand @since 1.14 */
415 ECORE_IMF_DEVICE_SUBCLASS_PEN_TIP, /**< The tip of a pen @since 1.14 */
416 ECORE_IMF_DEVICE_SUBCLASS_TRACKPAD, /**< A trackpad style mouse @since 1.14 */
417 ECORE_IMF_DEVICE_SUBCLASS_TRACKPOINT, /**< A trackpoint style mouse @since 1.14 */
418 ECORE_IMF_DEVICE_SUBCLASS_TRACKBALL, /**< A trackball style mouse @since 1.14 */
419} Ecore_IMF_Device_Subclass; /**< A general subclass of device @since 1.14 */
420
393/** 421/**
394 * @struct _Ecore_IMF_Event_Preedit_Start 422 * @struct _Ecore_IMF_Event_Preedit_Start
395 * @brief The structure type used with the Preedit_Start Input Method event 423 * @brief The structure type used with the Preedit_Start Input Method event
@@ -575,6 +603,9 @@ struct _Ecore_IMF_Event_Key_Down
575 const char *string; /**< A UTF8 string if this keystroke has produced a visible string to be ADDED */ 603 const char *string; /**< A UTF8 string if this keystroke has produced a visible string to be ADDED */
576 const char *compose; /**< A UTF8 string if this keystroke has modified a string in the middle of being composed - this string replaces the previous one */ 604 const char *compose; /**< A UTF8 string if this keystroke has modified a string in the middle of being composed - this string replaces the previous one */
577 unsigned int timestamp; /**< The timestamp when the event occurred */ 605 unsigned int timestamp; /**< The timestamp when the event occurred */
606 const char *dev_name; /**< The device name of the key pressed */
607 Ecore_IMF_Device_Class dev_class; /**< The device class of the key pressed */
608 Ecore_IMF_Device_Subclass dev_subclass; /**< The device subclass of the key pressed */
578}; 609};
579 610
580/** 611/**
@@ -590,6 +621,9 @@ struct _Ecore_IMF_Event_Key_Up
590 const char *string; /**< A UTF8 string if this keystroke has produced a visible string to be ADDED */ 621 const char *string; /**< A UTF8 string if this keystroke has produced a visible string to be ADDED */
591 const char *compose; /**< A UTF8 string if this keystroke has modified a string in the middle of being composed - this string replaces the previous one */ 622 const char *compose; /**< A UTF8 string if this keystroke has modified a string in the middle of being composed - this string replaces the previous one */
592 unsigned int timestamp; /**< The timestamp when the event occurred */ 623 unsigned int timestamp; /**< The timestamp when the event occurred */
624 const char *dev_name; /**< The device name of the key released */
625 Ecore_IMF_Device_Class dev_class; /**< The device class of the key released */
626 Ecore_IMF_Device_Subclass dev_subclass; /**< The device subclass of the key released */
593}; 627};
594 628
595/** 629/**