| <!DOCTYPE html> | |
| <html> | |
| <script>jsTestIsAsync = true;</script> | |
| <script src="../../resources/js-test-pre.js"></script> | |
| <head> | |
| <title>This tests that we issue repaints on vertical content properly.</title> | |
| <style> | |
| div { | |
| position: absolute; | |
| font-family: ahem; | |
| font-size: 10px; | |
| } | |
| .container { | |
| top: 10px; | |
| left: 10px; | |
| width: 80px; | |
| height: 80px; | |
| background-color: green; | |
| -webkit-writing-mode: vertical-rl; | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div style="position: absolute; left: 0px; top: 0px;"> | |
| <div style="-webkit-writing-mode: vertical-lr; width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="-webkit-writing-mode: horizontal-tb; width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <div style="position: absolute; left: 0px; top: 130px;"> | |
| <div style="-webkit-writing-mode: vertical-lr; width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <div style="position: absolute; left: 0px; top: 260px;"> | |
| <div style="width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <div style="position: absolute; left: 130px; top: 0px;"> | |
| <div style="-webkit-writing-mode: horizontal-tb; width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="-webkit-writing-mode: horizontal-tb; width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <div style="position: absolute; left: 130px; top: 130px;"> | |
| <div style="-webkit-writing-mode: vertical-rl; width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="-webkit-writing-mode: vertical-rl; width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <div style="position: absolute; left: 130px; top: 130px;"> | |
| <div style="-webkit-writing-mode: vertical-rl; width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <div style="position: absolute; left: 130px; top: 260px;"> | |
| <div style="position: relative; -webkit-writing-mode: vertical-rl; width: 120px; height: 120px; background-color: red; top: 5px; left: 5px;"> | |
| <div style="width: 100px; height: 100px; background-color: blue; top: 10px; left: 10px;"> | |
| <div class=container>foobar</div> | |
| </div> | |
| </div> | |
| </div> | |
| <script> | |
| setTimeout(function() { | |
| if (window.internals) | |
| internals.startTrackingRepaints(); | |
| var elements = document.getElementsByClassName("container"); | |
| for (var i = 0; i < elements.length; ++i) | |
| elements[i].innerText = "moobar"; | |
| document.body.offsetWidth; | |
| if (window.internals) { | |
| debug(internals.repaintRectsAsText()); | |
| shouldNotBe("internals.repaintRectsAsText().indexOf('25 25')", "-1"); | |
| shouldNotBe("internals.repaintRectsAsText().indexOf('25 155')", "-1"); | |
| shouldNotBe("internals.repaintRectsAsText().indexOf('25 285')", "-1"); | |
| shouldNotBe("internals.repaintRectsAsText().indexOf('225 25')", "-1"); | |
| shouldNotBe("internals.repaintRectsAsText().indexOf('225 155')", "-1"); | |
| shouldNotBe("internals.repaintRectsAsText().indexOf('225 285')", "-1"); | |
| internals.stopTrackingRepaints(); | |
| } | |
| finishJSTest(); | |
| }, 0); | |
| </script> | |
| <script src="../../resources/js-test-post.js"></script> | |
| </body> | |
| </html> |