Some actions could also take relative rather than absolute parameters,
so they really needed to be signed instead of explicitly unsigned.
Oops.
Fixes, e.g., action= MovePtr(x=-1,y=+1), which was reported as
(x=+65535,y=+1).
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
uint8_t device;
uint8_t v1_what;
uint8_t v1_index;
uint8_t device;
uint8_t v1_what;
uint8_t v1_index;
uint8_t v2_what;
uint8_t v2_index;
uint8_t v2_what;
uint8_t v2_index;
};
struct xkb_pointer_default_action {
uint8_t type;
uint8_t flags;
uint8_t affect;
};
struct xkb_pointer_default_action {
uint8_t type;
uint8_t flags;
uint8_t affect;
};
struct xkb_switch_screen_action {
uint8_t type;
uint8_t flags;
};
struct xkb_switch_screen_action {
uint8_t type;
uint8_t flags;
};
struct xkb_redirect_key_action {
};
struct xkb_redirect_key_action {
struct xkb_pointer_action {
uint8_t type;
uint8_t flags;
struct xkb_pointer_action {
uint8_t type;
uint8_t flags;
- uint16_t x;
- uint16_t y;
+ int16_t x;
+ int16_t y;
};
struct xkb_message_action {
};
struct xkb_message_action {
uint8_t type;
uint8_t flags;
uint8_t count;
uint8_t type;
uint8_t flags;
uint8_t count;