Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Side by Side Diff: Source/WebCore/rendering/svg/SVGRootInlineBox.cpp

Issue 10443073: Merge 117225 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1132/
Patch Set: Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 Computer Inc. 3 * Copyright (C) 2006 Apple Computer Inc.
4 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> 4 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org>
5 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 5 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
6 * Copyright (C) 2011 Torch Mobile (Beijing) CO. Ltd. All rights reserved. 6 * Copyright (C) 2011 Torch Mobile (Beijing) CO. Ltd. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 child->paint(paintInfo, LayoutPoint(), 0, 0); 66 child->paint(paintInfo, LayoutPoint(), 0, 0);
67 } 67 }
68 } 68 }
69 } 69 }
70 70
71 void SVGRootInlineBox::computePerCharacterLayoutInformation() 71 void SVGRootInlineBox::computePerCharacterLayoutInformation()
72 { 72 {
73 RenderSVGText* textRoot = toRenderSVGText(block()); 73 RenderSVGText* textRoot = toRenderSVGText(block());
74 ASSERT(textRoot); 74 ASSERT(textRoot);
75 75
76 textRoot->rebuildLayoutAttributes();
77 Vector<SVGTextLayoutAttributes*>& layoutAttributes = textRoot->layoutAttribu tes(); 76 Vector<SVGTextLayoutAttributes*>& layoutAttributes = textRoot->layoutAttribu tes();
78 if (layoutAttributes.isEmpty()) 77 if (layoutAttributes.isEmpty())
79 return; 78 return;
80 79
81 if (textRoot->needsReordering()) 80 if (textRoot->needsReordering())
82 reorderValueLists(layoutAttributes); 81 reorderValueLists(layoutAttributes);
83 82
84 // Perform SVG text layout phase two (see SVGTextLayoutEngine for details). 83 // Perform SVG text layout phase two (see SVGTextLayoutEngine for details).
85 SVGTextLayoutEngine characterLayout(layoutAttributes); 84 SVGTextLayoutEngine characterLayout(layoutAttributes);
86 layoutCharactersInTextBoxes(this, characterLayout); 85 layoutCharactersInTextBoxes(this, characterLayout);
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
303 302
304 void SVGRootInlineBox::reorderValueLists(Vector<SVGTextLayoutAttributes*>& attri butes) 303 void SVGRootInlineBox::reorderValueLists(Vector<SVGTextLayoutAttributes*>& attri butes)
305 { 304 {
306 Vector<InlineBox*> leafBoxesInLogicalOrder; 305 Vector<InlineBox*> leafBoxesInLogicalOrder;
307 collectLeafBoxesInLogicalOrder(leafBoxesInLogicalOrder, reverseInlineBoxRang eAndValueListsIfNeeded, &attributes); 306 collectLeafBoxesInLogicalOrder(leafBoxesInLogicalOrder, reverseInlineBoxRang eAndValueListsIfNeeded, &attributes);
308 } 307 }
309 308
310 } // namespace WebCore 309 } // namespace WebCore
311 310
312 #endif // ENABLE(SVG) 311 #endif // ENABLE(SVG)
OLDNEW
« no previous file with comments | « Source/WebCore/rendering/svg/SVGRenderSupport.cpp ('k') | Source/WebCore/rendering/svg/SVGTextLayoutAttributesBuilder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698