Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

SVG Preview (Scaled)

Preview of https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/reftests/svg/smil/anim-feComposite-operator-01.svg
class="reftest-wait">
<title>Test animation of the "operator" enum attribute on the "feComposite" element</title>
<script xlink:href="smil-util.js" type="text/javascript"/>
<filter id="composite_filter_1" x="-100%" y="0%" width="200%" height="100%">
<feFlood flood-color="lime" result="lime"/>
<feComposite in="lime" in2="SourceGraphic" operator="out">
<!-- this should turn the referencing element red at 1.25s -->
<animate attributeName="operator"
calcMode="discrete"
begin="0s" dur="2.5s"
from="out" to="in"
fill="freeze"/>
</feComposite>
</filter>
<filter id="composite_filter_2" x="0%" y="0%" width="200%" height="100%">
<feFlood flood-color="lime" result="lime"/>
<feComposite in="lime" in2="SourceGraphic" operator="out">
<!-- this should turn the referencing element lime at 1s -->
<animate attributeName="operator"
calcMode="discrete"
begin="0s" dur="2s"
from="out" to="in"
fill="freeze"/>
</feComposite>
</filter>
<rect width="100%" height="100%" fill="lime"/>
<!-- 40% through discrete animation simple duration - test animation doesn't affect the element too early -->
<rect width="100" height="100" fill="red"/>
<rect x="100" width="100" height="100" fill="red" filter="url(#composite_filter_1)"/>
<!-- 50% through discrete animation simple duration - test animation affects the element now -->
<rect y="100" width="100" height="100" fill="red"/>
<rect y="100" width="100" height="100" fill="red" filter="url(#composite_filter_2)"/>
<script type="text/javascript">
function doTest() {
setTimeAndSnapshot(1, true);
}
window.addEventListener("MozReftestInvalidate", doTest, false);
</script>
</svg>