| 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 |