Changeset 71908 in webkit


Ignore:
Timestamp:
Nov 12, 2010 5:52:42 AM (13 years ago)
Author:
reni@webkit.org
Message:

WebCore: SVGFEDisplacementMapElement doesn't support dynamic invalidation
https://bugs.webkit.org/show_bug.cgi?id=49430

Patch by Renata Hodovan <reni@webkit.org> on 2010-11-12
Reviewed by Nikolas Zimmermann.

The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.

Tests: svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html

svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html
svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html
svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html
svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html
svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html
svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html
svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html
svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html
svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html

  • svg/SVGFEDisplacementMapElement.cpp:

(WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):

  • svg/SVGFEDisplacementMapElement.h:

LayoutTests: SVGFEDisplacementMapElement doesn't support dynamic invalidation, when attributes change.
https://bugs.webkit.org/show_bug.cgi?id=49430

Patch by Renata Hodovan <reni@webkit.org> on 2010-11-12
Reviewed by Nikolas Zimmermann.

Adding layout tests for feDisplacementMap dynamic changes.

  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html: Added.
  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-in-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-in2-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-scale-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-in-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-in2-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-scale-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.js: Added.

(executeTest):

Location:
trunk
Files:
50 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r71901 r71908  
     12010-11-12  Renata Hodovan  <reni@webkit.org>
     2
     3        Reviewed by Nikolas Zimmermann.
     4
     5        SVGFEDisplacementMapElement doesn't support dynamic invalidation, when attributes change.
     6        https://bugs.webkit.org/show_bug.cgi?id=49430
     7
     8        Adding layout tests for feDisplacementMap dynamic changes.
     9
     10        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.checksum: Added.
     11        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png: Added.
     12        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.checksum: Added.
     13        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png: Added.
     14        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.checksum: Added.
     15        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png: Added.
     16        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.checksum: Added.
     17        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png: Added.
     18        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.checksum: Added.
     19        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png: Added.
     20        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.checksum: Added.
     21        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png: Added.
     22        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.checksum: Added.
     23        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png: Added.
     24        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.checksum: Added.
     25        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png: Added.
     26        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.checksum: Added.
     27        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png: Added.
     28        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.checksum: Added.
     29        * platform/mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png: Added.
     30        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.txt: Added.
     31        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html: Added.
     32        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.txt: Added.
     33        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html: Added.
     34        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.txt: Added.
     35        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html: Added.
     36        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.txt: Added.
     37        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html: Added.
     38        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.txt: Added.
     39        * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html: Added.
     40        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.txt: Added.
     41        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html: Added.
     42        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.txt: Added.
     43        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html: Added.
     44        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.txt: Added.
     45        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html: Added.
     46        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.txt: Added.
     47        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html: Added.
     48        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.txt: Added.
     49        * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html: Added.
     50        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-in-attr.js: Added.
     51        (executeTest):
     52        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-in2-attr.js: Added.
     53        (executeTest):
     54        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-scale-attr.js: Added.
     55        (executeTest):
     56        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.js: Added.
     57        (executeTest):
     58        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.js: Added.
     59        (executeTest):
     60        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-in-prop.js: Added.
     61        (executeTest):
     62        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-in2-prop.js: Added.
     63        (executeTest):
     64        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-scale-prop.js: Added.
     65        (executeTest):
     66        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.js: Added.
     67        (executeTest):
     68        * svg/dynamic-updates/script-tests/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.js: Added.
     69        (executeTest):
     70
    1712010-11-12  Marcus Bulach  <bulach@chromium.org>
    272
  • trunk/WebCore/ChangeLog

    r71906 r71908  
     12010-11-12  Renata Hodovan  <reni@webkit.org>
     2
     3        Reviewed by Nikolas Zimmermann.
     4
     5        SVGFEDisplacementMapElement doesn't support dynamic invalidation
     6        https://bugs.webkit.org/show_bug.cgi?id=49430
     7
     8        The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary.
     9
     10        Tests: svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html
     11               svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html
     12               svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html
     13               svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html
     14               svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html
     15               svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html
     16               svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html
     17               svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html
     18               svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html
     19               svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html
     20
     21        * svg/SVGFEDisplacementMapElement.cpp:
     22        (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
     23        * svg/SVGFEDisplacementMapElement.h:
     24
    1252010-11-12  Andrey Kosyakov  <caseq@chromium.org>
    226
  • trunk/WebCore/svg/SVGFEDisplacementMapElement.cpp

    r67847 r71908  
    7070}
    7171
     72void SVGFEDisplacementMapElement::svgAttributeChanged(const QualifiedName& attrName)
     73{
     74    SVGFilterPrimitiveStandardAttributes::svgAttributeChanged(attrName);
     75
     76    if (attrName == SVGNames::xChannelSelectorAttr
     77        || attrName == SVGNames::yChannelSelectorAttr
     78        || attrName == SVGNames::inAttr
     79        || attrName == SVGNames::in2Attr
     80        || attrName == SVGNames::scaleAttr)
     81        invalidate();
     82}
     83
    7284void SVGFEDisplacementMapElement::synchronizeProperty(const QualifiedName& attrName)
    7385{
  • trunk/WebCore/svg/SVGFEDisplacementMapElement.h

    r71227 r71908  
    3737   
    3838    virtual void parseMappedAttribute(Attribute*);
     39    virtual void svgAttributeChanged(const QualifiedName&);
    3940    virtual void synchronizeProperty(const QualifiedName&);
    4041    virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*);
Note: See TracChangeset for help on using the changeset viewer.