Fake input manager

This interface allows other processes to provide fake input events. Purpose is on the one hand side to provide testing facilities like XTest on X11. But also to support use case like kdeconnect's mouse pad interface.

A compositor should not trust the input received from this interface. Clients should not expect that the compositor honors the requests from this interface.

Warning! The protocol described in this file is a desktop environment implementation detail. Regular clients must not use this protocol. Backward incompatible changes may be added without bumping the major version of the extension.

authenticate(application: string, reason: string)
Argument
Type
Description
applicationstring
user visible name of the application
reasonstring
reason why the application wants to use this interface
Information why the client wants to use the interface

A client should use this request to tell the compositor why it wants to use this interface. The compositor might use the information to decide whether it wants to grant the request. The data might also be passed to the user to decide whether the application should get granted access to this very privileged interface.

pointer_motion(delta_x: fixed, delta_y: fixed)
Argument
Type
Description
delta_xfixed
delta_yfixed
button(button: uint, state: uint)
Argument
Type
Description
buttonuint
stateuint
axis(axis: uint, value: fixed)
Argument
Type
Description
axisuint
valuefixed
touch_down(id: uint, x: fixed, y: fixed)
Argument
Type
Description
iduint
unique id for touch down event
xfixed
x coordinate for touch down event
yfixed
y coordinate for touch down event
touch down event

A client should use this request to send touch down event at specific coordinates.

touch_motion(id: uint, x: fixed, y: fixed)
Argument
Type
Description
iduint
unique id for touch motion event
xfixed
x coordinate for touch motion event
yfixed
y coordinate for touch motion event
touch motion event

A client should use this request to send touch motion to specific position.

touch_up(id: uint)
Argument
Type
Description
iduint
unique id for touch up event
touch up event

A client should use this request to send touch up event.

touch_cancel()
touch cancel event

A client should use this request to cancel the current touch event.

touch_frame()
touch frame event

A client should use this request to send touch frame event.

pointer_motion_absolute(x: fixed, y: fixed)
Argument
Type
Description
xfixed
yfixed
keyboard_key(button: uint, state: uint)
Argument
Type
Description
buttonuint
stateuint
destroy
Type: destructorsince 5
destroy()
Destroy the fake input device

Compositor Support

No compositor support found

SPDX-FileCopyrightText: 2015 Martin Gräßlin

SPDX-License-Identifier: LGPL-2.1-or-later