From 03d49490ccff3c5c81bea73622c8616fa61eb3dd Mon Sep 17 00:00:00 2001 From: emersion Date: Tue, 17 Jul 2018 23:04:55 +0100 Subject: [PATCH] Update cursor on focus change This allows to send wl_pointer.enter when switching between views in a split/tabbed layout for instance. This (1) updates the cursor image accordingly (2) makes it unnecessary to move the mouse before scrolling. It's harmless to always call cursor_send_pointer_motion because in case the focused surface hasn't changed this is a no-op. The `last_focus != NULL` condition is required otherwise cursor_send_pointer_motion will crash when sway starts up (the sway_output doesn't yet have a workspace). --- sway/input/seat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sway/input/seat.c b/sway/input/seat.c index 12b1fab5..8ed4a3fe 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c @@ -738,7 +738,7 @@ void seat_set_focus_warp(struct sway_seat *seat, } } - if (last_workspace && last_workspace != new_workspace) { + if (last_focus != NULL) { cursor_send_pointer_motion(seat->cursor, 0, true); }