path: root/src/lib/elput/elput_evdev.c (follow)
AgeCommit message (Collapse)Author
2020-06-23Get rid of trailing whitespaces (10 / 14)Elyes HAOUAS
Remove trailing whitespaces Differential Revision:
2018-07-10ecore_wl2&elput: correctly fill the key structureMarcel Hollerbach
Summary: the key structure has two fields key and keyname, those should be identical to the keystructures from x. the method xkb_keysym_to_utf8 however returns different values for keys like "minus" thus only relying on xkb_keysym_name files this issue. Reviewers: eagleeye, devilhorns Reviewed By: eagleeye Subscribers: cedric, #committers, zmike Tags: #efl Differential Revision:
2017-11-20elput: Remove unreachable codeChris Michael
As we are returning the evdev above, this block is unreachable so remove it. Fixes Coverity CID1382857 @fix Signed-off-by: Chris Michael <>
2017-11-12libinput check - move up to requiring 1.6 as a minimum for libinputCarsten Haitzler (Rasterman)
2017-11-09elput - ref device that is in the event queueCarsten Haitzler (Rasterman)
2017-11-08elput - re-enable switches (power buttons, lid etc.)Carsten Haitzler (Rasterman)
this is needed for devices that no longer produce aspi events for these. otherwise good luck getting any event on lid open/close or on pressing the power button. this also stops hiding switch events from libinput and now you can get switch events to find lid or tablet mode switching changes. @fix
2017-08-18wayland: fix num/caps lock handling in eventsMike Blumenkrantz
locks are not the same as modifiers, and the corresponding event flag must be set based on whichever value(s) are set instead of yolo mixing and matching @fix ref T5737
2017-07-28elput: Fix synthetic relative motion events based on abs eventsDerek Foreman
libinput won't actually give us this info, and logs an error instead. We can't synthesize based on pointer position due to pointer warping. So we must track abs reports and use previous abs reports to synthesize rel events.
2017-07-10elput: Update modifers for caps lockChris Michael
Small patch to fix issue of not setting caps_lock modifier. As we lookup this modifier index when creating keyboard info, we should be testing for it and setting seat->modifiers accordingly. @fix Signed-off-by: Chris Michael <>
2017-07-10elput: Fix support for setting keyboard led(s)Chris Michael
Small patch to update keyboard led(s) when caps, numlock, etc are pressed. This patch adds some fields to internal (non-API exposed) structures inside our private header (of a BETA-API library) and thus should still be ok during freeze. Fixes T5655 @fix Signed-off-by: Chris Michael <>
2017-07-07elput: don't leak event pointersMike Blumenkrantz
2017-06-16elput: remove keymap mmap+eventMike Blumenkrantz
this was originally intended to allow some code to be moved out of the compositor, but the idea turned out to be unfeasible since multiple display backends need to be supported and not all related components will provide similar functionality
2017-06-09elput: Document how keyboard events are processedBryce Harrington
Summary: Add some light function docs and code comments to explain the steps followed in processing hardware events for keyboard hits into actual printable characters. While this is internal functionality, the process is important and involves a couple external dependencies (libinput and libxkbcommon) so documenting this flow may help future developers avoid introducing bugs. Signed-off-by: Bryce Harrington <> Reviewers: zmike Subscribers: cedric, jpeg Differential Revision:
2017-06-09elput: Fix compilation warning (GCC)Jean-Philippe Andre
Use GCC sematic {} instead of {0} as the array members are structs, thus {0} isn't valid either.
2017-06-08elput: Add API function to swap dx & dy axis from pointer motion eventChris Michael
Small patch which adds an API function that can be called to swap x and y axis and invert them according to rotation angle. @feature Signed-off-by: Chris Michael <>
2017-06-08elput: Minor formatting fixesChris Michael
NB: No functional changes Signed-off-by: Chris Michael <>
2017-06-08elput: Get touch event slots using slot not seat_slotChris Michael
@fix Signed-off-by: Chris Michael <>
2017-06-05elput: fix sp. usefullBryce Harrington
Reviewers: cedric Reviewed By: cedric Subscribers: cedric, jpeg Differential Revision: Signed-off-by: Cedric BAIL <>
2017-06-02elput: send extra pointer motion event on first button press after resumeMike Blumenkrantz
ensure state is reapplied by other components
2017-06-02elput: move pointer coords into seat structMike Blumenkrantz
2017-06-02elput: ref evas devices in event structsMike Blumenkrantz
2017-06-02elput: add refcounting for seats/devicesMike Blumenkrantz
ensure lifetimes persist through events @fix
2017-06-02elput: add null checks for xkb compose pointersMike Blumenkrantz
somehow these can fail to be created
2017-05-26elput: do not set TABLET_PAD to have POINTER capsMike Blumenkrantz
2017-05-26elput: fallback to regular device name if output_name is not availableMike Blumenkrantz
2017-05-26wayland/drm: create evas_devices and add device pointer to input eventsMike Blumenkrantz
this is still semi-broken if a seat has many pointer-ish type devices since pointer devices in ecore-evas were never correctly implemented to be 1:1 with seat:cursor relationships @feature
2017-05-26elput: store output w/h and apply to devices on creationMike Blumenkrantz
fix async device initialization for devices which need this (e.g., touchpads) @fix
2017-05-26elput: rename and make public Elput_Device_Caps enumMike Blumenkrantz
2017-05-26elput/drm: redo xkb context/keymap settingMike Blumenkrantz
context and keymap need to be set at the same time in order to effectively update keyboard state, and active group should be accessible through api as well preserve old function ABI to ensure old binaries don't crash
2017-05-26elput: implement compose sequencesMike Blumenkrantz
@feature fix T5006
2017-05-26elput: fix key/keyname strings in key eventsMike Blumenkrantz
todo: move all this duplicated code somewhere
2017-05-26elput: sync _keyboard_keysym_translate() with ecore-wl2 code, add copyrightMike Blumenkrantz
2017-05-26elput: handle double/triple click for pen eventsMike Blumenkrantz
2017-05-26elput: send axis events for tablet toolsMike Blumenkrantz
2017-05-26elput: add initial input tablet supportMike Blumenkrantz
2017-05-26elput: use unrounded coords for subpixel struct members in eventsMike Blumenkrantz
2017-05-26elput: store device pressure for use in eventsMike Blumenkrantz
2017-05-26elput: group tablet input devices into pointer devicesMike Blumenkrantz
this is consistent with x11 behavior as well as the behavior of other toolkits under wayland @feature
2017-04-19elput: Remove specific case for pointer wheel tiltChris Michael
Since efl-jenkins does not have libinput >= 1.7.0, this commit broke the jenkins build due to missing LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT value. We should be able to get by with letting 'default' case handle it.... @fix Signed-off-by: Chris Michael <>
2017-04-19elput: Add case for wheel tilt when getting pointer axis valueChris Michael
libinput >= 1.7.0 added support for LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT, however we do not yet support that in elput, thus gcc was spilling a warning about an unhandled enumeration value here. We'll add a case for the above, plus a default to cover any future additions. Signed-off-by: Chris Michael <>
2017-04-19elput: Remove unused variableChris Michael
Gcc reports 'flags' as unused here, so remove it @fix Signed-off-by: Chris Michael <>
2017-04-18elput: use new API eina_file_close_on_exec.Cedric BAIL
2017-02-10vpath usage - simplify to bare minimum to make gustavo happyCarsten Haitzler (Rasterman)
since these are only local path resolves, the do and wait are technically not needed. also remove any other tmp strings and use the vpath string resolving feature to avoid printfs/strjoins/cats etc. etc. as well. also remember to remove old name string from evas shm code - it worked for me. i guess i was lucky and it happened to be NULL thus free was fine.
2017-02-09Revert "vpath usage - simplify to bare minimum to make gustavo happy"Derek Foreman
This reverts commit 2037474dc0fd2b360452f2a15abcbe533b57ca37. This causes the wayland_shm engine to seg fault immediately at startup when attempting to create shm buffers. Please make sure when committing changes to the wayland_shm engine to test on intel, exynos, and at least one platform without dmabuf capabilities - or using the EVAS_WAYLAND_SHM_DISABLE_DMABUF env var to disable dmabuf on intel or exynos. Anyone without the time or hardware to fully test changes to wayland_shm can submit a patch to phabricator and assign it to me so I can fully test it before landing.
2017-02-09vpath usage - simplify to bare minimum to make gustavo happyCarsten Haitzler (Rasterman)
since these are only local path resolves, the do and wait are technically not needed. also remove any other tmp strings and use the vpath string resolving feature to avoid printfs/strjoins/cats etc. etc. as well.
2017-02-09elput - use vpath to get xdg runtime to also be setuid safeCarsten Haitzler (Rasterman)
this time around... use a / at the end of the (:run:) virtual dir path to make it work.
2017-02-08Revert "elput - use vpath to get xdg runtime to also be setuid safe"Derek Foreman
This reverts commit 24e34e19a1db84cdcb6241207cb99d14ca83c41b. This broke keyboard input for the enlightenment wayland compositor, please test elput changes on at least one of the drm backends, preferably with enlightenment. The wayland compositor is hard enough to keep stable due to breakage from core changes only tested on X - but elput's main user is our wayland compositor, was this tested anywhere?
2017-02-08Revert "elput: Minor formatting fix"Derek Foreman
This reverts commit 95d93cb7208857cc89d79f3ffbbd7ee71ba1936f. Formatting change on top of a totally untested coverity fix that breaks input for enlightenment's wayland compositor. #TeamworkIsDeprecated
2017-02-08elput: Minor formatting fixChris Michael
NB: No functional changes, just some minor formatting adjustments Signed-off-by: Chris Michael <>
2017-02-08elput - use vpath to get xdg runtime to also be setuid safeCarsten Haitzler (Rasterman)
this fixes CID 1357168 in the case of setuid binaries as vpath handles setuid cases.