1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <!DOCTYPE HTML>
- <html>
- <!--
- https://bugzilla.mozilla.org/show_bug.cgi?id=557287
- -->
- <head>
- <title>Test for Bug 557287</title>
- <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
- <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
- </head>
- <body>
- <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=557287">Mozilla Bug 147777</a>
- <iframe id="display" src="visited_image_loading_frame.html"></iframe>
- <pre id="test">
- <script type="application/ecmascript" src="visited_image_loading.sjs?reset"></script>
- <script type="application/javascript">
- /** Test for Bug 557287 **/
- SimpleTest.waitForExplicitFinish();
- SimpleTest.requestFlakyTimeout("untriaged");
- var subdoc, subwin;
- window.addEventListener("load", run, false);
- function run()
- {
- var frame = document.getElementById("display");
- subdoc = frame.contentDocument;
- subwin = frame.contentWindow;
- setTimeout(check_link_styled, 50);
- }
- function visitedDependentComputedStyle(win, elem, property) {
- return SpecialPowers.DOMWindowUtils
- .getVisitedDependentComputedStyle(elem, "", property);
- }
- function check_link_styled()
- {
- var vislink = subdoc.getElementById("visited");
- var bgcolor =
- visitedDependentComputedStyle(subwin, vislink, "background-color");
- if (bgcolor == "rgb(128, 0, 128)") {
- // We've done our async :visited processing and restyled accordingly.
- // Make sure that we've actually painted before finishing the test.
- subwin.addEventListener("MozAfterPaint", paint_listener, false);
- // do something that forces a paint
- subdoc.body.appendChild(subdoc.createTextNode("new text node"));
- } else {
- setTimeout(check_link_styled, 50);
- }
- }
- function paint_listener(event)
- {
- subwin.removeEventListener("MozAfterPaint", paint_listener, false);
- var s = document.createElement("script");
- s.src = "visited_image_loading.sjs?waitforresult";
- document.body.appendChild(s);
- }
- </script>
- </pre>
- </body>
- </html>
|