Implement focus command (and extend t/21-next-prev.t to test it)
This commit is contained in:
parent
67a6bd5589
commit
a25dc3e988
|
@ -303,7 +303,21 @@ attach:
|
||||||
focus:
|
focus:
|
||||||
TOK_FOCUS
|
TOK_FOCUS
|
||||||
{
|
{
|
||||||
|
owindow *current;
|
||||||
|
|
||||||
printf("should focus\n");
|
printf("should focus\n");
|
||||||
|
if (match_is_empty(¤t_match)) {
|
||||||
|
/* TODO: better error message */
|
||||||
|
LOG("Error: The foucs command requires you to use some criteria.\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* TODO: warning if the match contains more than one entry. does not
|
||||||
|
* make so much sense when focusing */
|
||||||
|
TAILQ_FOREACH(current, &owindows, owindows) {
|
||||||
|
LOG("focusing %p / %s\n", current->con, current->con->name);
|
||||||
|
con_focus(current->con);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
# Tests focus switching (next/prev)
|
# Tests focus switching (next/prev)
|
||||||
#
|
#
|
||||||
use i3test tests => 13;
|
use i3test tests => 14;
|
||||||
use X11::XCB qw(:all);
|
use X11::XCB qw(:all);
|
||||||
use v5.10;
|
use v5.10;
|
||||||
|
|
||||||
|
@ -81,4 +81,11 @@ $i3->command('next horizontal')->recv;
|
||||||
($nodes, $focus) = get_ws_content($tmp);
|
($nodes, $focus) = get_ws_content($tmp);
|
||||||
is($focus->[0], $right, 'right container focused');
|
is($focus->[0], $right, 'right container focused');
|
||||||
|
|
||||||
|
# Test focus command
|
||||||
|
|
||||||
|
$i3->command(qq|[con_id="$mid"] focus|)->recv;
|
||||||
|
($nodes, $focus) = get_ws_content($tmp);
|
||||||
|
is($focus->[0], $mid, 'middle container focused');
|
||||||
|
|
||||||
|
|
||||||
diag( "Testing i3, Perl $], $^X" );
|
diag( "Testing i3, Perl $], $^X" );
|
||||||
|
|
Loading…
Reference in New Issue