diff options
author | Ilia Bozhinov <ammen99@gmail.com> | 2018-07-29 20:02:00 +0300 |
---|---|---|
committer | Ilia Bozhinov <ammen99@gmail.com> | 2018-07-29 21:58:33 +0300 |
commit | 2e6eb097b6e23b8923bbfc68b1843d5ccde1955b (patch) | |
tree | c233864ae1c86a68df205d6a8ead79613f54796f /include | |
parent | f1b65b34a6caff8db7c729b6362ec57f2707aa1a (diff) |
rootston: focus newly-created surfaces
Whenever a new surface is created, we have to update the cursor focus,
even if there's no input event. So, we generate one motion event, and
reuse the code to update the proper cursor focus. We need to do this
for all surface roles - toplevels, popups, subsurfaces.
Fixes #1162
Diffstat (limited to 'include')
-rw-r--r-- | include/rootston/cursor.h | 3 | ||||
-rw-r--r-- | include/rootston/input.h | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/include/rootston/cursor.h b/include/rootston/cursor.h index f7410dec..2c687a39 100644 --- a/include/rootston/cursor.h +++ b/include/rootston/cursor.h @@ -80,4 +80,7 @@ void roots_cursor_handle_tool_tip(struct roots_cursor *cursor, void roots_cursor_handle_request_set_cursor(struct roots_cursor *cursor, struct wlr_seat_pointer_request_set_cursor_event *event); +void roots_cursor_update_position(struct roots_cursor *cursor, + uint32_t time); + #endif diff --git a/include/rootston/input.h b/include/rootston/input.h index ef46fab2..2cdb13e6 100644 --- a/include/rootston/input.h +++ b/include/rootston/input.h @@ -32,4 +32,6 @@ struct roots_seat *input_get_seat(struct roots_input *input, char *name); struct roots_seat *input_last_active_seat(struct roots_input *input); +void input_update_cursor_focus(struct roots_input *input); + #endif |