From 4fbc30267c853c2a4d3d3a63f7c8a7b4200877c1 Mon Sep 17 00:00:00 2001 From: Dane Jensen Date: Wed, 10 Jun 2026 15:09:10 -0700 Subject: [PATCH 1/2] remove old logic. --- cmd-swap-pane.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/cmd-swap-pane.c b/cmd-swap-pane.c index 48785c921..ca3300f3d 100644 --- a/cmd-swap-pane.c +++ b/cmd-swap-pane.c @@ -79,7 +79,7 @@ cmd_swap_pane_exec(struct cmd *self, struct cmdq_item *item) if (src_wp == dst_wp) goto out; - if (window_pane_is_floating(src_wp) || + if (window_pane_is_floating(src_wp) && window_pane_is_floating(dst_wp)) { cmdq_error(item, "cannot swap floating panes"); return (CMD_RETURN_ERROR); @@ -114,10 +114,6 @@ cmd_swap_pane_exec(struct cmd *self, struct cmdq_item *item) dst_wp->layout_cell = src_lc; dst_lc->wp = src_wp; src_wp->layout_cell = dst_lc; - if (window_pane_is_floating(src_wp) != window_pane_is_floating(dst_wp)) { - src_wp->layout_cell->flags ^= LAYOUT_CELL_FLOATING; - dst_wp->layout_cell->flags ^= LAYOUT_CELL_FLOATING; - } src_wp->window = dst_w; options_set_parent(src_wp->options, dst_w->options); From b675c2149c892b8bf5fe6642a136acdb969f446d Mon Sep 17 00:00:00 2001 From: Dane Jensen Date: Wed, 10 Jun 2026 15:10:36 -0700 Subject: [PATCH 2/2] This guard doesn't need to be here. Why restrict this? --- cmd-swap-pane.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/cmd-swap-pane.c b/cmd-swap-pane.c index ca3300f3d..8a83a67af 100644 --- a/cmd-swap-pane.c +++ b/cmd-swap-pane.c @@ -79,12 +79,6 @@ cmd_swap_pane_exec(struct cmd *self, struct cmdq_item *item) if (src_wp == dst_wp) goto out; - if (window_pane_is_floating(src_wp) && - window_pane_is_floating(dst_wp)) { - cmdq_error(item, "cannot swap floating panes"); - return (CMD_RETURN_ERROR); - } - server_client_remove_pane(src_wp); server_client_remove_pane(dst_wp);