aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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 612cf96..943734d 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);
}