aboutsummaryrefslogtreecommitdiff
path: root/sway/tree
diff options
context:
space:
mode:
Diffstat (limited to 'sway/tree')
-rw-r--r--sway/tree/view.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sway/tree/view.c b/sway/tree/view.c
index 612cf96a..943734dc 100644
--- a/sway/tree/view.c
+++ b/sway/tree/view.c
@@ -664,6 +664,13 @@ void view_unmap(struct sway_view *view) {
struct sway_seat *seat;
wl_list_for_each(seat, &server.input->seats, link) {
seat->cursor->image_surface = NULL;
+ if (seat->cursor->active_constraint) {
+ struct wlr_surface *constrain_surface =
+ seat->cursor->active_constraint->surface;
+ if (view_from_wlr_surface(constrain_surface) == view) {
+ sway_cursor_constrain(seat->cursor, NULL);
+ }
+ }
seat_consider_warp_to_focus(seat);
}