summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/fullscreen/model/move-fullscreen-element.html
blob: 27f4c5dd82e3913cc8506cd744e8855ce4bbf135 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html>
<title>Moving the fullscreen element should not leave the fullscreen flag</title>
<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="../trusted-click.js"></script>

<div id="fullscreen-element">Fullscreen element</div>

<div id="new-parent"></div>

<script>
    promise_test(async () => {
        const fullscreenElement = document.getElementById("fullscreen-element");
        await trusted_request(fullscreenElement);
        assert_true(fullscreenElement.matches(":fullscreen"), "Element has fullscreen flag");
        assert_equals(document.fullscreenElement, fullscreenElement, "Element is fullscreen element");
        document.getElementById("new-parent").appendChild(fullscreenElement);
        assert_false(fullscreenElement.matches(":fullscreen"), "Element no longer has fullscreen flag after being moved");
        assert_false(!!document.fullscreenElement, "There is no more fullscreen element, since fullscreen flag was removed");
        await fullScreenChange();
        assert_false(fullscreenElement.matches(":fullscreen"), "Element no longer has fullscreen flag after fullscreen change event");
        assert_false(!!document.fullscreenElement, "There is no more fullscreen element, since fullscreen flag was removed");
    });
</script>
</html>