diff options
author | Rouven Czerwinski <rouven@czerwinskis.de> | 2019-01-07 13:19:47 +0100 |
---|---|---|
committer | Brian Ashworth <bosrsf04@gmail.com> | 2019-01-07 10:30:19 -0500 |
commit | fde900861af742f4078ace5720ddd5b02eeb0bac (patch) | |
tree | ac7ed6d556751f6871e328ef9ad7dedf7666063b /sway | |
parent | bd59602711b7a68ee996539b267b379b7518766c (diff) |
cursor: move unhide and timeout retrieval into separate functions
The unhide and timeout retrieval functions are needed in a later commit. No
functional changes.
Diffstat (limited to 'sway')
-rw-r--r-- | sway/input/cursor.c | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c index 66a9e435..510030ae 100644 --- a/sway/input/cursor.c +++ b/sway/input/cursor.c @@ -621,7 +621,7 @@ static int hide_notify(void *data) { return 1; } -void cursor_handle_activity(struct sway_cursor *cursor) { +int cursor_get_timeout(struct sway_cursor *cursor){ struct seat_config *sc = seat_get_config(cursor->seat); if (!sc) { sc = seat_get_config_by_name("*"); @@ -630,20 +630,31 @@ void cursor_handle_activity(struct sway_cursor *cursor) { if (timeout < 0) { timeout = 0; } - wl_event_source_timer_update(cursor->hide_source, timeout); + return timeout; +} + +void cursor_handle_activity(struct sway_cursor *cursor) { + wl_event_source_timer_update( + cursor->hide_source, cursor_get_timeout(cursor)); wlr_idle_notify_activity(server.idle, cursor->seat->wlr_seat); if (cursor->hidden) { - cursor->hidden = false; - if (cursor->image_surface) { - cursor_set_image_surface(cursor, cursor->image_surface, - cursor->hotspot_x, cursor->hotspot_y, - cursor->image_client); - } else { - const char *image = cursor->image; - cursor->image = NULL; - cursor_set_image(cursor, image, cursor->image_client); - } + cursor_unhide(cursor); + } +} + +void cursor_unhide(struct sway_cursor *cursor) { + cursor->hidden = false; + if (cursor->image_surface) { + cursor_set_image_surface(cursor, + cursor->image_surface, + cursor->hotspot_x, + cursor->hotspot_y, + cursor->image_client); + } else { + const char *image = cursor->image; + cursor->image = NULL; + cursor_set_image(cursor, image, cursor->image_client); } } |