config/output: rebase cursors after config applied

When applying an output config, an output may transform or be altered
in some way that effects the cursor. In order for the cursor images to
be updated properly, all cursors need to be rebased after applying
output configs.
This commit is contained in:
Brian Ashworth 2019-08-06 05:33:06 -04:00 committed by Drew DeVault
parent f59b665792
commit 19d05d3ae0

View file

@ -5,9 +5,11 @@
#include <sys/socket.h> #include <sys/socket.h>
#include <sys/wait.h> #include <sys/wait.h>
#include <unistd.h> #include <unistd.h>
#include <wlr/types/wlr_cursor.h>
#include <wlr/types/wlr_output_layout.h> #include <wlr/types/wlr_output_layout.h>
#include <wlr/types/wlr_output.h> #include <wlr/types/wlr_output.h>
#include "sway/config.h" #include "sway/config.h"
#include "sway/input/cursor.h"
#include "sway/output.h" #include "sway/output.h"
#include "sway/tree/root.h" #include "sway/tree/root.h"
#include "log.h" #include "log.h"
@ -455,6 +457,12 @@ void apply_output_config_to_outputs(struct output_config *oc) {
} }
} }
} }
struct sway_seat *seat;
wl_list_for_each(seat, &server.input->seats, link) {
wlr_seat_pointer_clear_focus(seat->wlr_seat);
cursor_rebase(seat->cursor);
}
} }
void reset_outputs(void) { void reset_outputs(void) {