path: root/src/lib/evas/canvas/evas_callbacks.c (follow)
AgeCommit message (Collapse)Author
2015-11-01Eo: Partial implementation to remove eo_dodevs/felipealmeida/eo_optimisationsFelipe Magno de Almeida
The old naming is inconsistent with the rest of the EFL. This fixes that. Since we are already breaking ABI (and possibly API), we should fix this too.
2015-09-28Eo: Drop doc field from ops and events.Tom Hacohen
This hasn't been used for a while. Since we are going to break Eo a bit anyway it's a good opportunity to drop this. This may cause a slight performance issues with legacy events, such as smart callbacks. This shouldn't really be a problem as we've migrated away from them. If it does, we need to migrate the remaining parts. Only relevant for callbacks that are added before the classes are created, which shouldn't be possible except for smart, only for old evas callbacks.
2015-09-28evas - protect against invalid obj id in legacy wrapper funcCarsten Haitzler (Rasterman)
2015-06-11evas - eo canvas events - move viewport to last to match enums in legacyCarsten Haitzler (Rasterman)
2015-05-18evas: New Evas Callback added when viewport is resized.Amitesh Singh
Summary: @feature Reviewers: seoz, Hermet, cedric, raster Subscribers: seoz, cedric, Differential Revision:
2015-04-20Evas: Remove callbacks in reverse order with callback_delJean-Philippe Andre
This function is deprecated, because del_full should be used instead. Still, the documentation specifies in which order the callbacks should be deleted. Fixes T2077 (not really fixes according to the comment but fixes according to the doc).
2014-11-25Expose device (e.g. pen) axis information to applicationsJason Gerecke
Summary: This patch set adds the necessary code to expose device axis state to applications. This was primarily written with graphics tablets in mind, which -- in addition to acting like a mouse -- also provide information about pen pressure, tilt, etc. Other devices could potentially benefit from this API as well: touchscreens, joysticks, knob controllers, "spaceballs", etc. Whenever an update to the device state is recieved, an "Axis update" event is synthesized. This event contains the updated information, typically scaled and normalized to a particular logical range (e.g. zero to one for pressure, -pi to pi radians for angles, etc.). Information about the tool which generated the event is also stored so that applications can disambiguate events from multiple devices (or in the case of multitouch screens, individual fingers). This API is only wired up for use with X11 at the moment. Support for other backends (e.g. Wayland) should be easy to add for those familiar them. **Note**: The following is a list of changes from the "v2" patches originally sent to the mailinglist //Define and implement new Ecore_Event_Axis_Update events// * Harcode axis labels instead of including xserver-properties.h * Use C89-style comments * Use doxygen comments * Update comment text to note axes with unbounded/undefined ranges/units * Create "Ecore_Axis" and "Ecore_Axis_Label" typedefs * Reference typedef'd instead of raw types * Adjust how we count through valuators to support tilt/az * Add support for tilt and azimuth * Tweak memory management in case number of valuators differ * Expand TWIST axis normalization to declared range * Only normalize TWIST axis if resolution == 1 (wacom bug) * Cache label atoms on first use to minimize round-trips //Implement EVAS_CALLBACK_AXIS_UPDATE event and friends// * Update to doxygen comments * Update comment text to note axes with unbounded/undefined ranges/units * Typedef 'Evas_Axis_Label', 'Evas_Axis' * Move typedef for 'Evas_Event_Axis_Update' * Reference typedef'd instead of raw types //Wire the Ecore and Evas implementations of axis update events together// * Expose ecore_event_evas_axis_update in Ecore_Input_Evas.h * Move ecore_event_evas_axis_update to more logical position //DEBUG: Add axis update logging to evas-multi-touch.c// * Removed from patch set //Make evas-multi-touch demo use new axis functionality// * Have pressure adjust rectangle brightness instead of size * Use more available axis data when rendering rectangle (azimuth, tilt, twist) Test Plan: The evas-multi-touch demo was updated to support axis update events. A graphics tablet was then used to verify that the pressure, azimuth, tilt, and twist data was coming through correctly. Reviewers: cedric, raster Subscribers: cedric Differential Revision: Conflicts: src/lib/ecore_input/Ecore_Input.h Carsten Haitzler - ** fixed forward enum typedefs (make things unhappy) ** fixed conflict above ** fixed wrong param type for _evas_canvas_event_feed_axis_update() ** fixed @sinces to be 1.13 ** fixed formatting/indeting ** fixed order of operation reliance in if's with ()'s to be clear ** fixed functions to be static that should have been
2014-09-02evas: actually just define the right number of events.Cedric BAIL
2014-09-02evas: forgotten evas canvas event EVAS_CANVAS_EVENT_DEVICE_CHANGED.Cedric BAIL
2014-08-06evas: fix evas events order and count.Cedric BAIL
Before this patch, if you were hooking to any event above EVAS_OBJECT_EVENT_IMAGE_PRELOADED you will end up receiving another event instead and be fooled into receiving the right one. In the mean time I did discover that our table is missing one item, the equivalent to EVAS_CALLBACK_DEVICE_CHANGED. I don't know how to properly fix that one for now, so put NULL instead to at least avoid a random memory access.
2014-06-30Evas canvas eolian: Fix namespace and class name for the evas canvas.Tom Hacohen
2014-06-20Evas/Eolian: Eolian'ized Evas_Object events.Savio Sena
Summary: The event descriptions of Evas_Object were hardcoded instead of declared in evas_object.eo and thus no binding could be aware of their existence. Note: Evas_Canvas events were left as is. Reviewers: cedric, tasn, q66, JackDanielZ Reviewed By: q66 CC: felipealmeida, raster, smohanty, cedric Differential Revision:
2014-06-03Efl: Update code to use the new class names generated by eolian.Tom Hacohen
2014-04-10Adjust eo_do calls to work with the eo2 api.Tom Hacohen
2013-12-01evas - pre/post render events are for canvas not objectCarsten Haitzler (Rasterman)
the eo event naming was wrong for pre/post render event callbacks. they are for the canvas as a whole, not per object
2013-07-16Revert "eo: try to fix callback array to work on other system."Cedric Bail
This reverts commit e89f32d28d746e07422d84ddd356e1227f100ef8.
2013-07-16eo: try to fix callback array to work on other system.Cedric Bail
2013-06-26evas: cleanup headers. Should work on windows.Cedric Bail
2013-06-25evas: fix problem with dllimport on Windows.Christophe Sadoine
Signed-off-by: Cedric Bail <>
2013-06-20evas: Keep sane name for public headerSebastian Dransfeld
Evas_Common.h should be used for the public header, and rather rename evas_common.h internal header to another name. Sa: Evas_Common_Header.h -> Evas_Common.h evas_common.h -> evas_common_private.h Shouldn't have both Evas_Common.h and evas_common.h because of case insensitive filesystems.
2013-06-06evas/callbacks: Prevent post_event_callback_call recursion.Rafael Antognolli
If this function is called recursively, it will free the list of post callbacks before the list stops being used, which will cause a segfault. The only place where this seems to happen is on, probably due to the extensive mouse events which are launched in an unexpected way. This bug started happening after commit 164cc07237395f8fe6efa465e4f0c0c4863f78ed, where the _elm_scroll_page_x_get() started being called by a post_event callback, and forcing an edje recalc. This recalc triggered another post_event callback, thus causing the mentioned segfault. If there's a better way to prevent this from happening, please change the mentioned code.
2013-05-20evas: make canvas event to hot to be frozen.Cedric Bail
2013-05-06efl: rename the Eo events for Evas objects and evas canvas.Daniel Zaoui
2013-05-05Efl: adapt legacy Evas callbacks to Eo callbacks mechanism.Daniel Zaoui
2013-05-02revert the revert... damn you git!Carsten Haitzler (Rasterman)
Revert "Revert "Efl: replace eo_data_get for objects data referencing."" This reverts commit b64a2994b3b277cbe7fce17d7ee275fd0d78c925.
2013-05-02Revert "Efl: replace eo_data_get for objects data referencing."Carsten Haitzler (Rasterman)
This reverts commit 654a3f5f94c2464b8563d27da94a78398c112962.
2013-05-01Efl: replace eo_data_get for objects data referencing.Daniel Zaoui
2013-04-11evas: use eo_data_get less. Use clipees_has if you want to know the number ↵Cedric Bail
of child now.
2012-11-12protect against a whole bunch of NULLS that the new eo stuff brings out.Carsten Haitzler
SVN revision: 79129
2012-11-04merge: and now EvasVincent Torri
I've tested make -j 3 install and it works nicely I've tested expedite with software and opengl xlib, and it works. Not tested other engines, so please report any problems (engines or other) on the ML. TODO: examples and tests, I'll add them later ISSUE: Eina_Unicode size check. It indirectly depends on eina_config.h, which is created at the end of the configure script. So its size is always 0. I don't know how that size is used, so I can't do a lot, for now. SVN revision: 78895