previous commit: extend test and code to also work with floating windows
This commit is contained in:
parent
eef9042713
commit
1c0554564a
|
@ -367,8 +367,8 @@ void tree_close_con(kill_window_t kill_window) {
|
|||
if (focused->type == CT_WORKSPACE) {
|
||||
DLOG("Workspaces cannot be close, closing all children instead\n");
|
||||
Con *child, *nextchild;
|
||||
for (child = TAILQ_FIRST(&(focused->nodes_head)); child; ) {
|
||||
nextchild = TAILQ_NEXT(child, nodes);
|
||||
for (child = TAILQ_FIRST(&(focused->focus_head)); child; ) {
|
||||
nextchild = TAILQ_NEXT(child, focused);
|
||||
DLOG("killing child=%p\n", child);
|
||||
tree_close(child, kill_window, false, false);
|
||||
child = nextchild;
|
||||
|
|
|
@ -143,6 +143,31 @@ sync_with_i3;
|
|||
($nodes, $focus) = get_ws_content($tmp);
|
||||
is(scalar @$nodes, 0, 'workspace is empty');
|
||||
|
||||
################################################################################
|
||||
# check if killing a workspace also closes floating windows.
|
||||
################################################################################
|
||||
|
||||
$tmp = fresh_workspace;
|
||||
|
||||
$window = open_window;
|
||||
my $floating_window = open_floating_window;
|
||||
|
||||
# one window opened on the current workspace
|
||||
($nodes, $focus) = get_ws_content($tmp);
|
||||
is(scalar @$focus, 2, 'workspace contains two nodes');
|
||||
|
||||
# focus the workspace
|
||||
cmd "focus parent";
|
||||
cmd "focus parent";
|
||||
|
||||
# try to kill the workspace
|
||||
cmd "kill";
|
||||
sync_with_i3;
|
||||
|
||||
# the workspace should now be empty
|
||||
($nodes, $focus) = get_ws_content($tmp);
|
||||
is(scalar @$focus, 0, 'workspace is empty');
|
||||
|
||||
##############################################################
|
||||
# and now for something completely different:
|
||||
# check if the pointer position is relevant when restoring focus
|
||||
|
|
Loading…
Reference in New Issue