| 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 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006 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 15 matching lines...) Expand all Loading... |
| 26 | 26 |
| 27 namespace blink { | 27 namespace blink { |
| 28 | 28 |
| 29 inline SVGGElement::SVGGElement(Document& document, | 29 inline SVGGElement::SVGGElement(Document& document, |
| 30 ConstructionType constructionType) | 30 ConstructionType constructionType) |
| 31 : SVGGraphicsElement(SVGNames::gTag, document, constructionType) {} | 31 : SVGGraphicsElement(SVGNames::gTag, document, constructionType) {} |
| 32 | 32 |
| 33 DEFINE_NODE_FACTORY(SVGGElement) | 33 DEFINE_NODE_FACTORY(SVGGElement) |
| 34 | 34 |
| 35 LayoutObject* SVGGElement::createLayoutObject(const ComputedStyle& style) { | 35 LayoutObject* SVGGElement::createLayoutObject(const ComputedStyle& style) { |
| 36 // SVG 1.1 testsuite explicitely uses constructs like <g display="none"><linea
rGradient> | 36 // SVG 1.1 testsuite explicitely uses constructs like |
| 37 // We still have to create layoutObjects for the <g> & <linearGradient> elemen
t, though the | 37 // <g display="none"><linearGradient> |
| 38 // subtree may be hidden - we only want the resource layoutObjects to exist so
they can be | 38 // We still have to create layoutObjects for the <g> & <linearGradient> |
| 39 // referenced from somewhere else. | 39 // element, though the subtree may be hidden - we only want the resource |
| 40 // layoutObjects to exist so they can be referenced from somewhere else. |
| 40 if (style.display() == EDisplay::None) | 41 if (style.display() == EDisplay::None) |
| 41 return new LayoutSVGHiddenContainer(this); | 42 return new LayoutSVGHiddenContainer(this); |
| 42 | 43 |
| 43 return new LayoutSVGTransformableContainer(this); | 44 return new LayoutSVGTransformableContainer(this); |
| 44 } | 45 } |
| 45 | 46 |
| 46 bool SVGGElement::layoutObjectIsNeeded(const ComputedStyle&) { | 47 bool SVGGElement::layoutObjectIsNeeded(const ComputedStyle&) { |
| 47 // Unlike SVGElement::layoutObjectIsNeeded(), we still create layoutObjects, e
ven if | 48 // Unlike SVGElement::layoutObjectIsNeeded(), we still create layoutObjects, |
| 48 // display is set to 'none' - which is special to SVG <g> container elements. | 49 // even if display is set to 'none' - which is special to SVG <g> container |
| 50 // elements. |
| 49 return parentOrShadowHostElement() && | 51 return parentOrShadowHostElement() && |
| 50 parentOrShadowHostElement()->isSVGElement(); | 52 parentOrShadowHostElement()->isSVGElement(); |
| 51 } | 53 } |
| 52 | 54 |
| 53 } // namespace blink | 55 } // namespace blink |
| OLD | NEW |