OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Nikolas Zimmermann | 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Nikolas Zimmermann |
3 * <zimmermann@kde.org> | 3 * <zimmermann@kde.org> |
4 * Copyright (C) 2004, 2005, 2006, 2008 Rob Buis <buis@kde.org> | 4 * Copyright (C) 2004, 2005, 2006, 2008 Rob Buis <buis@kde.org> |
5 * Copyright (C) 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2008 Apple Inc. All rights reserved. |
6 * Copyright (C) 2008 Alp Toker <alp@atoker.com> | 6 * Copyright (C) 2008 Alp Toker <alp@atoker.com> |
7 * Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> | 7 * Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 15 matching lines...) Expand all Loading... |
26 | 26 |
27 #include "bindings/core/v8/ScriptEventListener.h" | 27 #include "bindings/core/v8/ScriptEventListener.h" |
28 #include "core/HTMLNames.h" | 28 #include "core/HTMLNames.h" |
29 #include "core/SVGNames.h" | 29 #include "core/SVGNames.h" |
30 #include "core/XMLNames.h" | 30 #include "core/XMLNames.h" |
31 #include "core/animation/DocumentAnimations.h" | 31 #include "core/animation/DocumentAnimations.h" |
32 #include "core/animation/EffectStack.h" | 32 #include "core/animation/EffectStack.h" |
33 #include "core/animation/ElementAnimations.h" | 33 #include "core/animation/ElementAnimations.h" |
34 #include "core/animation/InterpolationEnvironment.h" | 34 #include "core/animation/InterpolationEnvironment.h" |
35 #include "core/animation/InvalidatableInterpolation.h" | 35 #include "core/animation/InvalidatableInterpolation.h" |
| 36 #include "core/animation/SVGInterpolationTypesMap.h" |
36 #include "core/css/CSSCursorImageValue.h" | 37 #include "core/css/CSSCursorImageValue.h" |
37 #include "core/css/resolver/StyleResolver.h" | 38 #include "core/css/resolver/StyleResolver.h" |
38 #include "core/dom/Document.h" | 39 #include "core/dom/Document.h" |
39 #include "core/dom/ElementTraversal.h" | 40 #include "core/dom/ElementTraversal.h" |
40 #include "core/dom/shadow/ShadowRoot.h" | 41 #include "core/dom/shadow/ShadowRoot.h" |
41 #include "core/events/Event.h" | 42 #include "core/events/Event.h" |
42 #include "core/frame/Settings.h" | 43 #include "core/frame/Settings.h" |
43 #include "core/html/HTMLElement.h" | 44 #include "core/html/HTMLElement.h" |
44 #include "core/layout/LayoutObject.h" | 45 #include "core/layout/LayoutObject.h" |
45 #include "core/layout/svg/LayoutSVGResourceContainer.h" | 46 #include "core/layout/svg/LayoutSVGResourceContainer.h" |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 return propertyHandle.isSVGAttribute(); | 228 return propertyHandle.isSVGAttribute(); |
228 } | 229 } |
229 | 230 |
230 void SVGElement::applyActiveWebAnimations() { | 231 void SVGElement::applyActiveWebAnimations() { |
231 ActiveInterpolationsMap activeInterpolationsMap = | 232 ActiveInterpolationsMap activeInterpolationsMap = |
232 EffectStack::activeInterpolations( | 233 EffectStack::activeInterpolations( |
233 &elementAnimations()->effectStack(), nullptr, nullptr, | 234 &elementAnimations()->effectStack(), nullptr, nullptr, |
234 KeyframeEffectReadOnly::DefaultPriority, isSVGAttributeHandle); | 235 KeyframeEffectReadOnly::DefaultPriority, isSVGAttributeHandle); |
235 for (auto& entry : activeInterpolationsMap) { | 236 for (auto& entry : activeInterpolationsMap) { |
236 const QualifiedName& attribute = entry.key.svgAttribute(); | 237 const QualifiedName& attribute = entry.key.svgAttribute(); |
| 238 SVGInterpolationTypesMap map; |
237 InterpolationEnvironment environment( | 239 InterpolationEnvironment environment( |
238 *this, propertyFromAttribute(attribute)->baseValueBase()); | 240 map, *this, propertyFromAttribute(attribute)->baseValueBase()); |
239 InvalidatableInterpolation::applyStack(entry.value, environment); | 241 InvalidatableInterpolation::applyStack(entry.value, environment); |
240 } | 242 } |
241 svgRareData()->setWebAnimatedAttributesDirty(false); | 243 svgRareData()->setWebAnimatedAttributesDirty(false); |
242 } | 244 } |
243 | 245 |
244 static inline void notifyAnimValChanged(SVGElement* targetElement, | 246 static inline void notifyAnimValChanged(SVGElement* targetElement, |
245 const QualifiedName& attributeName) { | 247 const QualifiedName& attributeName) { |
246 targetElement->invalidateSVGAttributes(); | 248 targetElement->invalidateSVGAttributes(); |
247 targetElement->svgAttributeChanged(attributeName); | 249 targetElement->svgAttributeChanged(attributeName); |
248 } | 250 } |
(...skipping 1054 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1303 visitor->trace(m_className); | 1305 visitor->trace(m_className); |
1304 Element::trace(visitor); | 1306 Element::trace(visitor); |
1305 } | 1307 } |
1306 | 1308 |
1307 const AtomicString& SVGElement::eventParameterName() { | 1309 const AtomicString& SVGElement::eventParameterName() { |
1308 DEFINE_STATIC_LOCAL(const AtomicString, evtString, ("evt")); | 1310 DEFINE_STATIC_LOCAL(const AtomicString, evtString, ("evt")); |
1309 return evtString; | 1311 return evtString; |
1310 } | 1312 } |
1311 | 1313 |
1312 } // namespace blink | 1314 } // namespace blink |
OLD | NEW |