Changeset 84522 in webkit


Ignore:
Timestamp:
Apr 21, 2011 10:56:28 AM (13 years ago)
Author:
krit@webkit.org
Message:

2011-04-21 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

SVG feDropShadow implementation of SVG Filters 1.2
https://bugs.webkit.org/show_bug.cgi?id=52513

Added dynamic update tests for FEDropShadow as well as a basic pixel test.

  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
  • platform/mac/svg/filters/feDropShadow-expected.checksum: Added.
  • platform/mac/svg/filters/feDropShadow-expected.png: Added.
  • platform/mac/svg/filters/feDropShadow-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html: Added.
  • svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html:
  • svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html:
  • svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html:
  • svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html:
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dx-attr.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dy-attr.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-in-attr.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-color-attr.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-opacity-attr.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-stdDeviation-attr.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dx-prop.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dy-prop.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-in-prop.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-color-prop.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.js: Added. (executeTest):
  • svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-stdDeviation-prop.js: Added. (executeTest):
  • svg/filters/feDropShadow.svg: Added.

2011-04-21 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

SVG feDropShadow implementation of SVG Filters 1.2
https://bugs.webkit.org/show_bug.cgi?id=52513

  • MigrateHeaders.make:

2011-04-21 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

SVG feDropShadow implementation of SVG Filters 1.2
https://bugs.webkit.org/show_bug.cgi?id=52513

This is the implementation of feDropShadow, a shorthand filter and a combination of feGaussianBlur,
feOffset, feFlood and feComposite to create a drop shadow of an input effect.
Creating this new filter effect makes it possible to optimize the often used workflow. ShadowBlur, with its
fast blurring algorithm, is used to blur the shadow and composite operators are responsible for combining the
source with different colored shadows.
Shadow color and opacity can be set with the properties flood-color and flood-opacity.

Tests: svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html

svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html
svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html
svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html
svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html
svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html
svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html
svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html
svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html
svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html
svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html
svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html
svg/filters/feDropShadow.svg

  • Android.mk:
  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/objc/DOM.mm: (WebCore::createElementClassMap):
  • bindings/objc/DOMSVG.h:
  • page/DOMWindow.idl:
  • platform/graphics/ShadowBlur.cpp: Added missing copyright after r84410.
  • platform/graphics/ShadowBlur.h: Made blurLayerImage public.
  • platform/graphics/filters/FEDropShadow.cpp: Added. (WebCore::FEDropShadow::FEDropShadow): (WebCore::FEDropShadow::create): (WebCore::FEDropShadow::determineAbsolutePaintRect): (WebCore::FEDropShadow::apply): (WebCore::FEDropShadow::dump): (WebCore::FEDropShadow::externalRepresentation):
  • platform/graphics/filters/FEDropShadow.h: Added. (WebCore::FEDropShadow::stdDeviationX): (WebCore::FEDropShadow::setStdDeviationX): (WebCore::FEDropShadow::stdDeviationY): (WebCore::FEDropShadow::setStdDeviationY): (WebCore::FEDropShadow::dx): (WebCore::FEDropShadow::setDx): (WebCore::FEDropShadow::dy): (WebCore::FEDropShadow::setDy): (WebCore::FEDropShadow::shadowColor): (WebCore::FEDropShadow::setShadowColor): (WebCore::FEDropShadow::shadowOpacity): (WebCore::FEDropShadow::setShadowOpacity):
  • platform/graphics/filters/FEGaussianBlur.cpp: (WebCore::FEGaussianBlur::calculateKernelSize): Make kernel calculations accessible for feDropShadow.
  • platform/graphics/filters/FEGaussianBlur.h:
  • svg/SVGAllInOne.cpp:
  • svg/SVGFEDropShadowElement.cpp: Added. (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement): (WebCore::SVGFEDropShadowElement::create): (WebCore::SVGFEDropShadowElement::stdDeviationXIdentifier): (WebCore::SVGFEDropShadowElement::stdDeviationYIdentifier): (WebCore::SVGFEDropShadowElement::setStdDeviation): (WebCore::SVGFEDropShadowElement::parseMappedAttribute): (WebCore::SVGFEDropShadowElement::svgAttributeChanged): (WebCore::SVGFEDropShadowElement::synchronizeProperty): (WebCore::SVGFEDropShadowElement::build):
  • svg/SVGFEDropShadowElement.h: Added.
  • svg/SVGFEDropShadowElement.idl: Added.
  • svg/svgtags.in:
