2011-03-09 12:36:45 -05:00
|
|
|
|
#!perl
|
|
|
|
|
# vim:ts=4:sw=4:expandtab
|
|
|
|
|
#
|
|
|
|
|
# Regression test: level up should be a noop during fullscreen mode
|
|
|
|
|
#
|
|
|
|
|
use X11::XCB qw(:all);
|
|
|
|
|
use i3test;
|
|
|
|
|
|
|
|
|
|
BEGIN {
|
|
|
|
|
use_ok('X11::XCB::Window');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
my $x = X11::XCB::Connection->new;
|
|
|
|
|
|
2011-03-09 14:25:17 -05:00
|
|
|
|
my $tmp = fresh_workspace;
|
2011-03-09 12:36:45 -05:00
|
|
|
|
|
|
|
|
|
#####################################################################
|
|
|
|
|
# open a window, verify it’s not in fullscreen mode
|
|
|
|
|
#####################################################################
|
|
|
|
|
|
2011-09-24 10:11:37 -04:00
|
|
|
|
my $win = open_window($x);
|
2011-03-09 12:36:45 -05:00
|
|
|
|
|
|
|
|
|
my $nodes = get_ws_content $tmp;
|
|
|
|
|
is(@$nodes, 1, 'exactly one client');
|
|
|
|
|
is($nodes->[0]->{fullscreen_mode}, 0, 'client not fullscreen');
|
|
|
|
|
|
|
|
|
|
#####################################################################
|
|
|
|
|
# make it fullscreen
|
|
|
|
|
#####################################################################
|
|
|
|
|
|
|
|
|
|
cmd 'nop making fullscreen';
|
|
|
|
|
cmd 'fullscreen';
|
|
|
|
|
|
|
|
|
|
my $nodes = get_ws_content $tmp;
|
|
|
|
|
is($nodes->[0]->{fullscreen_mode}, 1, 'client fullscreen now');
|
|
|
|
|
|
|
|
|
|
#####################################################################
|
|
|
|
|
# send level up, try to un-fullscreen
|
|
|
|
|
#####################################################################
|
|
|
|
|
cmd 'level up';
|
|
|
|
|
cmd 'fullscreen';
|
|
|
|
|
|
|
|
|
|
my $nodes = get_ws_content $tmp;
|
|
|
|
|
is($nodes->[0]->{fullscreen_mode}, 0, 'client not fullscreen any longer');
|
|
|
|
|
|
|
|
|
|
does_i3_live;
|
|
|
|
|
|
|
|
|
|
done_testing;
|