OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2007 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> |
5 * Copyright (C) 2010 Apple Inc. All rights reserved. | 5 * Copyright (C) 2010 Apple Inc. 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 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 | 87 |
88 // Otherwise, use the title of this element. | 88 // Otherwise, use the title of this element. |
89 return SVGStyledElement::title(); | 89 return SVGStyledElement::title(); |
90 } | 90 } |
91 | 91 |
92 bool SVGAElement::isSupportedAttribute(const QualifiedName& attrName) | 92 bool SVGAElement::isSupportedAttribute(const QualifiedName& attrName) |
93 { | 93 { |
94 DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, supportedAttributes, ()); | 94 DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, supportedAttributes, ()); |
95 if (supportedAttributes.isEmpty()) { | 95 if (supportedAttributes.isEmpty()) { |
96 SVGURIReference::addSupportedAttributes(supportedAttributes); | 96 SVGURIReference::addSupportedAttributes(supportedAttributes); |
97 SVGLangSpace::addSupportedAttributes(supportedAttributes); | |
98 SVGExternalResourcesRequired::addSupportedAttributes(supportedAttributes
); | 97 SVGExternalResourcesRequired::addSupportedAttributes(supportedAttributes
); |
99 supportedAttributes.add(SVGNames::targetAttr); | 98 supportedAttributes.add(SVGNames::targetAttr); |
100 } | 99 } |
101 return supportedAttributes.contains<SVGAttributeHashTranslator>(attrName); | 100 return supportedAttributes.contains<SVGAttributeHashTranslator>(attrName); |
102 } | 101 } |
103 | 102 |
104 void SVGAElement::parseAttribute(const QualifiedName& name, const AtomicString&
value) | 103 void SVGAElement::parseAttribute(const QualifiedName& name, const AtomicString&
value) |
105 { | 104 { |
106 if (!isSupportedAttribute(name)) { | 105 if (!isSupportedAttribute(name)) { |
107 SVGGraphicsElement::parseAttribute(name, value); | 106 SVGGraphicsElement::parseAttribute(name, value); |
108 return; | 107 return; |
109 } | 108 } |
110 | 109 |
111 if (name == SVGNames::targetAttr) { | 110 if (name == SVGNames::targetAttr) { |
112 setSVGTargetBaseValue(value); | 111 setSVGTargetBaseValue(value); |
113 return; | 112 return; |
114 } | 113 } |
115 | 114 |
116 if (SVGURIReference::parseAttribute(name, value)) | 115 if (SVGURIReference::parseAttribute(name, value)) |
117 return; | 116 return; |
118 if (SVGLangSpace::parseAttribute(name, value)) | |
119 return; | |
120 if (SVGExternalResourcesRequired::parseAttribute(name, value)) | 117 if (SVGExternalResourcesRequired::parseAttribute(name, value)) |
121 return; | 118 return; |
122 | 119 |
123 ASSERT_NOT_REACHED(); | 120 ASSERT_NOT_REACHED(); |
124 } | 121 } |
125 | 122 |
126 void SVGAElement::svgAttributeChanged(const QualifiedName& attrName) | 123 void SVGAElement::svgAttributeChanged(const QualifiedName& attrName) |
127 { | 124 { |
128 if (!isSupportedAttribute(attrName)) { | 125 if (!isSupportedAttribute(attrName)) { |
129 SVGGraphicsElement::svgAttributeChanged(attrName); | 126 SVGGraphicsElement::svgAttributeChanged(attrName); |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
234 // The 'a' element may contain any element that its parent may contain, exce
pt itself. | 231 // The 'a' element may contain any element that its parent may contain, exce
pt itself. |
235 if (childContext.node()->hasTagName(SVGNames::aTag)) | 232 if (childContext.node()->hasTagName(SVGNames::aTag)) |
236 return false; | 233 return false; |
237 if (parentNode() && parentNode()->isSVGElement()) | 234 if (parentNode() && parentNode()->isSVGElement()) |
238 return parentNode()->childShouldCreateRenderer(childContext); | 235 return parentNode()->childShouldCreateRenderer(childContext); |
239 | 236 |
240 return SVGElement::childShouldCreateRenderer(childContext); | 237 return SVGElement::childShouldCreateRenderer(childContext); |
241 } | 238 } |
242 | 239 |
243 } // namespace WebCore | 240 } // namespace WebCore |
OLD | NEW |