diff options
-rw-r--r-- | sway/input/cursor.c | 5 | ||||
-rw-r--r-- | sway/input/seat.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c index a19f0752..5ed4f1f7 100644 --- a/sway/input/cursor.c +++ b/sway/input/cursor.c | |||
@@ -59,9 +59,8 @@ static struct sway_container *container_at_cursor(struct sway_cursor *cursor, | |||
59 | // find the output the cursor is on | 59 | // find the output the cursor is on |
60 | struct wlr_output_layout *output_layout = | 60 | struct wlr_output_layout *output_layout = |
61 | root_container.sway_root->output_layout; | 61 | root_container.sway_root->output_layout; |
62 | struct wlr_output *wlr_output = | 62 | struct wlr_output *wlr_output = wlr_output_layout_output_at(output_layout, |
63 | wlr_output_layout_output_at(output_layout, | 63 | cursor->cursor->x, cursor->cursor->y); |
64 | cursor->cursor->x, cursor->cursor->y); | ||
65 | if (wlr_output == NULL) { | 64 | if (wlr_output == NULL) { |
66 | return NULL; | 65 | return NULL; |
67 | } | 66 | } |
diff --git a/sway/input/seat.c b/sway/input/seat.c index 8bba7d8f..631a273f 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c | |||
@@ -564,6 +564,12 @@ void seat_set_focus_warp(struct sway_seat *seat, | |||
564 | view_set_activated(view, false); | 564 | view_set_activated(view, false); |
565 | } | 565 | } |
566 | 566 | ||
567 | if (last_workspace && last_workspace != new_workspace) { | ||
568 | struct timespec now; | ||
569 | clock_gettime(CLOCK_MONOTONIC, &now); | ||
570 | cursor_send_pointer_motion(seat->cursor, now.tv_nsec / 1000); | ||
571 | } | ||
572 | |||
567 | seat->has_focus = (container != NULL); | 573 | seat->has_focus = (container != NULL); |
568 | 574 | ||
569 | update_debug_tree(); | 575 | update_debug_tree(); |