summaryrefslogtreecommitdiff
path: root/src/lib/elput/elput_private.h (follow)
AgeCommit message (Collapse)Author
2017-07-24elput: Fix multiple open/close of drm devicesDerek Foreman
When I added the code to probe drm devices to ensure they're modeset capable (ref 414d406b3b442216543cdaef112787696ae09898) I didn't realize elput didn't allow us to open and close more than one drm device at startup without blowing up libinput. This is a somewhat dirty hack to rough that in. The problem is that open/close the device during startup will result in an async "gone" callback from logind, which then kicks off an input shutdown. We need to try harder to only do that shutdown when it makes sense.
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 <cp.michael@samsung.com>
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-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 <cp.michael@samsung.com>
2017-06-08elput: Minor formatting fixChris Michael
NB: No functional changes Signed-off-by: Chris Michael <cp.michael@samsung.com>
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
@fix
2017-06-02elput: add refcounting for seats/devicesMike Blumenkrantz
ensure lifetimes persist through events @fix
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: 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-01-12elput: Store touch timestamp and slotChris Michael
This patch adds a timestamp field to the touch structure so that we can store it and do not have to refetch the timestamp when sending touch events. Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-06-21elput: Support suspending and resuming inputs on vt switchChris Michael
This patch fixes an issue where input would stop working when you vt-switch away and back again in a running Enlightenment Wayland session. Basically, when we vt-switch away, we need to tell libinput to suspend input event processing, and when we return to re-enable it. Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27elput: Add API function to support caching of existing keymapChris Michael
@feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27elput: Add API function to support caching of an xkb_contextChris Michael
@feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26elput: Add APIs to support keyboard key remappingChris Michael
This patch adds 2 new API functions which can enable keyboard key remapping, and set which keys are to be remapped. @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-26elput: Add API function to calibrate input devicesChris Michael
This adds an API function that can be called to calibrate input devices based on a given output size @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-25elput: further simplify device internalsMike Blumenkrantz
'window' and pointer max w/h attributes are set for a manager object, so let the attributes stay there. this also resolves issues where devices created at a later point would fail to be initialized with these attributes
2016-05-25elput: change some functions and internal flags to enable async input setupMike Blumenkrantz
this sets attributes on the Elput_Manager struct so that devices created at a later point can then have relevant attributes applied to them
2016-05-25elput: define and implement an async device opening interface for libinputMike Blumenkrantz
this adds an overly-complex method of removing blocking dbus calls from libinput's synchronous device initialization architecture. libinput was clearly never meant to be used in this way, but we're doing it anyway because we're efl. #SamsungFeatures
2016-05-25elput: remove 'sync' param from device managementMike Blumenkrantz
unnecessarily complicates code
2016-05-24elput: Add API function to set left-handed deviceChris Michael
This commit adds an API function which Enlightenment can call in order to set an input device to be "left-handed". Mainly used for a mouse pointer, but not specific to pointers. @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-09elput: Add code to handle keybindings for vt switchingChris Michael
This patch makes elput handle receiving the key combinations for vt switching and perform the actual switch itself. This is done so that ecore_drm2, ecore_fb, etc, etc do not each need their own code to handle vt switching. @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-09elput: Add API function to switch to a given vtChris Michael
This patch adds a new API function to Elput that can be used to switch to a given VT. This allows drm2 or enlightenment to switch to a given virtual terminal in response to keybindings. @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-04elput: Add API function to set pointer position on a given seatChris Michael
Small patch to add an API function that can be used to set the current pointer position on a given seat name. This function (typically) will be used inside an Ecore_Evas to "pointer warp". @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Add API function to set output size on an input deviceChris Michael
This function is used to adjust device calibration based on size of output Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Handle various events from libinput and pass to ecore_eventChris Michael
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Add event structures for keymap and modifier sending eventsChris Michael
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Add support for creating and removing devicesChris Michael
This patch adds start of code to create or remove input devices such as keyboards, pointers, or touch devices. Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Add API function to initialize and shutdown input devicesChris Michael
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Remove vt activate/restore from input manager interfaceChris Michael
As this library is just going to deal with libinput, we don't need to have interface functions to activate or restore a virtual terminal. Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Add API functions to open and close an input deviceChris Michael
This adds new API functions which can be called to open or close an input device and take control (or release control) of said device Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Add input manager interface and APIs to connect & disconnectChris Michael
This commit adds the start of the Elput Manager & Interface code. This will be used as an inteface to various backend methods of session & device control (ie: systemd, direct interface, etc). This will provide various abstractions for working with libinput when opening/closing input devices. Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-04-13elput: Initial checkin of elput libraryChris Michael
The elput library is an efl abstraction for the libinput library which can be used by various other subsystems (ecore_fb, ecore_drm, etc) to handle interfacing with libinput without having to duplicate the code in each subsystem. Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>