diff options
author | Rouven Czerwinski <rouven@czerwinskis.de> | 2020-09-15 17:48:21 +0200 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2020-09-16 07:53:57 +0200 |
commit | 41999d7c9f9878017d9199f4cdeaf621d5fd706e (patch) | |
tree | 3b5e1512cd4685e014ad4c4ee687d5637d92d991 | |
parent | 65a751a21f61b30808b7e703257c6ca3b71f50eb (diff) |
cursor: update hide timer during config apply
We can't arm the timer during cursor creation since the config may not
be ready yet. Instead arm the timer while applying the input
configuration, by this time the configuration has been parsed and we can
arm the hide timer.
Fixes #5686
-rw-r--r-- | sway/input/cursor.c | 2 | ||||
-rw-r--r-- | sway/input/seat.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c index 3e6b147e..f5c2bd17 100644 --- a/sway/input/cursor.c +++ b/sway/input/cursor.c @@ -1041,8 +1041,6 @@ struct sway_cursor *sway_cursor_create(struct sway_seat *seat) { cursor->hide_source = wl_event_loop_add_timer(server.wl_event_loop, hide_notify, cursor); - wl_event_source_timer_update( - cursor->hide_source, cursor_get_timeout(cursor)); wl_list_init(&cursor->image_surface_destroy.link); cursor->image_surface_destroy.notify = handle_image_surface_destroy; diff --git a/sway/input/seat.c b/sway/input/seat.c index 8c80e41c..32b496ce 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c @@ -722,6 +722,8 @@ static void seat_configure_pointer(struct sway_seat *seat, wlr_cursor_attach_input_device(seat->cursor->cursor, sway_device->input_device->wlr_device); seat_apply_input_config(seat, sway_device); + wl_event_source_timer_update( + seat->cursor->hide_source, cursor_get_timeout(seat->cursor)); } static void seat_configure_keyboard(struct sway_seat *seat, |