Location:
trunk
Files:
69 added
23 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r84521 r84522  
     12011-04-21  Dirk Schulze  <krit@webkit.org>
     2
     3        Reviewed by Nikolas Zimmermann.
     4
     5        SVG feDropShadow implementation of SVG Filters 1.2
     6        https://bugs.webkit.org/show_bug.cgi?id=52513
     7
     8        Added dynamic update tests for FEDropShadow as well as a basic pixel test.
     9
     10        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.checksum: Added.
     11        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
     12        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.checksum: Added.
     13        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
     14        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.checksum: Added.
     15        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
     16        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.checksum: Added.
     17        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
     18        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.checksum: Added.
     19        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
     20        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.checksum: Added.
     21        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
     22        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.checksum: Added.
     23        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
     24        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.checksum: Added.
     25        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
     26        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.checksum: Added.
     27        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
     28        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.checksum: Added.
     29        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
     30        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.checksum: Added.
     31        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
     32        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.checksum: Added.
     33        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
     34        * platform/mac/svg/filters/feDropShadow-expected.checksum: Added.
     35        * platform/mac/svg/filters/feDropShadow-expected.png: Added.
     36        * platform/mac/svg/filters/feDropShadow-expected.txt: Added.
     37        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.txt: Added.
     38        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html: Added.
     39        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.txt: Added.
     40        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html: Added.
     41        * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.txt: Added.
     42        * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html: Added.
     43        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.txt: Added.
     44        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html: Added.
     45        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.txt: Added.
     46        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html: Added.
     47        * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.txt: Added.
     48        * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html: Added.
     49        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.txt: Added.
     50        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html: Added.
     51        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.txt: Added.
     52        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html: Added.
     53        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.txt: Added.
     54        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html: Added.
     55        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.txt: Added.
     56        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html: Added.
     57        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.txt: Added.
     58        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html: Added.
     59        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.txt: Added.
     60        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html: Added.
     61        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html:
     62        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html:
     63        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html:
     64        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html:
     65        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dx-attr.js: Added.
     66        (executeTest):
     67        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dy-attr.js: Added.
     68        (executeTest):
     69        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-in-attr.js: Added.
     70        (executeTest):
     71        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-color-attr.js: Added.
     72        (executeTest):
     73        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-opacity-attr.js: Added.
     74        (executeTest):
     75        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-stdDeviation-attr.js: Added.
     76        (executeTest):
     77        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dx-prop.js: Added.
     78        (executeTest):
     79        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dy-prop.js: Added.
     80        (executeTest):
     81        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-in-prop.js: Added.
     82        (executeTest):
     83        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-color-prop.js: Added.
     84        (executeTest):
     85        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.js: Added.
     86        (executeTest):
     87        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-stdDeviation-prop.js: Added.
     88        (executeTest):
     89        * svg/filters/feDropShadow.svg: Added.
     90
    1912011-04-21  MORITA Hajime  <morrita@google.com>
    292
  • trunk/Source/WebCore/Android.mk

    r84498 r84522  
    572572        platform/graphics/filters/FEDiffuseLighting.cpp \
    573573        platform/graphics/filters/FEDisplacementMap.cpp \
     574        platform/graphics/filters/FEDropShadow.cpp \
    574575        platform/graphics/filters/FEFlood.cpp \
    575576        platform/graphics/filters/FEMerge.cpp \
     
    918919        svg/SVGFEDisplacementMapElement.cpp \
    919920        svg/SVGFEDistantLightElement.cpp \
     921        svg/SVGFEDropShadowElement.cpp \
    920922        svg/SVGFEFloodElement.cpp \
    921923        svg/SVGFEFuncAElement.cpp \
  • trunk/Source/WebCore/CMakeLists.txt

    r84498 r84522  
    11221122    platform/graphics/filters/FEDiffuseLighting.cpp
    11231123    platform/graphics/filters/FEDisplacementMap.cpp
     1124    platform/graphics/filters/FEDropShadow.cpp
    11241125    platform/graphics/filters/FEFlood.cpp
    11251126    platform/graphics/filters/FEGaussianBlur.cpp
     
    16501651        svg/SVGFEDisplacementMapElement.cpp
    16511652        svg/SVGFEDistantLightElement.cpp
     1653        svg/SVGFEDropShadowElement.cpp
    16521654        svg/SVGFEFloodElement.cpp
    16531655        svg/SVGFEFuncAElement.cpp
     
    18021804        svg/SVGFEDisplacementMapElement.idl
    18031805        svg/SVGFEDistantLightElement.idl
     1806        svg/SVGFEDropShadowElement.idl
    18041807        svg/SVGFEFloodElement.idl
    18051808        svg/SVGFEFuncAElement.idl
  • trunk/Source/WebCore/ChangeLog

    r84520 r84522  
     12011-04-21  Dirk Schulze  <krit@webkit.org>
     2
     3        Reviewed by Nikolas Zimmermann.
     4
     5        SVG feDropShadow implementation of SVG Filters 1.2
     6        https://bugs.webkit.org/show_bug.cgi?id=52513
     7
     8        This is the implementation of feDropShadow, a shorthand filter and a combination of feGaussianBlur,
     9        feOffset, feFlood and feComposite to create a drop shadow of an input effect.
     10        Creating this new filter effect makes it possible to optimize the often used workflow. ShadowBlur, with its
     11        fast blurring algorithm, is used to blur the shadow and composite operators are responsible for combining the
     12        source with different colored shadows.
     13        Shadow color and opacity can be set with the properties flood-color and flood-opacity.
     14
     15        Tests: svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html
     16               svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html
     17               svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html
     18               svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html
     19               svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html
     20               svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html
     21               svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html
     22               svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html
     23               svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html
     24               svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html
     25               svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html
     26               svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html
     27               svg/filters/feDropShadow.svg
     28
     29        * Android.mk:
     30        * CMakeLists.txt:
     31        * DerivedSources.cpp:
     32        * DerivedSources.make:
     33        * GNUmakefile.list.am:
     34        * WebCore.exp.in:
     35        * WebCore.gypi:
     36        * WebCore.pro:
     37        * WebCore.vcproj/WebCore.vcproj:
     38        * WebCore.xcodeproj/project.pbxproj:
     39        * bindings/objc/DOM.mm:
     40        (WebCore::createElementClassMap):
     41        * bindings/objc/DOMSVG.h:
     42        * page/DOMWindow.idl:
     43        * platform/graphics/ShadowBlur.cpp: Added missing copyright after r84410.
     44        * platform/graphics/ShadowBlur.h: Made blurLayerImage public.
     45        * platform/graphics/filters/FEDropShadow.cpp: Added.
     46        (WebCore::FEDropShadow::FEDropShadow):
     47        (WebCore::FEDropShadow::create):
     48        (WebCore::FEDropShadow::determineAbsolutePaintRect):
     49        (WebCore::FEDropShadow::apply):
     50        (WebCore::FEDropShadow::dump):
     51        (WebCore::FEDropShadow::externalRepresentation):
     52        * platform/graphics/filters/FEDropShadow.h: Added.
     53        (WebCore::FEDropShadow::stdDeviationX):
     54        (WebCore::FEDropShadow::setStdDeviationX):
     55        (WebCore::FEDropShadow::stdDeviationY):
     56        (WebCore::FEDropShadow::setStdDeviationY):
     57        (WebCore::FEDropShadow::dx):
     58        (WebCore::FEDropShadow::setDx):
     59        (WebCore::FEDropShadow::dy):
     60        (WebCore::FEDropShadow::setDy):
     61        (WebCore::FEDropShadow::shadowColor):
     62        (WebCore::FEDropShadow::setShadowColor):
     63        (WebCore::FEDropShadow::shadowOpacity):
     64        (WebCore::FEDropShadow::setShadowOpacity):
     65        * platform/graphics/filters/FEGaussianBlur.cpp:
     66        (WebCore::FEGaussianBlur::calculateKernelSize): Make kernel calculations accessible for feDropShadow.
     67        * platform/graphics/filters/FEGaussianBlur.h:
     68        * svg/SVGAllInOne.cpp:
     69        * svg/SVGFEDropShadowElement.cpp: Added.
     70        (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
     71        (WebCore::SVGFEDropShadowElement::create):
     72        (WebCore::SVGFEDropShadowElement::stdDeviationXIdentifier):
     73        (WebCore::SVGFEDropShadowElement::stdDeviationYIdentifier):
     74        (WebCore::SVGFEDropShadowElement::setStdDeviation):
     75        (WebCore::SVGFEDropShadowElement::parseMappedAttribute):
     76        (WebCore::SVGFEDropShadowElement::svgAttributeChanged):
     77        (WebCore::SVGFEDropShadowElement::synchronizeProperty):
     78        (WebCore::SVGFEDropShadowElement::build):
     79        * svg/SVGFEDropShadowElement.h: Added.
     80        * svg/SVGFEDropShadowElement.idl: Added.
     81        * svg/svgtags.in:
     82
    1832011-04-21  Roland Steiner  <rolandsteiner@chromium.org>
    284
  • trunk/Source/WebCore/DerivedSources.cpp

    r84224 r84522  
    333333#include "JSSVGFEDisplacementMapElement.cpp"
    334334#include "JSSVGFEDistantLightElement.cpp"
     335#include "JSSVGFEDropShadowElement.cpp"
    335336#include "JSSVGFEFloodElement.cpp"
    336337#include "JSSVGFEFuncAElement.cpp"
  • trunk/Source/WebCore/DerivedSources.make

    r84224 r84522  
    402402    SVGFEDisplacementMapElement \
    403403    SVGFEDistantLightElement \
     404    SVGFEDropShadowElement \
    404405    SVGFEFloodElement \
    405406    SVGFEFuncAElement \
  • trunk/Source/WebCore/GNUmakefile.list.am

    r84511 r84522  
    23612361        Source/WebCore/platform/graphics/filters/FEDisplacementMap.cpp \
    23622362        Source/WebCore/platform/graphics/filters/FEDisplacementMap.h \
     2363        Source/WebCore/platform/graphics/filters/FEDropShadow.cpp \
     2364        Source/WebCore/platform/graphics/filters/FEDropShadow.h \
     2365        Source/WebCore/platform/graphics/filters/FEFlood.cpp \
     2366        Source/WebCore/platform/graphics/filters/FEFlood.h \
    23632367        Source/WebCore/platform/graphics/filters/FEGaussianBlur.cpp \
    23642368        Source/WebCore/platform/graphics/filters/FEGaussianBlur.h \
    2365         Source/WebCore/platform/graphics/filters/FEFlood.cpp \
    2366         Source/WebCore/platform/graphics/filters/FEFlood.h \
    23672369        Source/WebCore/platform/graphics/filters/FELighting.cpp \
    23682370        Source/WebCore/platform/graphics/filters/FELighting.h \
     
    33363338        Source/WebCore/svg/SVGFEDistantLightElement.cpp \
    33373339        Source/WebCore/svg/SVGFEDistantLightElement.h \
     3340        Source/WebCore/svg/SVGFEDropShadowElement.cpp \
     3341        Source/WebCore/svg/SVGFEDropShadowElement.h \
    33383342        Source/WebCore/svg/SVGFEFloodElement.cpp \
    33393343        Source/WebCore/svg/SVGFEFloodElement.h \
     
    41904194        DerivedSources/WebCore/JSSVGFEDistantLightElement.cpp \
    41914195        DerivedSources/WebCore/JSSVGFEDistantLightElement.h \
     4196        DerivedSources/WebCore/JSSVGFEDropShadowElement.cpp \
     4197        DerivedSources/WebCore/JSSVGFEDropShadowElement.h \
    41924198        DerivedSources/WebCore/JSSVGFEFloodElement.cpp \
    41934199        DerivedSources/WebCore/JSSVGFEFloodElement.h \
  • trunk/Source/WebCore/WebCore.exp.in

    r84472 r84522  
    17521752.objc_class_name_DOMSVGFEDisplacementMapElement
    17531753.objc_class_name_DOMSVGFEDistantLightElement
     1754.objc_class_name_DOMSVGFEDropShadowElement
    17541755.objc_class_name_DOMSVGFEFloodElement
    17551756.objc_class_name_DOMSVGFEFuncAElement
  • trunk/Source/WebCore/WebCore.gypi

    r84511 r84522  
    213213            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDistantLightElement.h',
    214214            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDistantLightElementInternal.h',
     215            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDropShadowElement.h',
     216            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDropShadowElementInternal.h',
    215217            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEFloodElement.h',
    216218            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEFloodElementInternal.h',
     
    14751477            'svg/SVGFEDisplacementMapElement.idl',
    14761478            'svg/SVGFEDistantLightElement.idl',
     1479            'svg/SVGFEDropShadowElement.idl',
    14771480            'svg/SVGFEFloodElement.idl',
    14781481            'svg/SVGFEFuncAElement.idl',
     
    41094112            'platform/graphics/filters/FEDisplacementMap.cpp',
    41104113            'platform/graphics/filters/FEDisplacementMap.h',
     4114            'platform/graphics/filters/FEDropShadow.cpp',
     4115            'platform/graphics/filters/FEDropShadow.h',
    41114116            'platform/graphics/filters/FEFlood.cpp',
    41124117            'platform/graphics/filters/FEFlood.h',
     
    56635668            'svg/SVGFEDistantLightElement.cpp',
    56645669            'svg/SVGFEDistantLightElement.h',
     5670            'svg/SVGFEDropShadowElement.cpp',
     5671            'svg/SVGFEDropShadowElement.h',
    56655672            'svg/SVGFEFloodElement.cpp',
    56665673            'svg/SVGFEFloodElement.h',
     
    67756782            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDisplacementMapElement.mm',
    67766783            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDistantLightElement.mm',
     6784            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDropShadowElement.dep',
     6785            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEDropShadowElement.mm',
    67776786            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEFloodElement.dep',
    67786787            '<(PRODUCT_DIR)/DerivedSources/WebCore/DOMSVGFEFloodElement.mm',
     
    76127621            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEDistantLightElement.cpp',
    76137622            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEDistantLightElement.h',
     7623            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEDropShadowElement.cpp',
     7624            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEDropShadowElement.dep',
     7625            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEDropShadowElement.h',
    76147626            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEFloodElement.cpp',
    76157627            '<(PRODUCT_DIR)/DerivedSources/WebCore/JSSVGFEFloodElement.dep',
  • trunk/Source/WebCore/WebCore.pro

    r84498 r84522  
    19281928    platform/graphics/filters/FEDiffuseLighting.h \
    19291929    platform/graphics/filters/FEDisplacementMap.h \
     1930    platform/graphics/filters/FEDropShadow.h \
    19301931    platform/graphics/filters/FEFlood.h \
    19311932    platform/graphics/filters/FEGaussianBlur.h \
     
    23282329    svg/SVGFEDisplacementMapElement.h \
    23292330    svg/SVGFEDistantLightElement.h \
     2331    svg/SVGFEFDropShadowElement.h \
    23302332    svg/SVGFEFloodElement.h \
    23312333    svg/SVGFEFuncAElement.h \
     
    30603062        platform/graphics/filters/FEDiffuseLighting.cpp \
    30613063        platform/graphics/filters/FEDisplacementMap.cpp \
     3064        platform/graphics/filters/FEDropShadow.cpp \
    30623065        platform/graphics/filters/FEFlood.cpp \
    30633066        platform/graphics/filters/FEGaussianBlur.cpp \
     
    32853288              svg/SVGFEDisplacementMapElement.cpp \
    32863289              svg/SVGFEDistantLightElement.cpp \
     3290              svg/SVGFEDropShadowElement.cpp \
    32873291              svg/SVGFEFloodElement.cpp \
    32883292              svg/SVGFEFuncAElement.cpp \
  • trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj

    r84511 r84522  
    1616716167                        </File>
    1616816168                        <File
     16169                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSSVGFEDropShadowElement.cpp"
     16170                                >
     16171                                <FileConfiguration
     16172                                        Name="Debug|Win32"
     16173                                        ExcludedFromBuild="true"
     16174                                        >
     16175                                        <Tool
     16176                                                Name="VCCLCompilerTool"
     16177                                        />
     16178                                </FileConfiguration>
     16179                                <FileConfiguration
     16180                                        Name="Release|Win32"
     16181                                        ExcludedFromBuild="true"
     16182                                        >
     16183                                        <Tool
     16184                                                Name="VCCLCompilerTool"
     16185                                        />
     16186                                </FileConfiguration>
     16187                                <FileConfiguration
     16188                                        Name="Debug_Cairo_CFLite|Win32"
     16189                                        ExcludedFromBuild="true"
     16190                                        >
     16191                                        <Tool
     16192                                                Name="VCCLCompilerTool"
     16193                                        />
     16194                                </FileConfiguration>
     16195                                <FileConfiguration
     16196                                        Name="Release_Cairo_CFLite|Win32"
     16197                                        ExcludedFromBuild="true"
     16198                                        >
     16199                                        <Tool
     16200                                                Name="VCCLCompilerTool"
     16201                                        />
     16202                                </FileConfiguration>
     16203                                <FileConfiguration
     16204                                        Name="Debug_All|Win32"
     16205                                        ExcludedFromBuild="true"
     16206                                        >
     16207                                        <Tool
     16208                                                Name="VCCLCompilerTool"
     16209                                        />
     16210                                </FileConfiguration>
     16211                                <FileConfiguration
     16212                                        Name="Release_LTCG|Win32"
     16213                                        ExcludedFromBuild="true"
     16214                                        >
     16215                                        <Tool
     16216                                                Name="VCCLCompilerTool"
     16217                                        />
     16218                                </FileConfiguration>
     16219                        </File>
     16220                        <File
     16221                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSSVGFEDropShadowElement.h"
     16222                                >
     16223                        </File>
     16224                        <File
    1616916225                                RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSSVGFEFloodElement.cpp"
    1617016226                                >
     
    2925829314                                        <File
    2925929315                                                RelativePath="..\platform\graphics\filters\FEDisplacementMap.h"
     29316                                                >
     29317                                        </File>
     29318                                        <File
     29319                                                RelativePath="..\platform\graphics\filters\FEDropShadow.cpp"
     29320                                                >
     29321                                        </File>
     29322                                        <File
     29323                                                RelativePath="..\platform\graphics\filters\FEDropShadow.h"
    2926029324                                                >
    2926129325                                        </File>
     
    6479564859                        </File>
    6479664860                        <File
     64861                                RelativePath="..\svg\SVGFEDropShadowElement.h"
     64862                                >
     64863                        </File>
     64864                        <File
    6479764865                                RelativePath="..\svg\SVGFEFloodElement.h"
    6479864866                                >
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r84511 r84522  
    962962                41FA303E1316C29C00C0BFC5 /* RenderMediaControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 41FA303C1316C29C00C0BFC5 /* RenderMediaControls.cpp */; };
    963963                41FA303F1316C29C00C0BFC5 /* RenderMediaControls.h in Headers */ = {isa = PBXBuildFile; fileRef = 41FA303D1316C29C00C0BFC5 /* RenderMediaControls.h */; };
     964                4358E86A1360A21600E4748C /* DOMSVGFEDropShadowElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 4358E8671360A21600E4748C /* DOMSVGFEDropShadowElement.h */; };
     965                4358E86B1360A21600E4748C /* DOMSVGFEDropShadowElement.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4358E8681360A21600E4748C /* DOMSVGFEDropShadowElement.mm */; };
     966                4358E86C1360A21600E4748C /* DOMSVGFEDropShadowElementInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 4358E8691360A21600E4748C /* DOMSVGFEDropShadowElementInternal.h */; };
     967                4358E86D1360A24500E4748C /* DOMSVGFEDropShadowElement.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 4358E8671360A21600E4748C /* DOMSVGFEDropShadowElement.h */; };
     968                4358E86F1360A24500E4748C /* DOMSVGFEDropShadowElementInternal.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 4358E8691360A21600E4748C /* DOMSVGFEDropShadowElementInternal.h */; };
     969                4358E87C1360A2EE00E4748C /* JSSVGFEDropShadowElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4358E87A1360A2EE00E4748C /* JSSVGFEDropShadowElement.cpp */; };
     970                4358E87D1360A2EE00E4748C /* JSSVGFEDropShadowElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 4358E87B1360A2EE00E4748C /* JSSVGFEDropShadowElement.h */; };
     971                4358E8801360A31700E4748C /* FEDropShadow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4358E87E1360A31700E4748C /* FEDropShadow.cpp */; };
     972                4358E8811360A31700E4748C /* FEDropShadow.h in Headers */ = {isa = PBXBuildFile; fileRef = 4358E87F1360A31700E4748C /* FEDropShadow.h */; };
     973                4358E8851360A33B00E4748C /* SVGFEDropShadowElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4358E8821360A33B00E4748C /* SVGFEDropShadowElement.cpp */; };
     974                4358E8861360A33B00E4748C /* SVGFEDropShadowElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 4358E8831360A33B00E4748C /* SVGFEDropShadowElement.h */; };
    964975                436708C112D9CA4B00044234 /* RenderSVGBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 4367088212D9CA4A00044234 /* RenderSVGBlock.h */; };
    965976                436708C312D9CA4B00044234 /* RenderSVGContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 4367088412D9CA4A00044234 /* RenderSVGContainer.h */; };
     
    60406051                        dstSubfolderSpec = 1;
    60416052                        files = (
     6053                                4358E86D1360A24500E4748C /* DOMSVGFEDropShadowElement.h in Copy Generated Headers */,
     6054                                4358E86F1360A24500E4748C /* DOMSVGFEDropShadowElementInternal.h in Copy Generated Headers */,
    60426055                                5DF7F5C20F01F92A00526B4B /* CSSPropertyNames.h in Copy Generated Headers */,
    60436056                                8538F0300AD71CDB006A81D1 /* DOMAbstractView.h in Copy Generated Headers */,
     
    74707483                41FA303C1316C29C00C0BFC5 /* RenderMediaControls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderMediaControls.cpp; sourceTree = "<group>"; };
    74717484                41FA303D1316C29C00C0BFC5 /* RenderMediaControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMediaControls.h; sourceTree = "<group>"; };
     7485                4358E8671360A21600E4748C /* DOMSVGFEDropShadowElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMSVGFEDropShadowElement.h; sourceTree = "<group>"; };
     7486                4358E8681360A21600E4748C /* DOMSVGFEDropShadowElement.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DOMSVGFEDropShadowElement.mm; sourceTree = "<group>"; };
     7487                4358E8691360A21600E4748C /* DOMSVGFEDropShadowElementInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMSVGFEDropShadowElementInternal.h; sourceTree = "<group>"; };
     7488                4358E87A1360A2EE00E4748C /* JSSVGFEDropShadowElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGFEDropShadowElement.cpp; sourceTree = "<group>"; };
     7489                4358E87B1360A2EE00E4748C /* JSSVGFEDropShadowElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSVGFEDropShadowElement.h; sourceTree = "<group>"; };
     7490                4358E87E1360A31700E4748C /* FEDropShadow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FEDropShadow.cpp; path = filters/FEDropShadow.cpp; sourceTree = "<group>"; };
     7491                4358E87F1360A31700E4748C /* FEDropShadow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FEDropShadow.h; path = filters/FEDropShadow.h; sourceTree = "<group>"; };
     7492                4358E8821360A33B00E4748C /* SVGFEDropShadowElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGFEDropShadowElement.cpp; sourceTree = "<group>"; };
     7493                4358E8831360A33B00E4748C /* SVGFEDropShadowElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGFEDropShadowElement.h; sourceTree = "<group>"; };
     7494                4358E8841360A33B00E4748C /* SVGFEDropShadowElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SVGFEDropShadowElement.idl; sourceTree = "<group>"; };
    74727495                4367088112D9CA4A00044234 /* RenderSVGBlock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGBlock.cpp; sourceTree = "<group>"; };
    74737496                4367088212D9CA4A00044234 /* RenderSVGBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGBlock.h; sourceTree = "<group>"; };
     
    1477514798                                8502AB210AD438C000378540 /* DOMSVGFEDistantLightElement.mm */,
    1477614799                                A8E544790CA9D1C20097D09B /* DOMSVGFEDistantLightElementInternal.h */,
     14800                                4358E8671360A21600E4748C /* DOMSVGFEDropShadowElement.h */,
     14801                                4358E8681360A21600E4748C /* DOMSVGFEDropShadowElement.mm */,
     14802                                4358E8691360A21600E4748C /* DOMSVGFEDropShadowElementInternal.h */,
    1477714803                                8502AB220AD438C000378540 /* DOMSVGFEFloodElement.h */,
    1477814804                                8502AB230AD438C000378540 /* DOMSVGFEFloodElement.mm */,
     
    1638916415                                84730D5F1248F0B300D3A9C9 /* FEDisplacementMap.cpp */,
    1639016416                                84730D601248F0B300D3A9C9 /* FEDisplacementMap.h */,
     16417                                4358E87E1360A31700E4748C /* FEDropShadow.cpp */,
     16418                                4358E87F1360A31700E4748C /* FEDropShadow.h */,
    1639116419                                84730D611248F0B300D3A9C9 /* FEFlood.cpp */,
    1639216420                                84730D621248F0B300D3A9C9 /* FEFlood.h */,
     
    1674816776                                B2FA3C8E0AB75A6E000E5AC4 /* JSSVGFEDistantLightElement.cpp */,
    1674916777                                B2FA3C8F0AB75A6E000E5AC4 /* JSSVGFEDistantLightElement.h */,
     16778                                4358E87A1360A2EE00E4748C /* JSSVGFEDropShadowElement.cpp */,
     16779                                4358E87B1360A2EE00E4748C /* JSSVGFEDropShadowElement.h */,
    1675016780                                B2FA3C900AB75A6E000E5AC4 /* JSSVGFEFloodElement.cpp */,
    1675116781                                B2FA3C910AB75A6E000E5AC4 /* JSSVGFEFloodElement.h */,
     
    1740617436                                B22278440D00BF1F0071B782 /* SVGFEDistantLightElement.h */,
    1740717437                                B22278450D00BF1F0071B782 /* SVGFEDistantLightElement.idl */,
     17438                                4358E8821360A33B00E4748C /* SVGFEDropShadowElement.cpp */,
     17439                                4358E8831360A33B00E4748C /* SVGFEDropShadowElement.h */,
     17440                                4358E8841360A33B00E4748C /* SVGFEDropShadowElement.idl */,
    1740817441                                B22278460D00BF1F0071B782 /* SVGFEFloodElement.cpp */,
    1740917442                                B22278470D00BF1F0071B782 /* SVGFEFloodElement.h */,
     
    2302323056                                0873B86B136064EA00A522C2 /* GlyphPage.h in Headers */,
    2302423057                                087E0AF713606D0B00FA4BA8 /* SVGGlyph.h in Headers */,
     23058                                4358E86A1360A21600E4748C /* DOMSVGFEDropShadowElement.h in Headers */,
     23059                                4358E86C1360A21600E4748C /* DOMSVGFEDropShadowElementInternal.h in Headers */,
     23060                                4358E87D1360A2EE00E4748C /* JSSVGFEDropShadowElement.h in Headers */,
     23061                                4358E8811360A31700E4748C /* FEDropShadow.h in Headers */,
     23062                                4358E8861360A33B00E4748C /* SVGFEDropShadowElement.h in Headers */,
    2302523063                        );
    2302623064                        runOnlyForDeploymentPostprocessing = 0;
     
    2573325771                                977E2E0E12F0FC9C00C13379 /* XSSFilter.cpp in Sources */,
    2573425772                                087E0AF613606D0B00FA4BA8 /* SVGGlyph.cpp in Sources */,
     25773                                4358E86B1360A21600E4748C /* DOMSVGFEDropShadowElement.mm in Sources */,
     25774                                4358E87C1360A2EE00E4748C /* JSSVGFEDropShadowElement.cpp in Sources */,
     25775                                4358E8801360A31700E4748C /* FEDropShadow.cpp in Sources */,
     25776                                4358E8851360A33B00E4748C /* SVGFEDropShadowElement.cpp in Sources */,
    2573525777                        );
    2573625778                        runOnlyForDeploymentPostprocessing = 0;
  • trunk/Source/WebCore/bindings/objc/DOM.mm

    r84520 r84522  
    170170    addElementClass(SVGNames::feDisplacementMapTag, [DOMSVGFEDisplacementMapElement class]);
    171171    addElementClass(SVGNames::feDistantLightTag, [DOMSVGFEDistantLightElement class]);
     172    addElementClass(SVGNames::feDropShadowTag, [DOMSVGFEDropShadowElement class]);
    172173    addElementClass(SVGNames::feFloodTag, [DOMSVGFEFloodElement class]);
    173174    addElementClass(SVGNames::feFuncATag, [DOMSVGFEFuncAElement class]);
  • trunk/Source/WebCore/bindings/objc/DOMSVG.h

    r72443 r84522  
    6666#import <WebCore/DOMSVGFEDisplacementMapElement.h>
    6767#import <WebCore/DOMSVGFEDistantLightElement.h>
     68#import <WebCore/DOMSVGFEDropShadowElement.h>
    6869#import <WebCore/DOMSVGFEFloodElement.h>
    6970#import <WebCore/DOMSVGFEFuncAElement.h>
  • trunk/Source/WebCore/page/DOMWindow.idl

    r84247 r84522  
    754754        attribute SVGFEDisplacementMapElementConstructor SVGFEDisplacementMapElement;
    755755        attribute SVGFEDistantLightElementConstructor SVGFEDistantLightElement;
     756        attribute SVGFEDropShadowElementConstructor SVGFEDropShadowElement;
    756757        attribute SVGFEFloodElementConstructor SVGFEFloodElement;
    757758        attribute SVGFEFuncAElementConstructor SVGFEFuncAElement;
  • trunk/Source/WebCore/platform/graphics/ShadowBlur.cpp

    r84504 r84522  
    11/*
    2  * Copyright (C) 2011 Apple Inc.
    3  * Copyright (C) 2010 Sencha, Inc.
    4  * Copyright (C) 2010 Igalia S.L.
    5  * All rights reserved.
     2 * Copyright (C) 2011 Apple Inc. All rights reserved.
     3 * Copyright (C) 2010 Sencha, Inc. All rights reserved.
     4 * Copyright (C) 2010 Igalia S.L. All rights reserved.
     5 * Copyright (C) Research In Motion Limited 2011. All rights reserved.
    66 *
    77 * Redistribution and use in source and binary forms, with or without
  • trunk/Source/WebCore/platform/graphics/ShadowBlur.h

    r84410 r84522  
    5353    void drawInsetShadow(GraphicsContext*, const FloatRect&, const FloatRect& holeRect, const RoundedIntRect::Radii& holeRadii);
    5454
     55    void blurLayerImage(unsigned char*, const IntSize&, int stride);
     56
    5557private:
    5658    void drawShadowBuffer(GraphicsContext*);
    5759
    5860    void adjustBlurRadius(GraphicsContext*);
    59     void blurLayerImage(unsigned char*, const IntSize&, int stride);
    6061   
    6162    enum ShadowDirection {
  • trunk/Source/WebCore/platform/graphics/filters/FEGaussianBlur.cpp

    r75377 r84522  
    130130}
    131131
    132 inline void calculateKernelSize(Filter* filter, unsigned& kernelSizeX, unsigned& kernelSizeY, float stdX, float stdY)
     132void FEGaussianBlur::calculateKernelSize(Filter* filter, unsigned& kernelSizeX, unsigned& kernelSizeY, float stdX, float stdY)
    133133{
    134134    stdX = filter->applyHorizontalScale(stdX);
  • trunk/Source/WebCore/platform/graphics/filters/FEGaussianBlur.h

    r72474 r84522  
    4848    virtual TextStream& externalRepresentation(TextStream&, int indention) const;
    4949
     50    static void calculateKernelSize(Filter*, unsigned& kernelSizeX, unsigned& kernelSizeY, float stdX, float stdY);
     51
    5052private:
    5153    FEGaussianBlur(Filter*, float, float);
  • trunk/Source/WebCore/svg/SVGAllInOne.cpp

    r74782 r84522  
    5757#include "SVGFEDisplacementMapElement.cpp"
    5858#include "SVGFEDistantLightElement.cpp"
     59#include "SVGFEDropShadowElement.cpp"
    5960#include "SVGFEFloodElement.cpp"
    6061#include "SVGFEFuncAElement.cpp"
  • trunk/Source/WebCore/svg/svgtags.in

    r66362 r84522  
    3636feDisplacementMap
    3737feDistantLight
     38feDropShadow
    3839feFlood
    3940feFuncA
  • trunk/Source/WebKit/mac/ChangeLog

    r84472 r84522  
     12011-04-21  Dirk Schulze  <krit@webkit.org>
     2
     3        Reviewed by Nikolas Zimmermann.
     4
     5        SVG feDropShadow implementation of SVG Filters 1.2
     6        https://bugs.webkit.org/show_bug.cgi?id=52513
     7
     8        * MigrateHeaders.make:
     9
    1102011-04-20  Dominic Cooney  <dominicc@chromium.org>
    211
  • trunk/Source/WebKit/mac/MigrateHeaders.make

    r75974 r84522  
    276276    $(PRIVATE_HEADERS_DIR)/DOMSVGFEDistantLightElement.h \
    277277    $(INTERNAL_HEADERS_DIR)/DOMSVGFEDistantLightElementInternal.h \
     278    $(PRIVATE_HEADERS_DIR)/DOMSVGFEDropShadowElement.h \
     279    $(INTERNAL_HEADERS_DIR)/DOMSVGFEDropShadowElementInternal.h \
    278280    $(PRIVATE_HEADERS_DIR)/DOMSVGFEFloodElement.h \
    279281    $(INTERNAL_HEADERS_DIR)/DOMSVGFEFloodElementInternal.h \
Note: See TracChangeset for help on using the changeset viewer.