| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) Research In Motion Limited 2010-2012. All rights reserved. | 2 * Copyright (C) Research In Motion Limited 2010-2012. All rights reserved. |
| 3 * | 3 * |
| 4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
| 5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
| 6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
| 7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
| 8 * | 8 * |
| 9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 252 && textContentElement->textLengthIsSpecifiedByUser(); | 252 && textContentElement->textLengthIsSpecifiedByUser(); |
| 253 } | 253 } |
| 254 | 254 |
| 255 void SVGTextLayoutEngine::layoutCharactersInTextBoxes(InlineFlowBox* start) | 255 void SVGTextLayoutEngine::layoutCharactersInTextBoxes(InlineFlowBox* start) |
| 256 { | 256 { |
| 257 bool textLengthSpacingInEffect = m_textLengthSpacingInEffect || definesTextL
engthWithSpacing(start); | 257 bool textLengthSpacingInEffect = m_textLengthSpacingInEffect || definesTextL
engthWithSpacing(start); |
| 258 TemporaryChange<bool> textLengthSpacingScope(m_textLengthSpacingInEffect, te
xtLengthSpacingInEffect); | 258 TemporaryChange<bool> textLengthSpacingScope(m_textLengthSpacingInEffect, te
xtLengthSpacingInEffect); |
| 259 | 259 |
| 260 for (InlineBox* child = start->firstChild(); child; child = child->nextOnLin
e()) { | 260 for (InlineBox* child = start->firstChild(); child; child = child->nextOnLin
e()) { |
| 261 if (child->isSVGInlineTextBox()) { | 261 if (child->isSVGInlineTextBox()) { |
| 262 ASSERT(child->layoutObject().isSVGInlineText()); | 262 ASSERT(child->lineLayoutItem().isSVGInlineText()); |
| 263 layoutInlineTextBox(toSVGInlineTextBox(child)); | 263 layoutInlineTextBox(toSVGInlineTextBox(child)); |
| 264 } else { | 264 } else { |
| 265 // Skip generated content. | 265 // Skip generated content. |
| 266 Node* node = child->layoutObject().node(); | 266 Node* node = child->lineLayoutItem().node(); |
| 267 if (!node) | 267 if (!node) |
| 268 continue; | 268 continue; |
| 269 | 269 |
| 270 SVGInlineFlowBox* flowBox = toSVGInlineFlowBox(child); | 270 SVGInlineFlowBox* flowBox = toSVGInlineFlowBox(child); |
| 271 bool isTextPath = isSVGTextPathElement(*node); | 271 bool isTextPath = isSVGTextPathElement(*node); |
| 272 if (isTextPath) | 272 if (isTextPath) |
| 273 beginTextPathLayout(flowBox); | 273 beginTextPathLayout(flowBox); |
| 274 | 274 |
| 275 layoutCharactersInTextBoxes(flowBox); | 275 layoutCharactersInTextBoxes(flowBox); |
| 276 | 276 |
| (...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 552 } | 552 } |
| 553 | 553 |
| 554 if (!didStartTextFragment) | 554 if (!didStartTextFragment) |
| 555 return; | 555 return; |
| 556 | 556 |
| 557 // Close last open fragment, if needed. | 557 // Close last open fragment, if needed. |
| 558 recordTextFragment(textBox); | 558 recordTextFragment(textBox); |
| 559 } | 559 } |
| 560 | 560 |
| 561 } | 561 } |
| OLD | NEW |