Changeset 49441 in webkit


Ignore:
Timestamp:
Oct 12, 2009 8:26:53 AM (15 years ago)
Author:
krit@webkit.org
Message:

2009-10-12 Cameron McCormack <cam@mcc.id.au>

Reviewed by Eric Seidel.

Drop in="" from <feFlood>
https://bugs.webkit.org/show_bug.cgi?id=29001

This makes <feFlood in="bogus"> have an effect, too.

http://www.w3.org/2003/01/REC-SVG11-20030114-errata#feflood-attribute

Test: svg/dom/feFlood-no-in1.html

  • svg/SVGFEFloodElement.cpp: (WebCore::SVGFEFloodElement::SVGFEFloodElement): (WebCore::SVGFEFloodElement::build):
  • svg/SVGFEFloodElement.h:
  • svg/SVGFEFloodElement.idl:
  • svg/graphics/filters/SVGFEFlood.cpp: (WebCore::FEFlood::FEFlood): (WebCore::FEFlood::create):
  • svg/graphics/filters/SVGFEFlood.h:

LayoutTest:

Drop in="" from <feFlood>
https://bugs.webkit.org/show_bug.cgi?id=29001

This makes <feFlood in="bogus"> have an effect, too.

http://www.w3.org/2003/01/REC-SVG11-20030114-errata#feflood-attribute

  • svg/dom/feFlood-no-in1-expected.txt: Added.
  • svg/dom/feFlood-no-in1.html: Added.
  • svg/dom/script-tests/feFlood-no-in1.js: Added.
