• eric@webkit.org's avatar
    2009-11-30 Dirk Schulze <krit@webkit.org> · 5b0c5989
    eric@webkit.org authored
            Reviewed by Nikolas Zimmermann.
            Complex test of mask with every combination of maskUnits and maskContentUnits
            as well as different values for size and position of the mask and it's content.
            * platform/mac/svg/custom/mask-with-all-units-expected.checksum: Added.
            * platform/mac/svg/custom/mask-with-all-units-expected.png: Added.
            * platform/mac/svg/custom/mask-with-all-units-expected.txt: Added.
            * svg/custom/mask-with-all-units.svg: Added.
    2009-11-30  Dirk Schulze  <krit@webkit.org>
            Reviewed by Nikolas Zimmermann.
            REGRESSION (r49757): masking-mask-01-b.svg rendered incorrectly
            It turns out, that we did not handle maskUnits="userSpaceOnUse"
            correctly. We just need to move the context of the maskImage
            if maskContentUnits="objectBoundingBox". The context gets scaled
            on this unit combination, so we have to substract the position of
            the targetRect. On userSpaceOnUse the position just depends on the
            position of the mask element.
            I added a test with some senseless and reasonable values for size
            and postion of the mask and it's contents. I also used every
            combination of maskUnits and maskContentUnits to be sure, that it
            is fixed this time.
            Test: svg/custom/mask-with-all-units.svg
            * svg/SVGMaskElement.cpp:
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51496 268f45cc-cd09-0410-ab3c-d52691b4dbfc