| <!-- |
| Any copyright is dedicated to the Public Domain. |
| http://creativecommons.org/publicdomain/zero/1.0/ |
| --> |
| <svg xmlns="http://www.w3.org/2000/svg" version="1.1" class="reftest-wait" |
| style="border: 10px solid lime; padding: 10px; background: lime;"> |
| <!-- From https://bugzilla.mozilla.org/show_bug.cgi?id=490003 --> |
| <title>Test that invalidation takes account of outer-<svg> border/padding</title> |
| <desc> |
| This test checks that SVG implementations take account of border and |
| padding on outer <svg> when doing invalidation. |
| </desc> |
| |
| <filter id="identity"> |
| <feColorMatrix type="saturate" in="SourceGraphic"/> |
| </filter> |
| |
| <!-- to catch misses--> |
| <rect id="background" width="100%" height="100%" fill="lime"/> |
| |
| <rect id="r" width="50" height="50" fill="red"/> |
| <rect id="f" y="100" width="50" height="50" fill="red"/> |
| |
| <rect x="100" y="100" width="50" height="50" fill="red"/> |
| <rect x="200" y="100" width="50" height="50" fill="red"/> |
| |
| <script type="text/javascript"> |
| function doTest() { |
| var background = document.getElementById("background"); |
| |
| document.getElementById('r').setAttribute('opacity','0'); |
| document.getElementById('f').setAttribute('opacity','0'); |
| |
| <!-- top left --> |
| document.elementFromPoint(121, 121).setAttribute('opacity','0'); |
| <!-- bottom right --> |
| document.elementFromPoint(269, 169).setAttribute('opacity','0'); |
| |
| <!-- outside top left --> |
| if (document.elementFromPoint(119, 119) != background) { |
| background.setAttribute("fill", "red"); |
| } |
| <!-- outside bottom right --> |
| if (document.elementFromPoint(271, 171) != background) { |
| background.setAttribute("fill", "purple"); |
| } |
| |
| document.documentElement.removeAttribute('class'); |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| } |
| |
| if (window.testRunner) |
| testRunner.waitUntilDone(); |
| |
| setTimeout(doTest, 100); |
| </script> |
| </svg> |