Merge pull request #1836 from emersion/workspace-focus-update-cursor

Update cursor when workspace focus changes
This commit is contained in:
Drew DeVault 2018-04-21 14:44:11 +02:00 committed by GitHub
commit 7d43cedc95
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions

View file

@ -59,8 +59,7 @@ static struct sway_container *container_at_cursor(struct sway_cursor *cursor,
// find the output the cursor is on // find the output the cursor is on
struct wlr_output_layout *output_layout = struct wlr_output_layout *output_layout =
root_container.sway_root->output_layout; root_container.sway_root->output_layout;
struct wlr_output *wlr_output = struct wlr_output *wlr_output = wlr_output_layout_output_at(output_layout,
wlr_output_layout_output_at(output_layout,
cursor->cursor->x, cursor->cursor->y); cursor->cursor->x, cursor->cursor->y);
if (wlr_output == NULL) { if (wlr_output == NULL) {
return NULL; return NULL;

View file

@ -564,6 +564,12 @@ void seat_set_focus_warp(struct sway_seat *seat,
view_set_activated(view, false); view_set_activated(view, false);
} }
if (last_workspace && last_workspace != new_workspace) {
struct timespec now;
clock_gettime(CLOCK_MONOTONIC, &now);
cursor_send_pointer_motion(seat->cursor, now.tv_nsec / 1000);
}
seat->has_focus = (container != NULL); seat->has_focus = (container != NULL);
update_debug_tree(); update_debug_tree();