Merge branch 'master' into next

next
Michael Stapelberg 2012-11-10 09:01:24 +01:00
commit dece12bf18
2 changed files with 27 additions and 5 deletions

View File

@ -358,11 +358,16 @@ static void _workspace_show(Con *workspace) {
/* Remember currently focused workspace for switching back to it later with
* the 'workspace back_and_forth' command.
* NOTE: We have to duplicate the name as the original will be freed when
* the corresponding workspace is cleaned up. */
FREE(previous_workspace_name);
if (current)
previous_workspace_name = sstrdup(current->name);
* the corresponding workspace is cleaned up.
* NOTE: Internal cons such as __i3_scratch (when a scratchpad window is
* focused) are skipped, see bug #868. */
if (current && !con_is_internal(current)) {
FREE(previous_workspace_name);
if (current) {
previous_workspace_name = sstrdup(current->name);
DLOG("Setting previous_workspace_name = %s\n", previous_workspace_name);
}
}
workspace_reassign_sticky(workspace);

View File

@ -146,6 +146,23 @@ is(focused_ws, '6: baz', 'workspace 6 now focused');
cmd 'workspace number 6';
is(focused_ws, '5: foo', 'workspace 5 focused again');
################################################################################
# Place a window in the scratchpad, see if BAF works after showing the
# scratchpad window.
################################################################################
my $scratchwin = open_window;
cmd 'move scratchpad';
# show scratchpad window
cmd 'scratchpad show';
# hide scratchpad window
cmd 'scratchpad show';
cmd 'workspace back_and_forth';
is(focused_ws, '6: baz', 'workspace 6 now focused');
exit_gracefully($pid);
done_testing;