Don't migrate unfocused empty workspaces when disabling output.
This is more similar to what happens when you close the last client of an unfocused workspace (the workspace gets reaped).
This commit is contained in:
parent
194f986975
commit
8cffde232f
|
@ -764,6 +764,12 @@ void randr_query_outputs() {
|
||||||
Con *old_content = output_get_content(output->con);
|
Con *old_content = output_get_content(output->con);
|
||||||
while (!TAILQ_EMPTY(&(old_content->nodes_head))) {
|
while (!TAILQ_EMPTY(&(old_content->nodes_head))) {
|
||||||
current = TAILQ_FIRST(&(old_content->nodes_head));
|
current = TAILQ_FIRST(&(old_content->nodes_head));
|
||||||
|
if (current != next && TAILQ_EMPTY(&(current->focus_head))) {
|
||||||
|
/* the workspace is empty and not focused, get rid of it */
|
||||||
|
DLOG("Getting rid of current = %p / %s (empty, unfocused)\n", current, current->name);
|
||||||
|
tree_close(current, DONT_KILL_WINDOW, false, false);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
DLOG("Detaching current = %p / %s\n", current, current->name);
|
DLOG("Detaching current = %p / %s\n", current, current->name);
|
||||||
con_detach(current);
|
con_detach(current);
|
||||||
DLOG("Re-attaching current = %p / %s\n", current, current->name);
|
DLOG("Re-attaching current = %p / %s\n", current, current->name);
|
||||||
|
|
Loading…
Reference in New Issue