OLD | NEW |
1 /* | 1 /* |
2 * This file is part of the WebKit project. | 2 * This file is part of the WebKit project. |
3 * | 3 * |
4 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> | 4 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> |
5 * Copyright (C) 2006 Apple Computer Inc. | 5 * Copyright (C) 2006 Apple Computer Inc. |
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. |
11 * | 11 * |
12 * This library is distributed in the hope that it will be useful, | 12 * This library is distributed in the hope that it will be useful, |
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
15 * Library General Public License for more details. | 15 * Library General Public License for more details. |
16 * | 16 * |
17 * You should have received a copy of the GNU Library General Public License | 17 * You should have received a copy of the GNU Library General Public License |
18 * along with this library; see the file COPYING.LIB. If not, write to | 18 * along with this library; see the file COPYING.LIB. If not, write to |
19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 * Boston, MA 02110-1301, USA. | 20 * Boston, MA 02110-1301, USA. |
21 */ | 21 */ |
22 | 22 |
23 #include "config.h" | 23 #include "config.h" |
24 | 24 |
25 #include "core/rendering/svg/RenderSVGTSpan.h" | 25 #include "core/rendering/svg/RenderSVGTSpan.h" |
26 | |
27 #include "core/rendering/svg/SVGRenderSupport.h" | 26 #include "core/rendering/svg/SVGRenderSupport.h" |
28 #include "core/svg/SVGAltGlyphElement.h" | |
29 | 27 |
30 namespace blink { | 28 namespace blink { |
31 | 29 |
32 RenderSVGTSpan::RenderSVGTSpan(Element* element) | 30 RenderSVGTSpan::RenderSVGTSpan(Element* element) |
33 : RenderSVGInline(element) | 31 : RenderSVGInline(element) |
34 { | 32 { |
35 } | 33 } |
36 | 34 |
37 bool RenderSVGTSpan::isChildAllowed(RenderObject* child, RenderStyle*) const | 35 bool RenderSVGTSpan::isChildAllowed(RenderObject* child, RenderStyle*) const |
38 { | 36 { |
39 // Always allow text (except empty textnodes and <br>). | 37 // Always allow text (except empty textnodes and <br>). |
40 if (child->isText()) | 38 if (child->isText()) |
41 return SVGRenderSupport::isRenderableTextNode(child); | 39 return SVGRenderSupport::isRenderableTextNode(child); |
42 | 40 |
43 #if ENABLE(SVG_FONTS) | |
44 // Only allow other types of children if this is not an 'altGlyph'. | |
45 ASSERT(node()); | |
46 if (isSVGAltGlyphElement(*node())) | |
47 return false; | |
48 #endif | |
49 | |
50 return child->isSVGInline() && !child->isSVGTextPath(); | 41 return child->isSVGInline() && !child->isSVGTextPath(); |
51 } | 42 } |
52 | 43 |
53 } | 44 } |
OLD | NEW |