84 lines
2.9 KiB
HTML
84 lines
2.9 KiB
HTML
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<script>window.enablePixelTesting = true;</script>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script src="../../fast/repaint/resources/repaint.js"></script>
|
|
</head>
|
|
<body style="margin: 0px">
|
|
|
|
<script type="text/javascript">
|
|
function test1() {
|
|
object1 = document.getElementsByTagName("object")[0];
|
|
debug("Check initial <object> size, before external resource loaded");
|
|
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(object1).width", "400px");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(object1).height", "200px");
|
|
}
|
|
|
|
function repaintTest() {
|
|
object1 = document.getElementsByTagName("object")[0];
|
|
|
|
debug("");
|
|
debug("Check initial <object> size, after external resource loaded - should not change.");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(object1).width", "400px");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(object1).height", "200px");
|
|
|
|
if (window.testRunner)
|
|
testRunner.waitUntilDone();
|
|
requestSizeChange();
|
|
}
|
|
|
|
function requestSizeChange() {
|
|
object1 = document.getElementsByTagName("object")[0];
|
|
var htmlDoc = object1.contentDocument;
|
|
if (!htmlDoc) {
|
|
setTimeout(requestSizeChange, 50);
|
|
return;
|
|
}
|
|
|
|
var htmlWindow = htmlDoc.defaultView;
|
|
// Wait until the embedded SVG (of the embedded HTML that we're loading), is loaded.
|
|
if (htmlWindow.canChangeSize) {
|
|
htmlWindow.changeSize();
|
|
test3();
|
|
} else
|
|
setTimeout(requestSizeChange, 50);
|
|
}
|
|
|
|
function test3() {
|
|
object1 = document.getElementsByTagName("object")[0];
|
|
|
|
debug("");
|
|
debug("Check final <object> size, after resizing finished");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(object1).width", "400px");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(object1).height", "200px");
|
|
|
|
debug("");
|
|
debug("Test passed if you see two green rectangles");
|
|
|
|
completeTest();
|
|
}
|
|
|
|
function completeTest() {
|
|
var script = document.createElement("script");
|
|
script.onload = function() {
|
|
if (window.testRunner)
|
|
testRunner.notifyDone();
|
|
};
|
|
|
|
script.src = "../../resources/js-test-post.js";
|
|
document.body.appendChild(script);
|
|
}
|
|
</script>
|
|
|
|
<object style="border: 1px red solid; width: 400px; height: 200px;" onload="runRepaintTest()" data="resources/nested-embedded-svg-size-changes-target.html"></object>
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
|
|
<script>
|
|
description("This test checks that intrinsic size changes of an embedded SVG cause immediate updates of the object that embeds it.");
|
|
test1();
|
|
</script>
|
|
</body>
|
|
</html>
|