blob: ee40e677fa50bd78c88cc90cf1786bdeb18d7af4 [file] [log] [blame]
<!DOCTYPE html>
<script src="../../resources/run-after-layout-and-paint.js"></script>
<script>
if (window.testRunner)
testRunner.waitUntilDone();
window.onload = function() {
// Wait for a frame, then mutate the filter.
runAfterLayoutAndPaint(function() {
var pointLight = document.getElementById('light');
pointLight.setAttribute('x', '0.5');
pointLight.setAttribute('y', '0.5');
pointLight.setAttribute('z', '10');
// Change primitive units after having updated light position.
document.querySelector('filter').setAttribute('primitiveUnits', 'objectBoundingBox');
if (window.testRunner)
runAfterLayoutAndPaint(function() { testRunner.notifyDone(); });
});
};
</script>
<svg>
<filter id="f" x="0" y="0" width="1" height="1">
<feDiffuseLighting lighting-color="green">
<fePointLight id="light" x="0" y="0" z="-50"/>
</feDiffuseLighting>
</filter>
<rect width="100" height="100" fill="red" filter="url(#f)"/>
</svg>