mirror of
https://dev.lirent.ru/Vatrog/vm-automation-signaling.git
synced 2026-06-26 04:36:37 +03:00
0f452fe37c
ABS was glued onto device A alongside the keyboard and never worked right; it is not needed in practice. Remove it entirely: device A is now keyboard-only, and device B is the relative mouse (motion + buttons incl. middle + wheel). Drops the ptr_mode model (one layout remains), VMCTL_EV_ABS/PTR_*, and the absolute axes. The public input-kind enum keeps its numeric values (MOVE_REL=1, BTN=2, KEY=3, SCROLL=4) so the wire stays compatible -- only MOVE_ABS (0) is removed and its slot reserved; an unknown/0 kind is a no-op. Bump 0.3.11.
21 lines
955 B
C
21 lines
955 B
C
#ifndef VMSIG_VMHOST_H
|
|
#define VMSIG_VMHOST_H
|
|
|
|
/* Private config of the vmhost adapter (signaling's own QMP client).
|
|
* cfg==NULL or no qmp_path => stub mode (synthetic events, no QEMU).
|
|
* qmp_path given => armed: connect to QEMU's QMP socket ('@' prefix = abstract).
|
|
* No build flag needed — the client depends only on POSIX and its own code. */
|
|
typedef struct {
|
|
int stub;
|
|
const char* qmp_path;
|
|
/* Host->guest input bridge: evdev node paths of the uinput devices (published by the input
|
|
* seam). When non-NULL/non-empty, on reaching READY the seam adds an input-linux QMP object
|
|
* forwarding them into the guest (A=keyboard with grab_all, B=relative mouse). NULL/"" => no bridge
|
|
* (stub/tests are fail-closed). Pointers are borrowed from the stable per-endpoint home and
|
|
* outlive the adapter. */
|
|
const char* bridge_evdev_a;
|
|
const char* bridge_evdev_b;
|
|
} vmsig_vmhost_cfg;
|
|
|
|
#endif /* VMSIG_VMHOST_H */
|