OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> |
4 * | 4 * |
5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
9 * | 9 * |
10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
(...skipping 26 matching lines...) Expand all Loading... |
37 addToPropertyMap(m_x); | 37 addToPropertyMap(m_x); |
38 addToPropertyMap(m_y); | 38 addToPropertyMap(m_y); |
39 } | 39 } |
40 | 40 |
41 DEFINE_NODE_FACTORY(SVGCursorElement) | 41 DEFINE_NODE_FACTORY(SVGCursorElement) |
42 | 42 |
43 SVGCursorElement::~SVGCursorElement() | 43 SVGCursorElement::~SVGCursorElement() |
44 { | 44 { |
45 // The below teardown is all handled by weak pointer processing in oilpan. | 45 // The below teardown is all handled by weak pointer processing in oilpan. |
46 #if !ENABLE(OILPAN) | 46 #if !ENABLE(OILPAN) |
47 for (auto& client : m_clients) | 47 for (const auto& client : m_clients) |
48 client->cursorElementRemoved(); | 48 client->cursorElementRemoved(); |
49 #endif | 49 #endif |
50 } | 50 } |
51 | 51 |
52 bool SVGCursorElement::isSupportedAttribute(const QualifiedName& attrName) | 52 bool SVGCursorElement::isSupportedAttribute(const QualifiedName& attrName) |
53 { | 53 { |
54 DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, supportedAttributes, ()); | 54 DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, supportedAttributes, ()); |
55 if (supportedAttributes.isEmpty()) { | 55 if (supportedAttributes.isEmpty()) { |
56 SVGTests::addSupportedAttributes(supportedAttributes); | 56 SVGTests::addSupportedAttributes(supportedAttributes); |
57 SVGURIReference::addSupportedAttributes(supportedAttributes); | 57 SVGURIReference::addSupportedAttributes(supportedAttributes); |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 void SVGCursorElement::svgAttributeChanged(const QualifiedName& attrName) | 91 void SVGCursorElement::svgAttributeChanged(const QualifiedName& attrName) |
92 { | 92 { |
93 if (!isSupportedAttribute(attrName)) { | 93 if (!isSupportedAttribute(attrName)) { |
94 SVGElement::svgAttributeChanged(attrName); | 94 SVGElement::svgAttributeChanged(attrName); |
95 return; | 95 return; |
96 } | 96 } |
97 | 97 |
98 SVGElement::InvalidationGuard invalidationGuard(this); | 98 SVGElement::InvalidationGuard invalidationGuard(this); |
99 | 99 |
100 // Any change of a cursor specific attribute triggers this recalc. | 100 // Any change of a cursor specific attribute triggers this recalc. |
101 for (auto& client : m_clients) | 101 for (const auto& client : m_clients) |
102 client->setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTrac
ing::create(StyleChangeReason::SVGCursor)); | 102 client->setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTrac
ing::create(StyleChangeReason::SVGCursor)); |
103 } | 103 } |
104 | 104 |
105 void SVGCursorElement::trace(Visitor* visitor) | 105 void SVGCursorElement::trace(Visitor* visitor) |
106 { | 106 { |
107 #if ENABLE(OILPAN) | 107 #if ENABLE(OILPAN) |
108 visitor->trace(m_clients); | 108 visitor->trace(m_clients); |
109 #endif | 109 #endif |
110 SVGElement::trace(visitor); | 110 SVGElement::trace(visitor); |
111 } | 111 } |
112 | 112 |
113 } // namespace blink | 113 } // namespace blink |
OLD | NEW |