SVG is missing <mask> support This would be very easy to do (very similar logic to <clippath>) I just haven't gotten around to it yet.
Created attachment 5024 [details] reduced testcase
Created attachment 5370 [details] reduced testcase (updated) moved rect outside defs to fix a possible bug in the current implementation
Created attachment 5371 [details] preliminary <mask> support issues: see previously attached comment on testcase (possible bug - related to <defs>) currently does not allow for usage of the alpha in the mask, thusly the above testcase has been modified to use a black/white gradient instead the rgb to grayscale conversion is not per spec the code to fix the above rgb/rgba related issues has been #ifdef'd out as its not yet ready for final commit
Created attachment 5372 [details] preliminary <mask> support patch several style changes following review from macdome
Created attachment 5386 [details] alpha mask test
Created attachment 5389 [details] cleaned up patch
Created attachment 5391 [details] fixing leaks and more style issues noticed by macdome
Created attachment 5392 [details] <mask> patch
Created attachment 5453 [details] layouttests patch
Created attachment 5457 [details] <mask> support, refactored
Created attachment 5460 [details] <mask> support, refactored, style changes
Created attachment 5461 [details] changelog addition
Comment on attachment 5460 [details] <mask> support, refactored, style changes Looks good! r=me
Basic support landed. We'll need another bug to cover missing features.