summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/compositing/iframes/iframe-size-to-zero.html
blob: 40f646c3b9617dd42628594264eb42298e4f6d6c (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<!DOCTYPE html>

<html>
<head>
  <script src="../../resources/run-after-layout-and-paint.js"></script>
  <style type="text/css" media="screen">
    iframe {
        border: 10px solid black;
        padding: 5px;
        margin: 20px;
        height: 150px;
        width: 300px;
    }
    
    .collapsed {
      width: 0;
    }
    
    .overlay {
      position: absolute;
      width: 50px;
      height: 50px;
      top: 5px;
      left: 5px;
      background-color: rgba(0, 0, 0, 0.2);
    }
    
  </style>
  <script type="text/javascript" charset="utf-8">
    if (window.testRunner) {
        testRunner.dumpAsText();
        testRunner.waitUntilDone();
    }

    function doTest()
    {
        var hadLayers = false;
        if (window.testRunner) {
            var layers = window.internals.layerTreeAsText(document);
            hadLayers = layers != "";
        }

        runAfterLayoutAndPaint(function() {
            document.getElementById('iframe').className = 'collapsed';

            if (window.testRunner) {
                var haveLayers = window.internals.layerTreeAsText(document) != "";
                var result;
                if (hadLayers && haveLayers)
                  result = "PASS: Had layers before and after";
                else
                  result = "FAIL: Layers should have stayed. hadLayers = " + hadLayers + ", haveLayers = " + haveLayers;
                document.getElementById('result').innerHTML = result;
                testRunner.notifyDone();
            }
        });
    }

    window.addEventListener('load', doTest, false);
  </script>
</head>
<body>

    <!-- The parent document may into compositing mode by the iframe. -->
    <iframe id="iframe" src="resources/composited-subframe.html"></iframe>
    
    <div class="overlay">
    </div>

    <div id="result">Test only works in DRT</div>
</body>
</html>