1 #pragma once 2 3 #include <stdint.h> 4 #include <wayland-client.h> 5 6 #include "wayland.h" 7 8 /* 9 * Custom defines for mouse wheel left/right buttons. 10 * 11 * Libinput does not define these. On Wayland, all scroll events (both 12 * vertical and horizontal) are reported not as buttons, as ‘axis’ 13 * events. 14 * 15 * Libinput _does_ define BTN_BACK and BTN_FORWARD, which is 16 * what we use for vertical scroll events. But for horizontal scroll 17 * events, there aren’t any pre-defined mouse buttons. 18 * 19 * Mouse buttons are in the range 0x110 - 0x11f, with joystick defines 20 * starting at 0x120. 21 */ 22 #define BTN_WHEEL_LEFT 0x11e 23 #define BTN_WHEEL_RIGHT 0x11f 24 25 extern const struct wl_keyboard_listener keyboard_listener; 26 extern const struct wl_pointer_listener pointer_listener; 27 28 void input_repeat(struct seat *seat, uint32_t key); 29 30 const char *xcursor_for_csd_border(struct terminal *term, int x, int y); 31