Implement 'border toggle' (+test)
This commit is contained in:
parent
60ae26c19d
commit
bef25d72aa
|
@ -794,10 +794,7 @@ To change the border of the current client, you can use +border normal+ to use t
|
|||
border (including window title), +border 1pixel+ to use a 1-pixel border (no window title)
|
||||
and +border none+ to make the client borderless.
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
TODO: not yet implemented
|
||||
There is also +border toggle+ which will toggle the different border styles.
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
*Examples*:
|
||||
----------------------------
|
||||
|
|
|
@ -597,7 +597,10 @@ border:
|
|||
|
||||
TAILQ_FOREACH(current, &owindows, owindows) {
|
||||
printf("matching: %p / %s\n", current->con, current->con->name);
|
||||
current->con->border_style = $2;
|
||||
if ($2 == TOK_TOGGLE) {
|
||||
current->con->border_style++;
|
||||
current->con->border_style %= 3;
|
||||
} else current->con->border_style = $2;
|
||||
}
|
||||
|
||||
tree_render();
|
||||
|
@ -608,6 +611,7 @@ border_style:
|
|||
TOK_NORMAL { $$ = BS_NORMAL; }
|
||||
| TOK_NONE { $$ = BS_NONE; }
|
||||
| TOK_1PIXEL { $$ = BS_1PIXEL; }
|
||||
| TOK_TOGGLE { $$ = TOK_TOGGLE; }
|
||||
;
|
||||
|
||||
move:
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
#!perl
|
||||
# vim:ts=4:sw=4:expandtab
|
||||
#
|
||||
# Tests if the 'border toggle' command works correctly
|
||||
#
|
||||
use i3test;
|
||||
|
||||
my $tmp = fresh_workspace;
|
||||
|
||||
cmd 'open';
|
||||
|
||||
my @nodes = @{get_ws_content($tmp)};
|
||||
is(@nodes, 1, 'one container on this workspace');
|
||||
is($nodes[0]->{border}, 'normal', 'border style normal');
|
||||
|
||||
cmd 'border 1pixel';
|
||||
@nodes = @{get_ws_content($tmp)};
|
||||
is($nodes[0]->{border}, '1pixel', 'border style 1pixel');
|
||||
|
||||
cmd 'border none';
|
||||
@nodes = @{get_ws_content($tmp)};
|
||||
is($nodes[0]->{border}, 'none', 'border style none');
|
||||
|
||||
cmd 'border normal';
|
||||
@nodes = @{get_ws_content($tmp)};
|
||||
is($nodes[0]->{border}, 'normal', 'border style back to normal');
|
||||
|
||||
cmd 'border toggle';
|
||||
@nodes = @{get_ws_content($tmp)};
|
||||
is($nodes[0]->{border}, 'none', 'border style none');
|
||||
|
||||
cmd 'border toggle';
|
||||
@nodes = @{get_ws_content($tmp)};
|
||||
is($nodes[0]->{border}, '1pixel', 'border style 1pixel');
|
||||
|
||||
cmd 'border toggle';
|
||||
@nodes = @{get_ws_content($tmp)};
|
||||
is($nodes[0]->{border}, 'normal', 'border style back to normal');
|
||||
|
||||
done_testing;
|
Loading…
Reference in New Issue