diff options
author | Brian Ashworth <bosrsf04@gmail.com> | 2019-01-22 03:47:32 -0500 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2019-01-22 13:13:34 +0100 |
commit | 8ce57f0a77f50315c83bae305e78091cc40175c2 (patch) | |
tree | 1d279b36e7c3a16defd1e3ec4be2335f0eb0982f | |
parent | de9a357de84da4436b263ff6a969eb4ac753af0d (diff) |
root_scratchpad_remove_container: do not show
This removes the call to `root_scratchpad_show` from
`root_scratchpad_remove_container` and places it in the
`cmd_move_container`. This also moved the IPC `window::move` event to
`cmd_scratchpad`.
-rw-r--r-- | sway/commands/move.c | 1 | ||||
-rw-r--r-- | sway/commands/scratchpad.c | 4 | ||||
-rw-r--r-- | sway/tree/root.c | 7 |
3 files changed, 5 insertions, 7 deletions
diff --git a/sway/commands/move.c b/sway/commands/move.c index b22bb056..acb5f44f 100644 --- a/sway/commands/move.c +++ b/sway/commands/move.c @@ -515,6 +515,7 @@ static struct cmd_results *cmd_move_container(int argc, char **argv) { // move container if (container->scratchpad) { root_scratchpad_remove_container(container); + root_scratchpad_show(container); } switch (destination->type) { case N_WORKSPACE: diff --git a/sway/commands/scratchpad.c b/sway/commands/scratchpad.c index 805dbc0b..714efa2b 100644 --- a/sway/commands/scratchpad.c +++ b/sway/commands/scratchpad.c @@ -3,6 +3,7 @@ #include "sway/config.h" #include "sway/input/input-manager.h" #include "sway/input/seat.h" +#include "sway/ipc-server.h" #include "sway/tree/container.h" #include "sway/tree/root.h" #include "sway/tree/workspace.h" @@ -51,6 +52,7 @@ static void scratchpad_toggle_auto(void) { "Moving a visible scratchpad window (%s) to this workspace", con->title); root_scratchpad_show(con); + ipc_event_window(con, "move"); return; } } @@ -62,6 +64,7 @@ static void scratchpad_toggle_auto(void) { struct sway_container *con = root->scratchpad->items[0]; sway_log(SWAY_DEBUG, "Showing %s from list", con->title); root_scratchpad_show(con); + ipc_event_window(con, "move"); } static void scratchpad_toggle_container(struct sway_container *con) { @@ -76,6 +79,7 @@ static void scratchpad_toggle_container(struct sway_container *con) { } root_scratchpad_show(con); + ipc_event_window(con, "move"); } struct cmd_results *cmd_scratchpad(int argc, char **argv) { diff --git a/sway/tree/root.c b/sway/tree/root.c index ec6bccf6..c4d1145d 100644 --- a/sway/tree/root.c +++ b/sway/tree/root.c @@ -85,9 +85,6 @@ void root_scratchpad_remove_container(struct sway_container *con) { if (!sway_assert(con->scratchpad, "Container is not in scratchpad")) { return; } - if (!con->workspace) { - root_scratchpad_show(con); - } con->scratchpad = false; int index = list_find(root->scratchpad, con); if (index != -1) { @@ -133,10 +130,6 @@ void root_scratchpad_show(struct sway_container *con) { arrange_workspace(new_ws); seat_set_focus(seat, seat_get_focus_inactive(seat, &con->node)); - - if (new_ws != old_ws) { - ipc_event_window(con, "move"); - } } void root_scratchpad_hide(struct sway_container *con) { |