Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(392)

Side by Side Diff: Source/core/svg/SVGAnimateElement.cpp

Issue 137443006: Remove support for <animateColor>. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: test adjustments Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2005 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org>
4 * Copyright (C) 2008 Apple Inc. All rights reserved. 4 * Copyright (C) 2008 Apple Inc. All rights reserved.
5 * Copyright (C) Research In Motion Limited 2011. All rights reserved. 5 * Copyright (C) Research In Motion Limited 2011. All rights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 21 matching lines...) Expand all
32 #include "core/svg/SVGAnimatedTypeAnimator.h" 32 #include "core/svg/SVGAnimatedTypeAnimator.h"
33 #include "core/svg/SVGAnimatorFactory.h" 33 #include "core/svg/SVGAnimatorFactory.h"
34 #include "core/svg/SVGDocumentExtensions.h" 34 #include "core/svg/SVGDocumentExtensions.h"
35 35
36 namespace WebCore { 36 namespace WebCore {
37 37
38 SVGAnimateElement::SVGAnimateElement(const QualifiedName& tagName, Document& doc ument) 38 SVGAnimateElement::SVGAnimateElement(const QualifiedName& tagName, Document& doc ument)
39 : SVGAnimationElement(tagName, document) 39 : SVGAnimationElement(tagName, document)
40 , m_animatedPropertyType(AnimatedString) 40 , m_animatedPropertyType(AnimatedString)
41 { 41 {
42 ASSERT(hasTagName(SVGNames::animateTag) || hasTagName(SVGNames::setTag) || h asTagName(SVGNames::animateColorTag) || hasTagName(SVGNames::animateTransformTag )); 42 ASSERT(hasTagName(SVGNames::animateTag) || hasTagName(SVGNames::setTag) || h asTagName(SVGNames::animateTransformTag));
43 ScriptWrappable::init(this); 43 ScriptWrappable::init(this);
44 } 44 }
45 45
46 PassRefPtr<SVGAnimateElement> SVGAnimateElement::create(Document& document) 46 PassRefPtr<SVGAnimateElement> SVGAnimateElement::create(Document& document)
47 { 47 {
48 return adoptRef(new SVGAnimateElement(SVGNames::animateTag, document)); 48 return adoptRef(new SVGAnimateElement(SVGNames::animateTag, document));
49 } 49 }
50 50
51 SVGAnimateElement::~SVGAnimateElement() 51 SVGAnimateElement::~SVGAnimateElement()
52 { 52 {
(...skipping 14 matching lines...) Expand all
67 { 67 {
68 ASSERT(targetElement); 68 ASSERT(targetElement);
69 69
70 Vector<AnimatedPropertyType> propertyTypes; 70 Vector<AnimatedPropertyType> propertyTypes;
71 targetElement->animatedPropertyTypeForAttribute(attributeName(), propertyTyp es); 71 targetElement->animatedPropertyTypeForAttribute(attributeName(), propertyTyp es);
72 if (propertyTypes.isEmpty()) 72 if (propertyTypes.isEmpty())
73 return AnimatedUnknown; 73 return AnimatedUnknown;
74 74
75 ASSERT(propertyTypes.size() <= 2); 75 ASSERT(propertyTypes.size() <= 2);
76 AnimatedPropertyType type = propertyTypes[0]; 76 AnimatedPropertyType type = propertyTypes[0];
77 if (hasTagName(SVGNames::animateColorTag) && type != AnimatedColor)
78 return AnimatedUnknown;
79 77
80 // Animations of transform lists are not allowed for <animate> or <set> 78 // Animations of transform lists are not allowed for <animate> or <set>
81 // http://www.w3.org/TR/SVG/animate.html#AnimationAttributesAndProperties 79 // http://www.w3.org/TR/SVG/animate.html#AnimationAttributesAndProperties
82 if (type == AnimatedTransformList && !hasTagName(SVGNames::animateTransformT ag)) 80 if (type == AnimatedTransformList && !hasTagName(SVGNames::animateTransformT ag))
83 return AnimatedUnknown; 81 return AnimatedUnknown;
84 82
85 // Fortunately there's just one special case needed here: SVGMarkerElements orientAttr, which 83 // Fortunately there's just one special case needed here: SVGMarkerElements orientAttr, which
86 // corresponds to SVGAnimatedAngle orientAngle and SVGAnimatedEnumeration or ientType. We have to 84 // corresponds to SVGAnimatedAngle orientAngle and SVGAnimatedEnumeration or ientType. We have to
87 // figure out whose value to change here. 85 // figure out whose value to change here.
88 if (targetElement->hasTagName(SVGNames::markerTag) && type == AnimatedAngle) { 86 if (targetElement->hasTagName(SVGNames::markerTag) && type == AnimatedAngle) {
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 431
434 SVGAnimatedTypeAnimator* SVGAnimateElement::ensureAnimator() 432 SVGAnimatedTypeAnimator* SVGAnimateElement::ensureAnimator()
435 { 433 {
436 if (!m_animator) 434 if (!m_animator)
437 m_animator = SVGAnimatorFactory::create(this, targetElement(), m_animate dPropertyType); 435 m_animator = SVGAnimatorFactory::create(this, targetElement(), m_animate dPropertyType);
438 ASSERT(m_animatedPropertyType == m_animator->type()); 436 ASSERT(m_animatedPropertyType == m_animator->type());
439 return m_animator.get(); 437 return m_animator.get();
440 } 438 }
441 439
442 } 440 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698