aboutsummaryrefslogtreecommitdiff
path: root/include/sway/input/cursor.h
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-08-02 23:49:25 +0100
committerGitHub <noreply@github.com>2018-08-02 23:49:25 +0100
commit3a54e2291c017397ceff60511c29fe70d229bc8b (patch)
treed340b7776f945462f5ecffc830ada4d5fbe82f51 /include/sway/input/cursor.h
parentc35a34262f8da368f65d37f811a2264647e0dae6 (diff)
parente07da5fc5c6ac5c186662b56b08ca71531119de0 (diff)
Merge branch 'master' into wlr-gamma-control
Diffstat (limited to 'include/sway/input/cursor.h')
-rw-r--r--include/sway/input/cursor.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/sway/input/cursor.h b/include/sway/input/cursor.h
index 5dd109ca..7ec45120 100644
--- a/include/sway/input/cursor.h
+++ b/include/sway/input/cursor.h
@@ -3,6 +3,8 @@
#include <stdint.h>
#include "sway/input/seat.h"
+#define SWAY_CURSOR_PRESSED_BUTTONS_CAP 32
+
struct sway_cursor {
struct sway_seat *seat;
struct wlr_cursor *cursor;
@@ -11,6 +13,7 @@ struct sway_cursor {
} previous;
struct wlr_xcursor_manager *xcursor_manager;
+ const char *image;
struct wl_client *image_client;
struct wl_listener motion;
@@ -28,6 +31,10 @@ struct sway_cursor {
uint32_t tool_buttons;
struct wl_listener request_set_cursor;
+
+ // Mouse binding state
+ uint32_t pressed_buttons[SWAY_CURSOR_PRESSED_BUTTONS_CAP];
+ size_t pressed_button_count;
};
void sway_cursor_destroy(struct sway_cursor *cursor);
@@ -37,4 +44,7 @@ void cursor_send_pointer_motion(struct sway_cursor *cursor, uint32_t time_msec,
void dispatch_cursor_button(struct sway_cursor *cursor, uint32_t time_msec,
uint32_t button, enum wlr_button_state state);
+void cursor_set_image(struct sway_cursor *cursor, const char *image,
+ struct wl_client *client);
+
#endif