mirror of
https://github.com/swaywm/sway.git
synced 2024-11-16 13:13:17 +00:00
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`.
This commit is contained in:
parent
de9a357de8
commit
8ce57f0a77
|
@ -515,6 +515,7 @@ static struct cmd_results *cmd_move_container(int argc, char **argv) {
|
||||||
// move container
|
// move container
|
||||||
if (container->scratchpad) {
|
if (container->scratchpad) {
|
||||||
root_scratchpad_remove_container(container);
|
root_scratchpad_remove_container(container);
|
||||||
|
root_scratchpad_show(container);
|
||||||
}
|
}
|
||||||
switch (destination->type) {
|
switch (destination->type) {
|
||||||
case N_WORKSPACE:
|
case N_WORKSPACE:
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
#include "sway/config.h"
|
#include "sway/config.h"
|
||||||
#include "sway/input/input-manager.h"
|
#include "sway/input/input-manager.h"
|
||||||
#include "sway/input/seat.h"
|
#include "sway/input/seat.h"
|
||||||
|
#include "sway/ipc-server.h"
|
||||||
#include "sway/tree/container.h"
|
#include "sway/tree/container.h"
|
||||||
#include "sway/tree/root.h"
|
#include "sway/tree/root.h"
|
||||||
#include "sway/tree/workspace.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",
|
"Moving a visible scratchpad window (%s) to this workspace",
|
||||||
con->title);
|
con->title);
|
||||||
root_scratchpad_show(con);
|
root_scratchpad_show(con);
|
||||||
|
ipc_event_window(con, "move");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -62,6 +64,7 @@ static void scratchpad_toggle_auto(void) {
|
||||||
struct sway_container *con = root->scratchpad->items[0];
|
struct sway_container *con = root->scratchpad->items[0];
|
||||||
sway_log(SWAY_DEBUG, "Showing %s from list", con->title);
|
sway_log(SWAY_DEBUG, "Showing %s from list", con->title);
|
||||||
root_scratchpad_show(con);
|
root_scratchpad_show(con);
|
||||||
|
ipc_event_window(con, "move");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void scratchpad_toggle_container(struct sway_container *con) {
|
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);
|
root_scratchpad_show(con);
|
||||||
|
ipc_event_window(con, "move");
|
||||||
}
|
}
|
||||||
|
|
||||||
struct cmd_results *cmd_scratchpad(int argc, char **argv) {
|
struct cmd_results *cmd_scratchpad(int argc, char **argv) {
|
||||||
|
|
|
@ -85,9 +85,6 @@ void root_scratchpad_remove_container(struct sway_container *con) {
|
||||||
if (!sway_assert(con->scratchpad, "Container is not in scratchpad")) {
|
if (!sway_assert(con->scratchpad, "Container is not in scratchpad")) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!con->workspace) {
|
|
||||||
root_scratchpad_show(con);
|
|
||||||
}
|
|
||||||
con->scratchpad = false;
|
con->scratchpad = false;
|
||||||
int index = list_find(root->scratchpad, con);
|
int index = list_find(root->scratchpad, con);
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
|
@ -133,10 +130,6 @@ void root_scratchpad_show(struct sway_container *con) {
|
||||||
|
|
||||||
arrange_workspace(new_ws);
|
arrange_workspace(new_ws);
|
||||||
seat_set_focus(seat, seat_get_focus_inactive(seat, &con->node));
|
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) {
|
void root_scratchpad_hide(struct sway_container *con) {
|
||||||
|
|
Loading…
Reference in a new issue