aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sway/handlers.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/sway/handlers.c b/sway/handlers.c
index d37142a9..6ccf2b11 100644
--- a/sway/handlers.c
+++ b/sway/handlers.c
@@ -554,10 +554,6 @@ static void handle_view_destroyed(wlc_handle handle) {
remove_view_from_scratchpad(view);
swayc_t *parent = destroy_view(view);
if (parent) {
- if (fullscreen) {
- parent->fullscreen = NULL;
- }
-
ipc_event_window(parent, "close");
// Destroy empty workspaces
@@ -569,6 +565,17 @@ static void handle_view_destroyed(wlc_handle handle) {
parent = destroy_workspace(parent);
}
+ if (fullscreen) {
+ while (parent) {
+ if (parent->fullscreen) {
+ parent->fullscreen = NULL;
+ break;
+ }
+ parent = parent->parent;
+ }
+ }
+
+
arrange_windows(parent, -1, -1);
}
} else {