Location:
trunk
Files:
3 added
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r49434 r49441  
     12009-10-12  Cameron McCormack  <cam@mcc.id.au>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Drop in="" from <feFlood>
     6        https://bugs.webkit.org/show_bug.cgi?id=29001
     7
     8        This makes <feFlood in="bogus"> have an effect, too.
     9
     10        http://www.w3.org/2003/01/REC-SVG11-20030114-errata#feflood-attribute
     11
     12        * svg/dom/feFlood-no-in1-expected.txt: Added.
     13        * svg/dom/feFlood-no-in1.html: Added.
     14        * svg/dom/script-tests/feFlood-no-in1.js: Added.
     15
    1162009-10-11  Daniel Bates  <dbates@webkit.org>
    217
  • trunk/WebCore/ChangeLog

    r49439 r49441  
     12009-10-12  Cameron McCormack  <cam@mcc.id.au>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Drop in="" from <feFlood>
     6        https://bugs.webkit.org/show_bug.cgi?id=29001
     7
     8        This makes <feFlood in="bogus"> have an effect, too.
     9
     10        http://www.w3.org/2003/01/REC-SVG11-20030114-errata#feflood-attribute
     11
     12        Test: svg/dom/feFlood-no-in1.html
     13
     14        * svg/SVGFEFloodElement.cpp:
     15        (WebCore::SVGFEFloodElement::SVGFEFloodElement):
     16        (WebCore::SVGFEFloodElement::build):
     17        * svg/SVGFEFloodElement.h:
     18        * svg/SVGFEFloodElement.idl:
     19        * svg/graphics/filters/SVGFEFlood.cpp:
     20        (WebCore::FEFlood::FEFlood):
     21        (WebCore::FEFlood::create):
     22        * svg/graphics/filters/SVGFEFlood.h:
     23
    1242009-10-12  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
    225
  • trunk/WebCore/svg/SVGFEFloodElement.cpp

    r45747 r49441  
    3535SVGFEFloodElement::SVGFEFloodElement(const QualifiedName& tagName, Document* doc)
    3636    : SVGFilterPrimitiveStandardAttributes(tagName, doc)
    37     , m_in1(this, SVGNames::inAttr)
    3837{
    3938}
     
    4342}
    4443
    45 void SVGFEFloodElement::parseMappedAttribute(MappedAttribute* attr)
    46 {
    47     const String& value = attr->value();
    48     if (attr->name() == SVGNames::inAttr)
    49         setIn1BaseValue(value);
    50     else
    51         SVGFilterPrimitiveStandardAttributes::parseMappedAttribute(attr);
    52 }
    53 
    5444bool SVGFEFloodElement::build(SVGResourceFilter* filterResource)
    5545{
    56     FilterEffect* input = filterResource->builder()->getEffectById(in1());
    57 
    58     if (!input)
    59         return false;
    60 
    6146    RefPtr<RenderStyle> filterStyle = styleForRenderer();
    6247
     
    6449    float opacity = filterStyle->svgStyle()->floodOpacity();
    6550
    66     RefPtr<FilterEffect> effect = FEFlood::create(input, color, opacity);
     51    RefPtr<FilterEffect> effect = FEFlood::create(color, opacity);
    6752    filterResource->addFilterEffect(this, effect.release());
    6853   
     
    7257}
    7358
    74 #endif // ENABLE(SVG)
     59#endif // ENABLE(SVG) && ENABLE(FILTERS)
    7560
    7661// vim:ts=4:noet
  • trunk/WebCore/svg/SVGFEFloodElement.h

    r45747 r49441  
    3434        virtual ~SVGFEFloodElement();
    3535
    36         virtual void parseMappedAttribute(MappedAttribute*);
    3736        virtual bool build(SVGResourceFilter*);
    38 
    39     private:
    40         ANIMATED_PROPERTY_DECLARATIONS(SVGFEFloodElement, SVGNames::feFloodTagString, SVGNames::inAttrString, String, In1, in1)
    4137    };
    4238
    4339} // namespace WebCore
    4440
    45 #endif // ENABLE(SVG)
     41#endif // ENABLE(SVG) && ENABLE(FILTERS)
    4642#endif
  • trunk/WebCore/svg/SVGFEFloodElement.idl

    r44297 r49441  
    2828    interface [Conditional=SVG&FILTERS, GenerateConstructor] SVGFEFloodElement : SVGElement,
    2929                                                    SVGFilterPrimitiveStandardAttributes {
    30 
    31         readonly attribute SVGAnimatedString      in1;
    32 
    3330    };
    3431}
  • trunk/WebCore/svg/graphics/filters/SVGFEFlood.cpp

    r44810 r49441  
    3232namespace WebCore {
    3333
    34 FEFlood::FEFlood(FilterEffect* in, const Color& floodColor, const float& floodOpacity)
     34FEFlood::FEFlood(const Color& floodColor, const float& floodOpacity)
    3535    : FilterEffect()
    36     , m_in(in)
    3736    , m_floodColor(floodColor)
    3837    , m_floodOpacity(floodOpacity)
     
    4039}
    4140
    42 PassRefPtr<FEFlood> FEFlood::create(FilterEffect* in, const Color& floodColor, const float& floodOpacity)
     41PassRefPtr<FEFlood> FEFlood::create(const Color& floodColor, const float& floodOpacity)
    4342{
    44     return adoptRef(new FEFlood(in, floodColor, floodOpacity));
     43    return adoptRef(new FEFlood(floodColor, floodOpacity));
    4544}
    4645
  • trunk/WebCore/svg/graphics/filters/SVGFEFlood.h

    r44297 r49441  
    3232    class FEFlood : public FilterEffect {
    3333    public:
    34         static PassRefPtr<FEFlood> create(FilterEffect*, const Color&, const float&);
     34        static PassRefPtr<FEFlood> create(const Color&, const float&);
    3535
    3636        Color floodColor() const;
     
    4545
    4646    private:
    47         FEFlood(FilterEffect*, const Color&, const float&);
     47        FEFlood(const Color&, const float&);
    4848
    49         RefPtr<FilterEffect> m_in;
    5049        Color m_floodColor;
    5150        float m_floodOpacity;
Note: See TracChangeset for help on using the changeset viewer.