| Index: Source/core/svg/SVGFECompositeElement.cpp
|
| diff --git a/Source/core/svg/SVGFECompositeElement.cpp b/Source/core/svg/SVGFECompositeElement.cpp
|
| index 372ab658e47f3ccc45888cea976062777bcbb05b..62faa232d2bf9fc29db908a3add28fd6103c59d8 100644
|
| --- a/Source/core/svg/SVGFECompositeElement.cpp
|
| +++ b/Source/core/svg/SVGFECompositeElement.cpp
|
| @@ -30,13 +30,9 @@
|
| namespace WebCore {
|
|
|
| // Animated property definitions
|
| -DEFINE_ANIMATED_STRING(SVGFECompositeElement, SVGNames::inAttr, In1, in1)
|
| -DEFINE_ANIMATED_STRING(SVGFECompositeElement, SVGNames::in2Attr, In2, in2)
|
| DEFINE_ANIMATED_ENUMERATION(SVGFECompositeElement, SVGNames::operatorAttr, SVGOperator, svgOperator, CompositeOperationType)
|
|
|
| BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGFECompositeElement)
|
| - REGISTER_LOCAL_ANIMATED_PROPERTY(in1)
|
| - REGISTER_LOCAL_ANIMATED_PROPERTY(in2)
|
| REGISTER_LOCAL_ANIMATED_PROPERTY(svgOperator)
|
| REGISTER_PARENT_ANIMATED_PROPERTIES(SVGFilterPrimitiveStandardAttributes)
|
| END_REGISTER_ANIMATED_PROPERTIES
|
| @@ -47,6 +43,8 @@ inline SVGFECompositeElement::SVGFECompositeElement(Document& document)
|
| , m_k2(SVGAnimatedNumber::create(this, SVGNames::k2Attr, SVGNumber::create()))
|
| , m_k3(SVGAnimatedNumber::create(this, SVGNames::k3Attr, SVGNumber::create()))
|
| , m_k4(SVGAnimatedNumber::create(this, SVGNames::k4Attr, SVGNumber::create()))
|
| + , m_in1(SVGAnimatedString::create(this, SVGNames::inAttr, SVGString::create()))
|
| + , m_in2(SVGAnimatedString::create(this, SVGNames::in2Attr, SVGString::create()))
|
| , m_svgOperator(FECOMPOSITE_OPERATOR_OVER)
|
| {
|
| ScriptWrappable::init(this);
|
| @@ -55,6 +53,8 @@ inline SVGFECompositeElement::SVGFECompositeElement(Document& document)
|
| addToPropertyMap(m_k2);
|
| addToPropertyMap(m_k3);
|
| addToPropertyMap(m_k4);
|
| + addToPropertyMap(m_in1);
|
| + addToPropertyMap(m_in2);
|
| registerAnimatedPropertiesForSVGFECompositeElement();
|
| }
|
|
|
| @@ -92,19 +92,13 @@ void SVGFECompositeElement::parseAttribute(const QualifiedName& name, const Atom
|
| return;
|
| }
|
|
|
| - if (name == SVGNames::inAttr) {
|
| - setIn1BaseValue(value);
|
| - return;
|
| - }
|
| -
|
| - if (name == SVGNames::in2Attr) {
|
| - setIn2BaseValue(value);
|
| - return;
|
| - }
|
| -
|
| SVGParsingError parseError = NoError;
|
|
|
| - if (name == SVGNames::k1Attr)
|
| + if (name == SVGNames::inAttr)
|
| + m_in1->setBaseValueAsString(value, parseError);
|
| + else if (name == SVGNames::in2Attr)
|
| + m_in2->setBaseValueAsString(value, parseError);
|
| + else if (name == SVGNames::k1Attr)
|
| m_k1->setBaseValueAsString(value, parseError);
|
| else if (name == SVGNames::k2Attr)
|
| m_k2->setBaseValueAsString(value, parseError);
|
| @@ -165,8 +159,8 @@ void SVGFECompositeElement::svgAttributeChanged(const QualifiedName& attrName)
|
|
|
| PassRefPtr<FilterEffect> SVGFECompositeElement::build(SVGFilterBuilder* filterBuilder, Filter* filter)
|
| {
|
| - FilterEffect* input1 = filterBuilder->getEffectById(AtomicString(in1CurrentValue()));
|
| - FilterEffect* input2 = filterBuilder->getEffectById(AtomicString(in2CurrentValue()));
|
| + FilterEffect* input1 = filterBuilder->getEffectById(AtomicString(m_in1->currentValue()->value()));
|
| + FilterEffect* input2 = filterBuilder->getEffectById(AtomicString(m_in2->currentValue()->value()));
|
|
|
| if (!input1 || !input2)
|
| return 0;
|
|
|