ipc: make 'urgent' a bool

This commit is contained in:
Michael Stapelberg 2011-07-24 14:54:30 +02:00
parent 36fde6dbe1
commit b09bb0fc2a
3 changed files with 11 additions and 11 deletions

View File

@ -198,7 +198,7 @@ void dump_node(yajl_gen gen, struct Con *con, bool inplace_restart) {
else y(double, con->percent); else y(double, con->percent);
ystr("urgent"); ystr("urgent");
y(integer, con->urgent); y(bool, con->urgent);
ystr("focused"); ystr("focused");
y(integer, (con == focused)); y(integer, (con == focused));

View File

@ -22,7 +22,7 @@ cmd 'split v';
my $top = open_standard_window($x); my $top = open_standard_window($x);
my $bottom = open_standard_window($x); my $bottom = open_standard_window($x);
my @urgent = grep { $_->{urgent} == 1 } @{get_ws_content($tmp)}; my @urgent = grep { $_->{urgent} } @{get_ws_content($tmp)};
is(@urgent, 0, 'no window got the urgent flag'); is(@urgent, 0, 'no window got the urgent flag');
# cmd 'layout stacking'; # cmd 'layout stacking';
@ -34,30 +34,30 @@ $top->add_hint('urgency');
sleep 0.5; sleep 0.5;
@content = @{get_ws_content($tmp)}; @content = @{get_ws_content($tmp)};
@urgent = grep { $_->{urgent} == 1 } @content; @urgent = grep { $_->{urgent} } @content;
$top_info = first { $_->{window} == $top->id } @content; $top_info = first { $_->{window} == $top->id } @content;
$bottom_info = first { $_->{window} == $bottom->id } @content; $bottom_info = first { $_->{window} == $bottom->id } @content;
is($top_info->{urgent}, 1, 'top window is marked urgent'); ok($top_info->{urgent}, 'top window is marked urgent');
is($bottom_info->{urgent}, 0, 'bottom window is not marked urgent'); ok(!$bottom_info->{urgent}, 'bottom window is not marked urgent');
is(@urgent, 1, 'exactly one window got the urgent flag'); is(@urgent, 1, 'exactly one window got the urgent flag');
cmd '[id="' . $top->id . '"] focus'; cmd '[id="' . $top->id . '"] focus';
@urgent = grep { $_->{urgent} == 1 } @{get_ws_content($tmp)}; @urgent = grep { $_->{urgent} } @{get_ws_content($tmp)};
is(@urgent, 0, 'no window got the urgent flag after focusing'); is(@urgent, 0, 'no window got the urgent flag after focusing');
$top->add_hint('urgency'); $top->add_hint('urgency');
sleep 0.5; sleep 0.5;
@urgent = grep { $_->{urgent} == 1 } @{get_ws_content($tmp)}; @urgent = grep { $_->{urgent} } @{get_ws_content($tmp)};
is(@urgent, 0, 'no window got the urgent flag after re-setting urgency hint'); is(@urgent, 0, 'no window got the urgent flag after re-setting urgency hint');
##################################################################### #####################################################################
# Check if the workspace urgency hint gets set/cleared correctly # Check if the workspace urgency hint gets set/cleared correctly
##################################################################### #####################################################################
my $ws = get_ws($tmp); my $ws = get_ws($tmp);
is($ws->{urgent}, 0, 'urgent flag not set on workspace'); ok(!$ws->{urgent}, 'urgent flag not set on workspace');
my $otmp = fresh_workspace; my $otmp = fresh_workspace;
@ -65,11 +65,11 @@ $top->add_hint('urgency');
sleep 0.5; sleep 0.5;
$ws = get_ws($tmp); $ws = get_ws($tmp);
is($ws->{urgent}, 1, 'urgent flag set on workspace'); ok($ws->{urgent}, 'urgent flag set on workspace');
cmd "workspace $tmp"; cmd "workspace $tmp";
$ws = get_ws($tmp); $ws = get_ws($tmp);
is($ws->{urgent}, 0, 'urgent flag not set on workspace after switching'); ok(!$ws->{urgent}, 'urgent flag not set on workspace after switching');
done_testing; done_testing;

View File

@ -29,7 +29,7 @@ my $expected = {
layout => 'default', layout => 'default',
focus => ignore(), focus => ignore(),
focused => 0, focused => 0,
urgent => 0, urgent => JSON::XS::false,
border => 'normal', border => 'normal',
'floating_nodes' => ignore(), 'floating_nodes' => ignore(),
}; };