diff options
Diffstat (limited to 'sway/commands/swap.c')
-rw-r--r-- | sway/commands/swap.c | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/sway/commands/swap.c b/sway/commands/swap.c index a7f9691b..ce5e5128 100644 --- a/sway/commands/swap.c +++ b/sway/commands/swap.c | |||
@@ -16,46 +16,46 @@ static const char expected_syntax[] = | |||
16 | static void swap_places(struct sway_container *con1, | 16 | static void swap_places(struct sway_container *con1, |
17 | struct sway_container *con2) { | 17 | struct sway_container *con2) { |
18 | struct sway_container *temp = malloc(sizeof(struct sway_container)); | 18 | struct sway_container *temp = malloc(sizeof(struct sway_container)); |
19 | temp->x = con1->x; | 19 | temp->pending.x = con1->pending.x; |
20 | temp->y = con1->y; | 20 | temp->pending.y = con1->pending.y; |
21 | temp->width = con1->width; | 21 | temp->pending.width = con1->pending.width; |
22 | temp->height = con1->height; | 22 | temp->pending.height = con1->pending.height; |
23 | temp->width_fraction = con1->width_fraction; | 23 | temp->width_fraction = con1->width_fraction; |
24 | temp->height_fraction = con1->height_fraction; | 24 | temp->height_fraction = con1->height_fraction; |
25 | temp->parent = con1->parent; | 25 | temp->pending.parent = con1->pending.parent; |
26 | temp->workspace = con1->workspace; | 26 | temp->pending.workspace = con1->pending.workspace; |
27 | bool temp_floating = container_is_floating(con1); | 27 | bool temp_floating = container_is_floating(con1); |
28 | 28 | ||
29 | con1->x = con2->x; | 29 | con1->pending.x = con2->pending.x; |
30 | con1->y = con2->y; | 30 | con1->pending.y = con2->pending.y; |
31 | con1->width = con2->width; | 31 | con1->pending.width = con2->pending.width; |
32 | con1->height = con2->height; | 32 | con1->pending.height = con2->pending.height; |
33 | con1->width_fraction = con2->width_fraction; | 33 | con1->width_fraction = con2->width_fraction; |
34 | con1->height_fraction = con2->height_fraction; | 34 | con1->height_fraction = con2->height_fraction; |
35 | 35 | ||
36 | con2->x = temp->x; | 36 | con2->pending.x = temp->pending.x; |
37 | con2->y = temp->y; | 37 | con2->pending.y = temp->pending.y; |
38 | con2->width = temp->width; | 38 | con2->pending.width = temp->pending.width; |
39 | con2->height = temp->height; | 39 | con2->pending.height = temp->pending.height; |
40 | con2->width_fraction = temp->width_fraction; | 40 | con2->width_fraction = temp->width_fraction; |
41 | con2->height_fraction = temp->height_fraction; | 41 | con2->height_fraction = temp->height_fraction; |
42 | 42 | ||
43 | int temp_index = container_sibling_index(con1); | 43 | int temp_index = container_sibling_index(con1); |
44 | if (con2->parent) { | 44 | if (con2->pending.parent) { |
45 | container_insert_child(con2->parent, con1, | 45 | container_insert_child(con2->pending.parent, con1, |
46 | container_sibling_index(con2)); | 46 | container_sibling_index(con2)); |
47 | } else if (container_is_floating(con2)) { | 47 | } else if (container_is_floating(con2)) { |
48 | workspace_add_floating(con2->workspace, con1); | 48 | workspace_add_floating(con2->pending.workspace, con1); |
49 | } else { | 49 | } else { |
50 | workspace_insert_tiling(con2->workspace, con1, | 50 | workspace_insert_tiling(con2->pending.workspace, con1, |
51 | container_sibling_index(con2)); | 51 | container_sibling_index(con2)); |
52 | } | 52 | } |
53 | if (temp->parent) { | 53 | if (temp->pending.parent) { |
54 | container_insert_child(temp->parent, con2, temp_index); | 54 | container_insert_child(temp->pending.parent, con2, temp_index); |
55 | } else if (temp_floating) { | 55 | } else if (temp_floating) { |
56 | workspace_add_floating(temp->workspace, con2); | 56 | workspace_add_floating(temp->pending.workspace, con2); |
57 | } else { | 57 | } else { |
58 | workspace_insert_tiling(temp->workspace, con2, temp_index); | 58 | workspace_insert_tiling(temp->pending.workspace, con2, temp_index); |
59 | } | 59 | } |
60 | 60 | ||
61 | free(temp); | 61 | free(temp); |
@@ -65,8 +65,8 @@ static void swap_focus(struct sway_container *con1, | |||
65 | struct sway_container *con2, struct sway_seat *seat, | 65 | struct sway_container *con2, struct sway_seat *seat, |
66 | struct sway_container *focus) { | 66 | struct sway_container *focus) { |
67 | if (focus == con1 || focus == con2) { | 67 | if (focus == con1 || focus == con2) { |
68 | struct sway_workspace *ws1 = con1->workspace; | 68 | struct sway_workspace *ws1 = con1->pending.workspace; |
69 | struct sway_workspace *ws2 = con2->workspace; | 69 | struct sway_workspace *ws2 = con2->pending.workspace; |
70 | enum sway_container_layout layout1 = container_parent_layout(con1); | 70 | enum sway_container_layout layout1 = container_parent_layout(con1); |
71 | enum sway_container_layout layout2 = container_parent_layout(con2); | 71 | enum sway_container_layout layout2 = container_parent_layout(con2); |
72 | if (focus == con1 && (layout2 == L_TABBED || layout2 == L_STACKED)) { | 72 | if (focus == con1 && (layout2 == L_TABBED || layout2 == L_STACKED)) { |
@@ -125,8 +125,8 @@ void container_swap(struct sway_container *con1, struct sway_container *con2) { | |||
125 | root_scratchpad_remove_container(con2); | 125 | root_scratchpad_remove_container(con2); |
126 | } | 126 | } |
127 | 127 | ||
128 | enum sway_fullscreen_mode fs1 = con1->fullscreen_mode; | 128 | enum sway_fullscreen_mode fs1 = con1->pending.fullscreen_mode; |
129 | enum sway_fullscreen_mode fs2 = con2->fullscreen_mode; | 129 | enum sway_fullscreen_mode fs2 = con2->pending.fullscreen_mode; |
130 | if (fs1) { | 130 | if (fs1) { |
131 | container_fullscreen_disable(con1); | 131 | container_fullscreen_disable(con1); |
132 | } | 132 | } |
@@ -137,9 +137,9 @@ void container_swap(struct sway_container *con1, struct sway_container *con2) { | |||
137 | struct sway_seat *seat = config->handler_context.seat; | 137 | struct sway_seat *seat = config->handler_context.seat; |
138 | struct sway_container *focus = seat_get_focused_container(seat); | 138 | struct sway_container *focus = seat_get_focused_container(seat); |
139 | struct sway_workspace *vis1 = | 139 | struct sway_workspace *vis1 = |
140 | output_get_active_workspace(con1->workspace->output); | 140 | output_get_active_workspace(con1->pending.workspace->output); |
141 | struct sway_workspace *vis2 = | 141 | struct sway_workspace *vis2 = |
142 | output_get_active_workspace(con2->workspace->output); | 142 | output_get_active_workspace(con2->pending.workspace->output); |
143 | if (!sway_assert(vis1 && vis2, "con1 or con2 are on an output without a" | 143 | if (!sway_assert(vis1 && vis2, "con1 or con2 are on an output without a" |
144 | "workspace. This should not happen")) { | 144 | "workspace. This should not happen")) { |
145 | return; | 145 | return; |