sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 41999d7c9f9878017d9199f4cdeaf621d5fd706e
parent 65a751a21f61b30808b7e703257c6ca3b71f50eb
Author: Rouven Czerwinski <rouven@czerwinskis.de>
Date:   Tue, 15 Sep 2020 17:48:21 +0200

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

Diffstat:
Msway/input/cursor.c | 2--
Msway/input/seat.c | 2++
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git 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 @@ -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,