<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<svg xmlns="http://www.w3.org/2000/svg"
     xmlns:html="http://www.w3.org/1999/xhtml"
     class="reftest-wait">

  <title>Testcase for repaint of the area previously covered by a foreignObject</title>

  <!-- From https://bugzilla.mozilla.org/show_bug.cgi?id=369992 -->

  <script type="application/javascript">

// The green rect is initially covered by the red div. After the div
// has rendered the foreignObject (and thus div) is moved out
// of the viewport which should then be filled by the green rect as a result.

  document.addEventListener("MozReftestInvalidate", doTest, false);
  setTimeout(doTest, 4000); // fallback for running outside reftest

  function doTest() {
    document.getElementById('fo').setAttribute('y', '100%');

    document.documentElement.removeAttribute('class');
  }
  </script>

  <rect width="100%" height="100%" fill="red"/>

  <!-- Create the "pass" rect using a foreignObject so the testcase doesn't
       seem to pass if foreignObject is not supported -->
  <foreignObject width="100%" height="100%">
    <html:div style="display:block;width:100%;height:100%;background:lime;"/>
  </foreignObject>

  <foreignObject id="fo" width="100%" height="100%">
    <html:div style="display:block;width:100%;height:100%;background:red;"/>
  </foreignObject>

</svg>