OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008 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 13 matching lines...) Expand all Loading... |
24 #include "bindings/core/v8/ExceptionMessages.h" | 24 #include "bindings/core/v8/ExceptionMessages.h" |
25 #include "bindings/core/v8/ExceptionState.h" | 25 #include "bindings/core/v8/ExceptionState.h" |
26 #include "bindings/core/v8/ExceptionStatePlaceholder.h" | 26 #include "bindings/core/v8/ExceptionStatePlaceholder.h" |
27 #include "core/CSSPropertyNames.h" | 27 #include "core/CSSPropertyNames.h" |
28 #include "core/CSSValueKeywords.h" | 28 #include "core/CSSValueKeywords.h" |
29 #include "core/SVGNames.h" | 29 #include "core/SVGNames.h" |
30 #include "core/XMLNames.h" | 30 #include "core/XMLNames.h" |
31 #include "core/editing/FrameSelection.h" | 31 #include "core/editing/FrameSelection.h" |
32 #include "core/frame/LocalFrame.h" | 32 #include "core/frame/LocalFrame.h" |
33 #include "core/frame/UseCounter.h" | 33 #include "core/frame/UseCounter.h" |
34 #include "core/rendering/RenderObject.h" | 34 #include "core/layout/LayoutObject.h" |
35 #include "core/rendering/svg/SVGTextQuery.h" | 35 #include "core/rendering/svg/SVGTextQuery.h" |
36 | 36 |
37 namespace blink { | 37 namespace blink { |
38 | 38 |
39 template<> const SVGEnumerationStringEntries& getStaticStringEntries<SVGLengthAd
justType>() | 39 template<> const SVGEnumerationStringEntries& getStaticStringEntries<SVGLengthAd
justType>() |
40 { | 40 { |
41 DEFINE_STATIC_LOCAL(SVGEnumerationStringEntries, entries, ()); | 41 DEFINE_STATIC_LOCAL(SVGEnumerationStringEntries, entries, ()); |
42 if (entries.isEmpty()) { | 42 if (entries.isEmpty()) { |
43 entries.append(std::make_pair(SVGLengthAdjustSpacing, "spacing")); | 43 entries.append(std::make_pair(SVGLengthAdjustSpacing, "spacing")); |
44 entries.append(std::make_pair(SVGLengthAdjustSpacingAndGlyphs, "spacingA
ndGlyphs")); | 44 entries.append(std::make_pair(SVGLengthAdjustSpacingAndGlyphs, "spacingA
ndGlyphs")); |
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
245 if (!isSupportedAttribute(attrName)) { | 245 if (!isSupportedAttribute(attrName)) { |
246 SVGGraphicsElement::svgAttributeChanged(attrName); | 246 SVGGraphicsElement::svgAttributeChanged(attrName); |
247 return; | 247 return; |
248 } | 248 } |
249 | 249 |
250 if (attrName == SVGNames::textLengthAttr) | 250 if (attrName == SVGNames::textLengthAttr) |
251 m_textLengthIsSpecifiedByUser = true; | 251 m_textLengthIsSpecifiedByUser = true; |
252 | 252 |
253 SVGElement::InvalidationGuard invalidationGuard(this); | 253 SVGElement::InvalidationGuard invalidationGuard(this); |
254 | 254 |
255 if (RenderObject* renderer = this->renderer()) | 255 if (LayoutObject* renderer = this->renderer()) |
256 markForLayoutAndParentResourceInvalidation(renderer); | 256 markForLayoutAndParentResourceInvalidation(renderer); |
257 } | 257 } |
258 | 258 |
259 bool SVGTextContentElement::selfHasRelativeLengths() const | 259 bool SVGTextContentElement::selfHasRelativeLengths() const |
260 { | 260 { |
261 // Any element of the <text> subtree is advertized as using relative lengths
. | 261 // Any element of the <text> subtree is advertized as using relative lengths
. |
262 // On any window size change, we have to relayout the text subtree, as the | 262 // On any window size change, we have to relayout the text subtree, as the |
263 // effective 'on-screen' font size may change. | 263 // effective 'on-screen' font size may change. |
264 return true; | 264 return true; |
265 } | 265 } |
266 | 266 |
267 SVGTextContentElement* SVGTextContentElement::elementFromRenderer(RenderObject*
renderer) | 267 SVGTextContentElement* SVGTextContentElement::elementFromRenderer(LayoutObject*
renderer) |
268 { | 268 { |
269 if (!renderer) | 269 if (!renderer) |
270 return 0; | 270 return 0; |
271 | 271 |
272 if (!renderer->isSVGText() && !renderer->isSVGInline()) | 272 if (!renderer->isSVGText() && !renderer->isSVGInline()) |
273 return 0; | 273 return 0; |
274 | 274 |
275 SVGElement* element = toSVGElement(renderer->node()); | 275 SVGElement* element = toSVGElement(renderer->node()); |
276 ASSERT(element); | 276 ASSERT(element); |
277 return isSVGTextContentElement(*element) ? toSVGTextContentElement(element)
: 0; | 277 return isSVGTextContentElement(*element) ? toSVGTextContentElement(element)
: 0; |
278 } | 278 } |
279 | 279 |
280 } | 280 } |
OLD | NEW |