From 60a1d79de71660949f7a6fc83e242d9d95c75187 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Thu, 25 Oct 2018 23:30:09 +1000 Subject: Rebase the cursor after applying transactions This approaches cursor rebasing from a different angle. Rather than littering the codebase with cursor_rebase calls and using transaction callbacks, this just runs cursor_rebase after applying every transaction - but only if there's outputs connected, because otherwise it causes a crash during shutdown. There is one known case where we still need to call cursor_rebase directly, and that's when running `seat seat0 cursor move ...`. This command doesn't set anything as dirty so no transaction occurs. --- sway/commands/border.c | 5 ----- 1 file changed, 5 deletions(-) (limited to 'sway/commands/border.c') diff --git a/sway/commands/border.c b/sway/commands/border.c index 5b65148d..37047812 100644 --- a/sway/commands/border.c +++ b/sway/commands/border.c @@ -94,10 +94,5 @@ struct cmd_results *cmd_border(int argc, char **argv) { arrange_container(view->container); - struct sway_seat *seat = input_manager_current_seat(); - if (seat->cursor) { - cursor_rebase(seat->cursor); - } - return cmd_results_new(CMD_SUCCESS, NULL, NULL); } -- cgit v1.2.3