libei 1.3.0
A library for Emulated Input
API for receiver clients

Functions

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

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

◆ eis_device_button_button()

void eis_device_button_button ( struct eis_device * device,
uint32_t button,
bool is_press )

◆ eis_device_frame()

void eis_device_frame ( struct eis_device * device,
uint64_t time )

◆ eis_device_keyboard_key()

void eis_device_keyboard_key ( struct eis_device * device,
uint32_t keycode,
bool is_press )

◆ eis_device_pointer_motion()

void eis_device_pointer_motion ( struct eis_device * device,
double x,
double y )

◆ eis_device_pointer_motion_absolute()

void eis_device_pointer_motion_absolute ( struct eis_device * device,
double x,
double y )

◆ eis_device_scroll_cancel()

void eis_device_scroll_cancel ( struct eis_device * device,
bool cancel_x,
bool cancel_y )

◆ eis_device_scroll_delta()

void eis_device_scroll_delta ( struct eis_device * device,
double x,
double y )

◆ eis_device_scroll_discrete()

void eis_device_scroll_discrete ( struct eis_device * device,
int32_t x,
int32_t y )

◆ eis_device_scroll_stop()

void eis_device_scroll_stop ( struct eis_device * device,
bool stop_x,
bool stop_y )

◆ eis_device_start_emulating()

void eis_device_start_emulating ( struct eis_device * device,
uint32_t sequence )

◆ eis_device_stop_emulating()

void eis_device_stop_emulating ( struct eis_device * device)

◆ eis_device_touch_new()

struct eis_touch * eis_device_touch_new ( struct eis_device * device)

◆ eis_touch_down()

void eis_touch_down ( struct eis_touch * touch,
double x,
double y )

◆ eis_touch_get_device()

struct eis_device * eis_touch_get_device ( struct eis_touch * touch)

◆ eis_touch_get_user_data()

void * eis_touch_get_user_data ( struct eis_touch * touch)

◆ eis_touch_motion()

void eis_touch_motion ( struct eis_touch * touch,
double x,
double y )

◆ eis_touch_ref()

struct eis_touch * eis_touch_ref ( struct eis_touch * touch)

◆ eis_touch_set_user_data()

void eis_touch_set_user_data ( struct eis_touch * touch,
void * user_data )

◆ eis_touch_unref()

struct eis_touch * eis_touch_unref ( struct eis_touch * touch)

◆ eis_touch_up()

void eis_touch_up ( struct eis_touch * touch)