path: root/src/lib/ecore_input (follow)
AgeCommit message (Collapse)Author
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-10-21[ecore_input] fix build break - the semicolonShinwoo Kim
2014-10-20ecore_input: update missing Ecore_Input.h API documentation.Pierre Le Magourou
2014-04-14Fixed a problem with e wl server that sent invalid key value to wl client.Gwanglim Lee
Summary: This problem occurred due to xkb_keysym_t value of libxkbcommon by e wl server. e wl server should pass keycode from evdev input device on to wl client. In order that e wl server receives valid keycode Ecore_Event_Key should have an extended data member. This patch should be applied with server side patch. @fix Test Plan: run e wl server -> create wl client -> type keys Reviewers: raster, devilhorns, zmike CC: cedric Differential Revision:
2013-12-26efl: Unified eina critical manro to CRI.Daniel Juyung Seo
Being annoyed by different types of eina critical macros - CRI, CRIT, CRITICAL -, I concluded to unify them to one. Discussed on IRC and finally, CRI was chosen to meet the consistency with other macros - ERR, WRN, INF, DBG - in terms of the number of characters. If there is any missing bits, please let me know.
2013-09-04ecore-input - compose seq handler now uses compact str - saves about 100kCarsten Haitzler (Rasterman)
2013-01-16efl/ecore_input: Move file instead. As requested by k-sStefan Schmidt
SVN revision: 82876
2013-01-15move ecore_input_evas out of ecore_input.Gustavo Sverzut Barbieri
we don't need this mess anymore :-P SVN revision: 82836
2013-01-10efl: forward typedef to avoid including useless headers.Gustavo Sverzut Barbieri
do not include Ecore_Input.h just to get Ecore_Window and Ecore_Getopt to get handful typedefs. NOTE: why do we have the #ifdefs around these predefs? At least GCC does not warn if we typedef twice the same thing (if they are identical) SVN revision: 82499
2012-12-02merge: add escape ecore, fix several bugsVincent Torri
SVN revision: 79995