Changeset 80022 in webkit
- Timestamp:
- Mar 1, 2011 12:15:20 PM (13 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r80015 r80022 1 2011-03-01 Renata Hodovan <reni@webkit.org> 2 3 Reviewed by Andreas Kling. 4 5 FEDisplacementMapElement changes doesn't require relayout 6 https://bugs.webkit.org/show_bug.cgi?id=55454 7 8 When the FEDisplacementMapElement receives an update message but the given value remains the same we don't need 9 to relayout the filter. 10 11 No new tests are needed because this modification is covered by the dynamic update tests of FEDisplacementMap. 12 13 * platform/graphics/filters/FEDisplacementMap.cpp: 14 (WebCore::FEDisplacementMap::setXChannelSelector): 15 (WebCore::FEDisplacementMap::setYChannelSelector): 16 (WebCore::FEDisplacementMap::setScale): 17 * platform/graphics/filters/FEDisplacementMap.h: 18 * svg/SVGFEDisplacementMapElement.cpp: 19 (WebCore::SVGFEDisplacementMapElement::setFilterEffectAttribute): 20 (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged): 21 * svg/SVGFEDisplacementMapElement.h: 22 1 23 2011-03-01 Dan Bernstein <mitz@apple.com> 2 24 -
trunk/Source/WebCore/platform/graphics/filters/FEDisplacementMap.cpp
r75377 r80022 55 55 } 56 56 57 voidFEDisplacementMap::setXChannelSelector(const ChannelSelectorType xChannelSelector)57 bool FEDisplacementMap::setXChannelSelector(const ChannelSelectorType xChannelSelector) 58 58 { 59 if (m_xChannelSelector == xChannelSelector) 60 return false; 59 61 m_xChannelSelector = xChannelSelector; 62 return true; 60 63 } 61 64 … … 65 68 } 66 69 67 voidFEDisplacementMap::setYChannelSelector(const ChannelSelectorType yChannelSelector)70 bool FEDisplacementMap::setYChannelSelector(const ChannelSelectorType yChannelSelector) 68 71 { 72 if (m_yChannelSelector == yChannelSelector) 73 return false; 69 74 m_yChannelSelector = yChannelSelector; 75 return true; 70 76 } 71 77 … … 75 81 } 76 82 77 voidFEDisplacementMap::setScale(float scale)83 bool FEDisplacementMap::setScale(float scale) 78 84 { 85 if (m_scale == scale) 86 return false; 79 87 m_scale = scale; 88 return true; 80 89 } 81 90 -
trunk/Source/WebCore/platform/graphics/filters/FEDisplacementMap.h
r72474 r80022 43 43 44 44 ChannelSelectorType xChannelSelector() const; 45 voidsetXChannelSelector(const ChannelSelectorType);45 bool setXChannelSelector(const ChannelSelectorType); 46 46 47 47 ChannelSelectorType yChannelSelector() const; 48 voidsetYChannelSelector(const ChannelSelectorType);48 bool setYChannelSelector(const ChannelSelectorType); 49 49 50 50 float scale() const; 51 void setScale(float scale);51 bool setScale(float); 52 52 53 53 virtual void apply(); -
trunk/Source/WebCore/svg/SVGFEDisplacementMapElement.cpp
r78345 r80022 80 80 } 81 81 82 bool SVGFEDisplacementMapElement::setFilterEffectAttribute(FilterEffect* effect, const QualifiedName& attrName) 83 { 84 FEDisplacementMap* displacementMap = static_cast<FEDisplacementMap*>(effect); 85 if (attrName == SVGNames::xChannelSelectorAttr) 86 return displacementMap->setXChannelSelector(static_cast<ChannelSelectorType>(xChannelSelector())); 87 if (attrName == SVGNames::yChannelSelectorAttr) 88 return displacementMap->setYChannelSelector(static_cast<ChannelSelectorType>(yChannelSelector())); 89 if (attrName == SVGNames::scaleAttr) 90 return displacementMap->setScale(scale()); 91 92 ASSERT_NOT_REACHED(); 93 return false; 94 } 95 82 96 void SVGFEDisplacementMapElement::svgAttributeChanged(const QualifiedName& attrName) 83 97 { … … 86 100 if (attrName == SVGNames::xChannelSelectorAttr 87 101 || attrName == SVGNames::yChannelSelectorAttr 88 || attrName == SVGNames::inAttr89 || attrName == SVGNames::in2Attr90 102 || attrName == SVGNames::scaleAttr) 103 primitiveAttributeChanged(attrName); 104 105 if (attrName == SVGNames::inAttr 106 || attrName == SVGNames::in2Attr) 91 107 invalidate(); 92 108 } -
trunk/Source/WebCore/svg/SVGFEDisplacementMapElement.h
r78249 r80022 39 39 40 40 virtual void parseMappedAttribute(Attribute*); 41 virtual bool setFilterEffectAttribute(FilterEffect*, const QualifiedName& attrName); 41 42 virtual void svgAttributeChanged(const QualifiedName&); 42 43 virtual void synchronizeProperty(const QualifiedName&);
Note: See TracChangeset
for help on using the changeset viewer.