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

Side by Side Diff: Source/core/layout/svg/LayoutSVGInlineText.cpp

Issue 1025213002: Begin tracking why layout is invalidated (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 5 years, 8 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 | Annotate | Revision Log
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) 2008 Rob Buis <buis@kde.org> 5 * Copyright (C) 2008 Rob Buis <buis@kde.org>
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. 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 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 if (oldPreserves != newPreserves) { 83 if (oldPreserves != newPreserves) {
84 setText(originalText(), true); 84 setText(originalText(), true);
85 return; 85 return;
86 } 86 }
87 87
88 if (!diff.needsFullLayout()) 88 if (!diff.needsFullLayout())
89 return; 89 return;
90 90
91 // The text metrics may be influenced by style changes. 91 // The text metrics may be influenced by style changes.
92 if (LayoutSVGText* textLayoutObject = LayoutSVGText::locateLayoutSVGTextAnce stor(this)) 92 if (LayoutSVGText* textLayoutObject = LayoutSVGText::locateLayoutSVGTextAnce stor(this))
93 textLayoutObject->setNeedsLayoutAndFullPaintInvalidation(); 93 textLayoutObject->setNeedsLayoutAndFullPaintInvalidation(LayoutInvalidat ionReason::StyleChange);
94 } 94 }
95 95
96 InlineTextBox* LayoutSVGInlineText::createTextBox(int start, unsigned short leng th) 96 InlineTextBox* LayoutSVGInlineText::createTextBox(int start, unsigned short leng th)
97 { 97 {
98 InlineTextBox* box = new SVGInlineTextBox(*this, start, length); 98 InlineTextBox* box = new SVGInlineTextBox(*this, start, length);
99 box->setHasVirtualLogicalHeight(); 99 box->setHasVirtualLogicalHeight();
100 return box; 100 return box;
101 } 101 }
102 102
103 LayoutRect LayoutSVGInlineText::localCaretRect(InlineBox* box, int caretOffset, LayoutUnit*) 103 LayoutRect LayoutSVGInlineText::localCaretRect(InlineBox* box, int caretOffset, LayoutUnit*)
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
244 244
245 PassRefPtr<StringImpl> LayoutSVGInlineText::originalText() const 245 PassRefPtr<StringImpl> LayoutSVGInlineText::originalText() const
246 { 246 {
247 RefPtr<StringImpl> result = LayoutText::originalText(); 247 RefPtr<StringImpl> result = LayoutText::originalText();
248 if (!result) 248 if (!result)
249 return nullptr; 249 return nullptr;
250 return applySVGWhitespaceRules(result, style() && style()->whiteSpace() == P RE); 250 return applySVGWhitespaceRules(result, style() && style()->whiteSpace() == P RE);
251 } 251 }
252 252
253 } 253 }
OLDNEW
« no previous file with comments | « Source/core/layout/TextAutosizer.cpp ('k') | Source/core/layout/svg/LayoutSVGResourceContainer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698