3 use Test::More tests => 8;
8 # We use relatively long sleeps (1/4 second) to make sure the window manager
10 use Time::HiRes qw(sleep);
13 use_ok('X11::XCB::Window');
16 my $x = X11::XCB::Connection->new;
18 my $original_rect = X11::XCB::Rect->new(x => 0, y => 0, width => 30, height => 30);
20 my $window = $x->root->create_child(
21 class => WINDOW_CLASS_INPUT_OUTPUT,
22 rect => $original_rect,
23 background_color => '#C0C0C0',
26 isa_ok($window, 'X11::XCB::Window');
28 is_deeply($window->rect, $original_rect, "rect unmodified before mapping");
34 my $new_rect = $window->rect;
35 ok(!eq_deeply($new_rect, $original_rect), "Window got repositioned");
36 $original_rect = $new_rect;
40 $window->fullscreen(1);
44 $new_rect = $window->rect;
45 ok(!eq_deeply($new_rect, $original_rect), "Window got repositioned after fullscreen");
49 $window = $x->root->create_child(
50 class => WINDOW_CLASS_INPUT_OUTPUT,
51 rect => $original_rect,
52 background_color => 61440,
55 is_deeply($window->rect, $original_rect, "rect unmodified before mapping");
57 $window->fullscreen(1);
62 ok(!eq_deeply($new_rect, $original_rect), "Window got repositioned after fullscreen");
63 ok($window->mapped, "Window is mapped after opening it in fullscreen mode");
65 diag( "Testing i3, Perl $], $^X" );