OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> | 2 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> |
3 * Copyright (C) 2006 Apple Inc. All rights reserved. | 3 * Copyright (C) 2006 Apple Inc. All rights reserved. |
4 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 4 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 if (!object) | 88 if (!object) |
89 return; | 89 return; |
90 | 90 |
91 FloatRect textBoundingBox = object->strokeBoundingBox(); | 91 FloatRect textBoundingBox = object->strokeBoundingBox(); |
92 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLineBox()) | 92 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLineBox()) |
93 quads.append(localToAbsoluteQuad(FloatRect(textBoundingBox.x() + box->x(
), textBoundingBox.y() + box->y(), box->logicalWidth(), box->logicalHeight()))); | 93 quads.append(localToAbsoluteQuad(FloatRect(textBoundingBox.x() + box->x(
), textBoundingBox.y() + box->y(), box->logicalWidth(), box->logicalHeight()))); |
94 } | 94 } |
95 | 95 |
96 void RenderSVGInline::destroy() | 96 void RenderSVGInline::destroy() |
97 { | 97 { |
| 98 if (RenderSVGText* textRenderer = RenderSVGText::locateRenderSVGTextAncestor
(this)) |
| 99 textRenderer->setNeedsPositioningValuesUpdate(); |
| 100 |
98 SVGResourcesCache::clientDestroyed(this); | 101 SVGResourcesCache::clientDestroyed(this); |
99 RenderInline::destroy(); | 102 RenderInline::destroy(); |
100 } | 103 } |
101 | 104 |
102 void RenderSVGInline::styleWillChange(StyleDifference diff, const RenderStyle* n
ewStyle) | 105 void RenderSVGInline::styleWillChange(StyleDifference diff, const RenderStyle* n
ewStyle) |
103 { | 106 { |
104 if (diff == StyleDifferenceLayout) | 107 if (diff == StyleDifferenceLayout) |
105 setNeedsBoundariesUpdate(); | 108 setNeedsBoundariesUpdate(); |
106 RenderInline::styleWillChange(diff, newStyle); | 109 RenderInline::styleWillChange(diff, newStyle); |
107 } | 110 } |
108 | 111 |
109 void RenderSVGInline::styleDidChange(StyleDifference diff, const RenderStyle* ol
dStyle) | 112 void RenderSVGInline::styleDidChange(StyleDifference diff, const RenderStyle* ol
dStyle) |
110 { | 113 { |
111 RenderInline::styleDidChange(diff, oldStyle); | 114 RenderInline::styleDidChange(diff, oldStyle); |
112 SVGResourcesCache::clientStyleChanged(this, diff, style()); | 115 SVGResourcesCache::clientStyleChanged(this, diff, style()); |
113 } | 116 } |
114 | 117 |
115 void RenderSVGInline::updateFromElement() | 118 void RenderSVGInline::updateFromElement() |
116 { | 119 { |
117 RenderInline::updateFromElement(); | 120 RenderInline::updateFromElement(); |
118 SVGResourcesCache::clientUpdatedFromElement(this, style()); | 121 SVGResourcesCache::clientUpdatedFromElement(this, style()); |
119 } | 122 } |
120 | 123 |
121 | 124 |
122 } | 125 } |
123 | 126 |
124 #endif // ENABLE(SVG) | 127 #endif // ENABLE(SVG) |
OLD | NEW |