diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c index 499add6b71..4fc6130035 100644 --- a/src/lib/ecore_evas/ecore_evas.c +++ b/src/lib/ecore_evas/ecore_evas.c @@ -4353,7 +4353,7 @@ _direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_P eo_event_callback_call(e, EVAS_CANVAS_EVENT_POINTER, evt); processed = ev->evas_done; - eo_del(evt); + eo_unref(evt); return processed; } diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h index c1354e5136..9932774745 100644 --- a/src/lib/evas/Evas_Legacy.h +++ b/src/lib/evas/Evas_Legacy.h @@ -407,6 +407,146 @@ EAPI void evas_event_feed_mouse_down(Evas *obj, int b, Evas_Button_F */ EAPI void evas_event_feed_mouse_wheel(Evas *obj, int direction, int z, unsigned int timestamp, const void *data); +/** + * @brief Mouse in event feed. + * + * This function will set some evas properties that is necessary when the mouse + * in event happens. It prepares information to be treated by the callback + * function. + * + * @param[in] data The data for canvas. + */ +EAPI void evas_event_feed_mouse_in(Evas *obj, unsigned int timestamp, const void *data); + +/** + * @brief Mouse out event feed. + * + * This function will set some evas properties that is necessar when the mouse + * out event happens. It prepares information to be treated by the callback + * function. + * + * @param[in] data The data for canvas. + */ +EAPI void evas_event_feed_mouse_out(Evas *obj, unsigned int timestamp, const void *data); + +/** + * @brief Mouse cancel event feed. + * + * This function will call generate a mouse up event. + * + * @param[in] data The data for canvas. + */ +EAPI void evas_event_feed_mouse_cancel(Evas *obj, unsigned int timestamp, const void *data); + +/* multi touch events - no doc */ +EAPI void evas_event_input_multi_down(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data); +EAPI void evas_event_input_multi_move(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data); +EAPI void evas_event_input_multi_up(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data); +EAPI void evas_event_feed_multi_down(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data); +EAPI void evas_event_feed_multi_move(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data); +EAPI void evas_event_feed_multi_up(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data); + +/** + * @brief Key down event feed. + * + * This function will set some evas properties that is necessary when a key is + * pressed. It prepares information to be treated by the callback function. + * + * @param[in] key The key pressed. + * @param[in] string A string. + * @param[in] compose The compose string. + * @param[in] timestamp Timestamp of the mouse up event. + * @param[in] data Data for canvas. + */ +EAPI void evas_event_feed_key_down(Evas *obj, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data); + +/** + * @brief Key up event feed. + * + * This function will set some evas properties that is necessary when a key is + * released. It prepares information to be treated by the callback function. + * + * @param[in] key The key released. + * @param[in] string A string. + * @param[in] compose Compose. + * @param[in] timestamp Timestamp of the mouse up event. + * @param[in] data Data for canvas. + */ +EAPI void evas_event_feed_key_up(Evas *obj, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data); + +/** + * @brief Key down event feed with keycode. + * + * This function will set some evas properties that is necessary when a key is + * pressed. It prepares information to be treated by the callback function. + * + * @param[in] key The key released. + * @param[in] string A string. + * @param[in] compose Compose. + * @param[in] timestamp Timestamp of the mouse up event. + * @param[in] data Data for canvas. + * @param[in] keycode Key scan code numeric value for canvas. + * + * @since 1.10 + */ +EAPI void evas_event_feed_key_down_with_keycode(Evas *obj, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data, unsigned int keycode); + +/** + * @brief Key up event feed with keycode. + * + * This function will set some evas properties that is necessary when a key is + * released. It prepares information to be treated by the callback function. + * + * @param[in] key The key released. + * @param[in] string A string. + * @param[in] compose Compose. + * @param[in] timestamp Timestamp of the mouse up event. + * @param[in] data Data for canvas. + * @param[in] keycode Key scan code numeric value for canvas. + * + * @since 1.10 + */ +EAPI void evas_event_feed_key_up_with_keycode(Evas *obj, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data, unsigned int keycode); + +/** + * @brief Input device axis update event feed. + * + * This function will set some evas properties that is necessary when an e.g. + * stylus axis is updated. It prepares information to be treated by the + * callback function. + * + * @param[in] device System-provided device identifier. + * @param[in] toolid Type of tool currently being used. + * @param[in] naxes Number of elements in the \p axis array. + * @param[in] axis Array containing the current value of all updated axes. + * @param[in] data Data for canvas. + * + * @since 1.13 + */ +EAPI void evas_event_feed_axis_update(Evas *obj, unsigned int timestamp, int device, int toolid, int naxes, const Evas_Axis *axis, const void *data); + +/** + * @brief Hold event feed. + * + * This function makes the object to stop sending events. + * + * @param[in] timestamp The timestamp of the mouse up event. + * @param[in] data The data for canvas. + */ +EAPI void evas_event_feed_hold(Evas *obj, int hold, unsigned int timestamp, const void *data); + +/** + * @brief Re feed event. + * + * This function re-feeds the event pointed by event_copy. + * + * This function call evas_event_feed_* functions, so it can cause havoc if not + * used wisely. Please use it responsibly. + * + * @param[in] event_type Event type. + */ +EAPI void evas_event_refeed_event(Evas *obj, void *event_copy, Evas_Callback_Type event_type); + /** * @} */ diff --git a/src/lib/evas/canvas/evas_canvas.eo b/src/lib/evas/canvas/evas_canvas.eo index 8bcf38cd48..16673ecc2c 100644 --- a/src/lib/evas/canvas/evas_canvas.eo +++ b/src/lib/evas/canvas/evas_canvas.eo @@ -410,8 +410,8 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) canvas. When this function is called it will return a value of either - $false or $true, depending on if $event_feed_mouse_in or - $event_feed_mouse_out have been called to feed in a mouse + $false or $true, depending on if event_feed_mouse_in or + event_feed_mouse_out have been called to feed in a mouse enter event into the canvas. A return value of $true indicates the mouse is logically @@ -504,7 +504,7 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) any host system's pointing device abilities. A canvas by default begins with no mouse buttons being - pressed and only calls to $event_feed can alter that. + pressed and only pointer move events can alter that. The least significant bit corresponds to the first mouse button (button 1) and the most significant bit corresponds @@ -561,22 +561,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @in keyname: const(char)* @nonull; [[The name of the lock to enable.]] } } - event_feed_key_down { - [[Key down event feed. - - This function will set some evas properties that is necessary - when a key is pressed. It prepares information to be treated - by the callback function. - ]] - params { - @in keyname: const(char)*; [[Name of the key.]] - @in key: const(char)*; [[The key pressed.]] - @in string: const(char)*; [[A string.]] - @in compose: const(char)*; [[The compose string.]] - @in timestamp: uint; [[Timestamp of the mouse up event.]] - @in data: const(void)*; [[Data for canvas.]] - } - } key_modifier_mask_get @const { [[Creates a bit mask from the $keyname modifier key. Values returned from different calls to it may be ORed together, @@ -636,61 +620,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @in keyname: const(char)* @nonull; [[The name of the modifier to disable.]] } } - event_feed_hold { - [[Hold event feed. - - This function makes the object to stop sending events. - ]] - params { - @in hold: int; [[The hold.]] - @in timestamp: uint; [[The timestamp of the mouse up event.]] - @in data: const(void)*; [[The data for canvas.]] - } - } - event_feed_key_up { - [[Key up event feed. - - This function will set some evas properties that is necessary - when a key is released. It prepares information to be treated - by the callback function. - ]] - params { - @in keyname: const(char)*; [[Name of the key.]] - @in key: const(char)*; [[The key released.]] - @in string: const(char)*; [[A string.]] - @in compose: const(char)*; [[Compose.]] - @in timestamp: uint; [[Timestamp of the mouse up event.]] - @in data: const(void)*; [[Data for canvas.]] - } - } - event_feed_mouse_out { - [[Mouse out event feed. - - This function will set some evas properties that is necessar - when the mouse out event happens. It prepares information to - be treated by the callback function. - ]] - params { - @in timestamp: uint; [[Timestamp of the mouse up event.]] - @in data: const(void)*; [[The data for canvas.]] - } - } - event_input_multi_move { - params { - @in d: int; - @in x: int; - @in y: int; - @in rad: double; - @in radx: double; - @in rady: double; - @in pres: double; - @in ang: double; - @in fx: double; - @in fy: double; - @in timestamp: uint; - @in data: const(void)*; - } - } objects_at_xy_get @const { [[Retrieve a list of Evas objects lying over a given position in a canvas. @@ -720,40 +649,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) ]] } } - event_input_multi_up { - params { - @in d: int; - @in x: int; - @in y: int; - @in rad: double; - @in radx: double; - @in rady: double; - @in pres: double; - @in ang: double; - @in fx: double; - @in fy: double; - @in flags: Efl.Pointer.Button_Flags; - @in timestamp: uint; - @in data: const(void)*; - } - } - event_feed_multi_down { - params { - @in d: int; - @in x: int; - @in y: int; - @in rad: double; - @in radx: double; - @in rady: double; - @in pres: double; - @in ang: double; - @in fx: double; - @in fy: double; - @in flags: Efl.Pointer.Button_Flags; - @in timestamp: uint; - @in data: const(void)*; - } - } render_async { [[Render the given Evas canvas asynchronously. @@ -833,23 +728,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) */ return: uint; [[The number of touched point on the evas.]] } - event_input_multi_down { - params { - @in d: int; - @in x: int; - @in y: int; - @in rad: double; - @in radx: double; - @in rady: double; - @in pres: double; - @in ang: double; - @in fx: double; - @in fy: double; - @in flags: Efl.Pointer.Button_Flags; - @in timestamp: uint; - @in data: const(void)*; - } - } nochange_pop { [[Pop the nochange flag down 1. @@ -938,19 +816,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @in keyname: const(char)* @nonull; [[The name of the modifier to enable.]] } } - event_refeed_event { - [[Re feed event. - - This function re-feeds the event pointed by event_copy. - - This function call evas_event_feed_* functions, so it can - cause havoc if not used wisely. Please use it responsibly. - ]] - params { - @in event_copy: void *; [[The event to refeed.]] - @in event_type: Evas.Callback_Type; [[Event type.]] - } - } font_available_list @const { [[List of available font descriptions known or found by this evas. @@ -1121,22 +986,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @in x: Evas.Coord; [[The canvas x coordinate.]] } } - event_feed_multi_move { - params { - @in d: int; - @in x: int; - @in y: int; - @in rad: double; - @in radx: double; - @in rady: double; - @in pres: double; - @in ang: double; - @in fx: double; - @in fy: double; - @in timestamp: uint; - @in data: const(void)*; - } - } render_updates { [[Force immediate renderization of the given Evas canvas. @@ -1304,18 +1153,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @.render_idle_flush might discard too. ]] } - event_feed_mouse_in { - [[Mouse in event feed. - - This function will set some evas properties that is necessary - when the mouse in event happens. It prepares information to be - treated by the callback function. - ]] - params { - @in timestamp: uint; [[The timestamp of the mouse up event.]] - @in data: const(void)*; [[The data for canvas.]] - } - } object_top_in_rectangle_get @const { [[Retrieve the Evas object stacked at the top of a given rectangular region in a canvas @@ -1359,23 +1196,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) [[Force renderization of the given canvas.]] } - event_feed_multi_up { - params { - @in d: int; - @in x: int; - @in y: int; - @in rad: double; - @in radx: double; - @in rady: double; - @in pres: double; - @in ang: double; - @in fx: double; - @in fy: double; - @in flags: Efl.Pointer.Button_Flags; - @in timestamp: uint; - @in data: const(void)*; - } - } font_path_prepend { [[Prepends a font path to the list of font paths used by the given evas. @@ -1401,16 +1221,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @.damage_rectangle_add). ]] } - event_feed_mouse_cancel { - [[Mouse cancel event feed. - - This function will call generate a mouse up event. - ]] - params { - @in timestamp: uint; [[The timestamp of the mouse up event.]] - @in data: const(void)*; [[The data for canvas.]] - } - } coord_screen_x_to_world @const { [[Convert/scale an output screen coordinate into canvas coordinates. @@ -1497,62 +1307,6 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator) @in y: Evas.Coord; [[The canvas y coordinate.]] } } - event_feed_key_down_with_keycode { - [[Key down event feed with keycode. - - This function will set some evas properties that is necessary - when a key is pressed. It prepares information to be treated - by the callback function. - - @since 1.10 - ]] - params { - @in keyname: const(char)*; [[Name of the key.]] - @in key: const(char)*; [[The key released.]] - @in string: const(char)*; [[A string.]] - @in compose: const(char)*; [[Compose.]] - @in timestamp: uint; [[Timestamp of the mouse up event.]] - @in data: const(void)*; [[Data for canvas.]] - @in keycode: uint; [[Key scan code numeric value for canvas.]] - } - } - event_feed_key_up_with_keycode { - [[Key up event feed with keycode. - - This function will set some evas properties that is necessary - when a key is released. It prepares information to be treated - by the callback function. - - @since 1.10 - ]] - params { - @in keyname: const(char)*; [[Name of the key.]] - @in key: const(char)*; [[The key released.]] - @in string: const(char)*; [[A string.]] - @in compose: const(char)*; [[Compose.]] - @in timestamp: uint; [[Timestamp of the mouse up event.]] - @in data: const(void)*; [[Data for canvas.]] - @in keycode: uint; [[Key scan code numeric value for canvas.]] - } - } - event_feed_axis_update { - [[Input device axis update event feed. - - This function will set some evas properties that is necessary - when an e.g. stylus axis is updated. It prepares information - to be treated by the callback function. - - @since 1.13 - ]] - params { - @in timestamp: uint; [[Timestamp of the axis event.]] - @in device: int; [[System-provided device identifier.]] - @in toolid: int; [[Type of tool currently being used.]] - @in naxes: int; [[Number of elements in the \p axis array.]] - @in axis: const(Evas.Axis)*; [[Array containing the current value of all updated axes.]] - @in data: const(void)*; [[Data for canvas.]] - } - } } implements { Eo.Base.constructor; diff --git a/src/lib/evas/canvas/evas_events.c b/src/lib/evas/canvas/evas_events.c index 6fd112c6c8..c4eb793045 100644 --- a/src/lib/evas/canvas/evas_events.c +++ b/src/lib/evas/canvas/evas_events.c @@ -1333,9 +1333,10 @@ evas_event_feed_mouse_up(Eo *eo_e, int b, Evas_Button_Flags flags, unsigned int _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_feed_mouse_cancel(Eo *eo_e, Evas_Public_Data *e, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_mouse_cancel(Eo *eo_e, unsigned int timestamp, const void *data) { + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); Evas_Coord_Touch_Point *point; Eina_List *l, *ll; Evas_Event_Flags flags; @@ -1923,10 +1924,10 @@ evas_event_feed_mouse_move(Eo *eo_e, int x, int y, unsigned int timestamp, const _canvas_event_feed_mouse_move_internal(eo_e, e, x, y, timestamp, data); } -EOLIAN void -_evas_canvas_event_feed_mouse_in(Eo *eo_e, Evas_Public_Data *e, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_mouse_in(Eo *eo_e, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); Eina_List *ins; Eina_List *l; Evas_Event_Mouse_In ev; @@ -1988,9 +1989,10 @@ _evas_canvas_event_feed_mouse_in(Eo *eo_e, Evas_Public_Data *e, unsigned int tim _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_feed_mouse_out(Eo *eo_e, Evas_Public_Data *e, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_mouse_out(Eo *eo_e, unsigned int timestamp, const void *data) { + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); Evas_Event_Mouse_Out ev; int event_id = 0; @@ -2142,10 +2144,10 @@ _canvas_event_feed_multi_down_internal(Evas *eo_e, void *_pd, _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_input_multi_down(Eo *eo_e, Evas_Public_Data *e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) +EAPI void +evas_event_input_multi_down(Eo *eo_e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_multi_down_internal(eo_e, e, d, x - e->framespace.x, y - e->framespace.y, @@ -2153,10 +2155,10 @@ _evas_canvas_event_input_multi_down(Eo *eo_e, Evas_Public_Data *e, int d, int x, fx, fy, flags, timestamp, data); } -EOLIAN void -_evas_canvas_event_feed_multi_down(Eo *eo_e, Evas_Public_Data *e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_multi_down(Eo *eo_e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_multi_down_internal(eo_e, e, d, x, y, rad, radx, rady, pres, ang, fx, fy, flags, timestamp, data); @@ -2246,10 +2248,10 @@ _canvas_event_feed_multi_up_internal(Evas *eo_e, void *_pd, _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_input_multi_up(Eo *eo_e, Evas_Public_Data *e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) +EAPI void +evas_event_input_multi_up(Eo *eo_e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_multi_up_internal(eo_e, e, d, x - e->framespace.x, y - e->framespace.y, @@ -2258,10 +2260,10 @@ _evas_canvas_event_input_multi_up(Eo *eo_e, Evas_Public_Data *e, int d, int x, i data); } -EOLIAN void -_evas_canvas_event_feed_multi_up(Eo *eo_e, Evas_Public_Data *e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_multi_up(Eo *eo_e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_multi_up_internal(eo_e, e, d, x, y, rad, radx, rady, pres, ang, fx, fy, flags, timestamp, data); } @@ -2438,20 +2440,20 @@ _canvas_event_feed_multi_move_internal(Eo *eo_e, void *_pd, int d, int x, _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_input_multi_move(Eo *eo_e, Evas_Public_Data *e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data) +EAPI void +evas_event_input_multi_move(Eo *eo_e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_multi_move_internal(eo_e, e, d, x - e->framespace.x, y - e->framespace.y, rad, radx, rady, pres, ang, fx, fy, timestamp, data); } -EOLIAN void -_evas_canvas_event_feed_multi_move(Eo *eo_e, Evas_Public_Data *e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_multi_move(Eo *eo_e, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_multi_move_internal(eo_e, e, d, x, y, rad, radx, rady, pres, ang, fx, fy, timestamp, data); } @@ -2667,38 +2669,42 @@ _canvas_event_feed_key_up_internal(Eo *eo_e, _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_feed_key_down(Eo *eo_e, Evas_Public_Data *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_key_down(Eo *eo_e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) { + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_key_down_internal(eo_e, e, keyname, key, string, compose, timestamp, data, 0); } -EOLIAN void -_evas_canvas_event_feed_key_up(Eo *eo_e, Evas_Public_Data *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_key_up(Eo *eo_e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) { + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_key_up_internal(eo_e, e, keyname, key, string, compose, timestamp, data, 0); } -EOLIAN void -_evas_canvas_event_feed_key_down_with_keycode(Eo *eo_e, Evas_Public_Data *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data, unsigned int keycode) +EAPI void +evas_event_feed_key_down_with_keycode(Eo *eo_e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data, unsigned int keycode) { + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_key_down_internal(eo_e, e, keyname, key, string, compose, timestamp, data, keycode); } -EOLIAN void -_evas_canvas_event_feed_key_up_with_keycode(Eo *eo_e, Evas_Public_Data *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data, unsigned int keycode) +EAPI void +evas_event_feed_key_up_with_keycode(Eo *eo_e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data, unsigned int keycode) { + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); _canvas_event_feed_key_up_internal(eo_e, e, keyname, key, string, compose, timestamp, data, keycode); } -EOLIAN void -_evas_canvas_event_feed_hold(Eo *eo_e, Evas_Public_Data *e, int hold, unsigned int timestamp, const void *data) +EAPI void +evas_event_feed_hold(Eo *eo_e, int hold, unsigned int timestamp, const void *data) { - + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); Eina_List *l, *copy; Evas_Event_Hold ev; Evas_Object *eo_obj; @@ -2781,10 +2787,11 @@ _canvas_event_feed_axis_update_internal(Evas *eo_e, Evas_Public_Data *e, unsigne _evas_unwalk(e); } -EOLIAN void -_evas_canvas_event_feed_axis_update(Evas *eo_e, Evas_Public_Data *pd, unsigned int timestamp, int device, int toolid, int naxis, const Evas_Axis *axis, const void *data) +EAPI void +evas_event_feed_axis_update(Evas *eo_e, unsigned int timestamp, int device, int toolid, int naxis, const Evas_Axis *axis, const void *data) { - _canvas_event_feed_axis_update_internal(eo_e, pd, timestamp, device, toolid, naxis, axis, data); + Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); + _canvas_event_feed_axis_update_internal(eo_e, e, timestamp, device, toolid, naxis, axis, data); } static void @@ -2941,10 +2948,9 @@ _evas_object_pointer_mode_get(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data return obj->pointer_mode; } -EOLIAN void -_evas_canvas_event_refeed_event(Eo *eo_e, Evas_Public_Data *e EINA_UNUSED, void *event_copy, Evas_Callback_Type event_type) +EAPI void +evas_event_refeed_event(Eo *eo_e, void *event_copy, Evas_Callback_Type event_type) { - if (!event_copy) return; switch (event_type)