OLD | NEW |
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 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 ASSERT(targetElement); | 220 ASSERT(targetElement); |
221 if (attributeName == anyQName() || !targetElement->inDocument() || !targetEl
ement->parentNode()) | 221 if (attributeName == anyQName() || !targetElement->inDocument() || !targetEl
ement->parentNode()) |
222 return; | 222 return; |
223 | 223 |
224 CSSPropertyID id = cssPropertyID(attributeName.localName()); | 224 CSSPropertyID id = cssPropertyID(attributeName.localName()); |
225 | 225 |
226 SVGElement::InstanceUpdateBlocker blocker(targetElement); | 226 SVGElement::InstanceUpdateBlocker blocker(targetElement); |
227 applyCSSPropertyToTarget(targetElement, id, valueAsString); | 227 applyCSSPropertyToTarget(targetElement, id, valueAsString); |
228 | 228 |
229 // If the target element has instances, update them as well, w/o requiring t
he <use> tree to be rebuilt. | 229 // If the target element has instances, update them as well, w/o requiring t
he <use> tree to be rebuilt. |
230 const WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement> >& instances = ta
rgetElement->instancesForElement(); | 230 const WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement>>& instances = tar
getElement->instancesForElement(); |
231 for (SVGElement* shadowTreeElement : instances) { | 231 for (SVGElement* shadowTreeElement : instances) { |
232 if (shadowTreeElement) | 232 if (shadowTreeElement) |
233 applyCSSPropertyToTarget(shadowTreeElement, id, valueAsString); | 233 applyCSSPropertyToTarget(shadowTreeElement, id, valueAsString); |
234 } | 234 } |
235 } | 235 } |
236 | 236 |
237 static inline void removeCSSPropertyFromTargetAndInstances(SVGElement* targetEle
ment, const QualifiedName& attributeName) | 237 static inline void removeCSSPropertyFromTargetAndInstances(SVGElement* targetEle
ment, const QualifiedName& attributeName) |
238 { | 238 { |
239 ASSERT(targetElement); | 239 ASSERT(targetElement); |
240 if (attributeName == anyQName() || !targetElement->inDocument() || !targetEl
ement->parentNode()) | 240 if (attributeName == anyQName() || !targetElement->inDocument() || !targetEl
ement->parentNode()) |
241 return; | 241 return; |
242 | 242 |
243 CSSPropertyID id = cssPropertyID(attributeName.localName()); | 243 CSSPropertyID id = cssPropertyID(attributeName.localName()); |
244 | 244 |
245 SVGElement::InstanceUpdateBlocker blocker(targetElement); | 245 SVGElement::InstanceUpdateBlocker blocker(targetElement); |
246 removeCSSPropertyFromTarget(targetElement, id); | 246 removeCSSPropertyFromTarget(targetElement, id); |
247 | 247 |
248 // If the target element has instances, update them as well, w/o requiring t
he <use> tree to be rebuilt. | 248 // If the target element has instances, update them as well, w/o requiring t
he <use> tree to be rebuilt. |
249 const WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement> >& instances = ta
rgetElement->instancesForElement(); | 249 const WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement>>& instances = tar
getElement->instancesForElement(); |
250 for (SVGElement* shadowTreeElement : instances) { | 250 for (SVGElement* shadowTreeElement : instances) { |
251 if (shadowTreeElement) | 251 if (shadowTreeElement) |
252 removeCSSPropertyFromTarget(shadowTreeElement, id); | 252 removeCSSPropertyFromTarget(shadowTreeElement, id); |
253 } | 253 } |
254 } | 254 } |
255 | 255 |
256 static inline void notifyTargetAboutAnimValChange(SVGElement* targetElement, con
st QualifiedName& attributeName) | 256 static inline void notifyTargetAboutAnimValChange(SVGElement* targetElement, con
st QualifiedName& attributeName) |
257 { | 257 { |
258 #if !ENABLE(OILPAN) | 258 #if !ENABLE(OILPAN) |
259 ASSERT_WITH_SECURITY_IMPLICATION(!targetElement->m_deletionHasBegun); | 259 ASSERT_WITH_SECURITY_IMPLICATION(!targetElement->m_deletionHasBegun); |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 { | 394 { |
395 visitor->trace(m_fromProperty); | 395 visitor->trace(m_fromProperty); |
396 visitor->trace(m_toProperty); | 396 visitor->trace(m_toProperty); |
397 visitor->trace(m_toAtEndOfDurationProperty); | 397 visitor->trace(m_toAtEndOfDurationProperty); |
398 visitor->trace(m_animatedProperty); | 398 visitor->trace(m_animatedProperty); |
399 visitor->trace(m_animator); | 399 visitor->trace(m_animator); |
400 SVGAnimationElement::trace(visitor); | 400 SVGAnimationElement::trace(visitor); |
401 } | 401 } |
402 | 402 |
403 } | 403 } |
OLD | NEW |