libei  1.4.0
A library for Emulated Input
API for receiver clients

The receiver API is available only to clients that are not eis_client_is_sender(). More...

Functions

void eis_device_start_emulating (struct eis_device *device, uint32_t sequence)
 see ei_device_start_emulating More...
 
void eis_device_stop_emulating (struct eis_device *device)
 see ei_device_stop_emulating More...
 
void eis_device_frame (struct eis_device *device, uint64_t time)
 see ei_device_frame More...
 
void eis_device_pointer_motion (struct eis_device *device, double x, double y)
 see ei_device_pointer_motion More...
 
void eis_device_pointer_motion_absolute (struct eis_device *device, double x, double y)
 see ei_device_pointer_motion_absolute More...
 
void eis_device_button_button (struct eis_device *device, uint32_t button, bool is_press)
 see ei_device_button_button More...
 
void eis_device_scroll_delta (struct eis_device *device, double x, double y)
 see ei_device_scroll_delta More...
 
void eis_device_scroll_discrete (struct eis_device *device, int32_t x, int32_t y)
 see ei_device_scroll_discrete More...
 
void eis_device_scroll_stop (struct eis_device *device, bool stop_x, bool stop_y)
 see ei_device_scroll_stop More...
 
void eis_device_scroll_cancel (struct eis_device *device, bool cancel_x, bool cancel_y)
 see ei_device_scroll_cancel More...
 
void eis_device_keyboard_key (struct eis_device *device, uint32_t keycode, bool is_press)
 see ei_device_keyboard_key More...
 
struct eis_toucheis_device_touch_new (struct eis_device *device)
 see ei_device_touch_new More...
 
void eis_touch_down (struct eis_touch *touch, double x, double y)
 see ei_touch_down More...
 
void eis_touch_motion (struct eis_touch *touch, double x, double y)
 see ei_touch_motion More...
 
void eis_touch_up (struct eis_touch *touch)
 see ei_touch_up More...
 
void eis_touch_cancel (struct eis_touch *touch)
 see ei_touch_cancel More...
 
struct eis_toucheis_touch_ref (struct eis_touch *touch)
 see ei_touch_ref More...
 
struct eis_toucheis_touch_unref (struct eis_touch *touch)
 see ei_touch_unref More...
 
void eis_touch_set_user_data (struct eis_touch *touch, void *user_data)
 see ei_touch_set_user_data More...
 
void * eis_touch_get_user_data (struct eis_touch *touch)
 see ei_touch_get_user_data More...
 
struct eis_deviceeis_touch_get_device (struct eis_touch *touch)
 see ei_touch_get_device More...
 

Detailed Description

The receiver API is available only to clients that are not eis_client_is_sender().

For those clients the EIS implemententation creates devices and sends events to the libei client. IOW the EIS implementation acts as the sender. The primary use-case for this is input capturing, e.g. InputLeap.

It is a client bug to call any of these functions for a client created with ei_new_sender().

Function Documentation

void eis_device_button_button ( struct eis_device device,
uint32_t  button,
bool  is_press 
)
void eis_device_frame ( struct eis_device device,
uint64_t  time 
)
void eis_device_keyboard_key ( struct eis_device device,
uint32_t  keycode,
bool  is_press 
)
void eis_device_pointer_motion ( struct eis_device device,
double  x,
double  y 
)
void eis_device_pointer_motion_absolute ( struct eis_device device,
double  x,
double  y 
)
void eis_device_scroll_cancel ( struct eis_device device,
bool  cancel_x,
bool  cancel_y 
)
void eis_device_scroll_delta ( struct eis_device device,
double  x,
double  y 
)
void eis_device_scroll_discrete ( struct eis_device device,
int32_t  x,
int32_t  y 
)
void eis_device_scroll_stop ( struct eis_device device,
bool  stop_x,
bool  stop_y 
)
void eis_device_start_emulating ( struct eis_device device,
uint32_t  sequence 
)
void eis_device_stop_emulating ( struct eis_device device)
struct eis_touch* eis_device_touch_new ( struct eis_device device)
void eis_touch_cancel ( struct eis_touch touch)
void eis_touch_down ( struct eis_touch touch,
double  x,
double  y 
)
struct eis_device* eis_touch_get_device ( struct eis_touch touch)
void* eis_touch_get_user_data ( struct eis_touch touch)
void eis_touch_motion ( struct eis_touch touch,
double  x,
double  y 
)
struct eis_touch* eis_touch_ref ( struct eis_touch touch)
void eis_touch_set_user_data ( struct eis_touch touch,
void *  user_data 
)
struct eis_touch* eis_touch_unref ( struct eis_touch touch)
void eis_touch_up ( struct eis_touch touch)