Partially implement move command

Works:

- move [container|window] to workspace <name>
    - Note, this should be able to move C_CONTAINER but this is untested
- move [workspace] to output [left|right|up|down|<name>]

Not implemented yet:

- move [left|right|up|down]
- move scratchpad
- move position
This commit is contained in:
Drew DeVault 2018-03-31 21:21:26 -04:00
parent 122b96abed
commit b2d871cfe2
12 changed files with 268 additions and 41 deletions

View file

@ -229,9 +229,12 @@ static void render_output(struct sway_output *output, struct timespec *when,
struct sway_seat *seat = input_manager_current_seat(input_manager);
struct sway_container *focus =
sway_seat_get_focus_inactive(seat, output->swayc);
struct sway_container *workspace = (focus->type == C_WORKSPACE ?
focus :
container_parent(focus, C_WORKSPACE));
if (!focus) {
// We've never been to this output before
focus = output->swayc->children->items[0];
}
struct sway_container *workspace = focus->type == C_WORKSPACE ?
focus : container_parent(focus, C_WORKSPACE);
struct render_data rdata = {
.output = output,