From 6f6a9af60ec98a6f18f1163317dee74b88328dab Mon Sep 17 00:00:00 2001 From: Brian Ashworth Date: Fri, 28 Dec 2018 13:48:09 -0500 Subject: Add helpers for improved mouse button parsing The following helper functions have been added to aid with parsing mouse buttons from a string: 1. `get_mouse_bindsym`: attempts to parse the string as an x11 button (button[1-9]) or as an event name (ex BTN_LEFT or BTN_SIDE) 2. `get_mouse_bindcode`: attempts to parse the string as an event code and validates that the event code is a button (starts with `BTN_`). 3. `get_mouse_button`: this is a conveniency function for callers that do not care whether a bindsym or bindcode are used and attempts to parse the string as a bindsym and then bindcode. None of these functions are used in this commit. The sole purpose of this commit is to make the larger set more granular and easier to review/manipulate. There will be a series of commits following this one that will modify any command which uses a mouse button to use these helpers. --- include/sway/input/cursor.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'include/sway/input/cursor.h') diff --git a/include/sway/input/cursor.h b/include/sway/input/cursor.h index 22e278b0..4636bf6b 100644 --- a/include/sway/input/cursor.h +++ b/include/sway/input/cursor.h @@ -86,4 +86,12 @@ void cursor_warp_to_container(struct sway_cursor *cursor, void cursor_warp_to_workspace(struct sway_cursor *cursor, struct sway_workspace *workspace); + +uint32_t get_mouse_bindsym(const char *name, char **error); + +uint32_t get_mouse_bindcode(const char *name, char **error); + +// Considers both bindsym and bindcode +uint32_t get_mouse_button(const char *name, char **error); + #endif -- cgit v1.2.3-54-g00ecf