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

Side by Side Diff: third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp

Issue 2478233002: Make 'transform' a presentation attribute on SVG elements (Closed)
Patch Set: Rebase Created 4 years 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 Apple Computer, Inc. 2 * Copyright (C) 2006 Apple Computer, Inc.
3 * Copyright (C) 2006 Alexander Kellett <lypanov@kde.org> 3 * Copyright (C) 2006 Alexander Kellett <lypanov@kde.org>
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) 2007 Nikolas Zimmermann <zimmermann@kde.org> 5 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org>
6 * Copyright (C) 2008 Rob Buis <buis@kde.org> 6 * Copyright (C) 2008 Rob Buis <buis@kde.org>
7 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> 7 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org>
8 * Copyright (C) Research In Motion Limited 2010-2012. All rights reserved. 8 * Copyright (C) Research In Motion Limited 2010-2012. All rights reserved.
9 * Copyright (C) 2012 Google Inc. 9 * Copyright (C) 2012 Google Inc.
10 * 10 *
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 } 174 }
175 175
176 void LayoutSVGText::layout() { 176 void LayoutSVGText::layout() {
177 ASSERT(needsLayout()); 177 ASSERT(needsLayout());
178 // This flag is set and reset as needed only within this function. 178 // This flag is set and reset as needed only within this function.
179 ASSERT(!m_needsReordering); 179 ASSERT(!m_needsReordering);
180 LayoutAnalyzer::Scope analyzer(*this); 180 LayoutAnalyzer::Scope analyzer(*this);
181 181
182 bool updateParentBoundaries = false; 182 bool updateParentBoundaries = false;
183 if (m_needsTransformUpdate) { 183 if (m_needsTransformUpdate) {
184 m_localTransform = 184 m_localTransform = toSVGTextElement(node())->calculateTransform(
185 toSVGTextElement(node())->calculateAnimatedLocalTransform(); 185 SVGElement::IncludeMotionTransform);
186 m_needsTransformUpdate = false; 186 m_needsTransformUpdate = false;
187 updateParentBoundaries = true; 187 updateParentBoundaries = true;
188 } 188 }
189 189
190 // When laying out initially, build the character data map and propagate 190 // When laying out initially, build the character data map and propagate
191 // resulting layout attributes to all LayoutSVGInlineText children in the 191 // resulting layout attributes to all LayoutSVGInlineText children in the
192 // subtree. 192 // subtree.
193 if (!everHadLayout()) { 193 if (!everHadLayout()) {
194 m_needsPositioningValuesUpdate = true; 194 m_needsPositioningValuesUpdate = true;
195 m_needsTextMetricsUpdate = true; 195 m_needsTextMetricsUpdate = true;
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
399 399
400 void LayoutSVGText::invalidateTreeIfNeeded( 400 void LayoutSVGText::invalidateTreeIfNeeded(
401 const PaintInvalidationState& paintInvalidationState) { 401 const PaintInvalidationState& paintInvalidationState) {
402 // TODO(wangxianzhu): Verify if the inherited 402 // TODO(wangxianzhu): Verify if the inherited
403 // LayoutBoxModelObject::invalidateTreeIfNeeded() 403 // LayoutBoxModelObject::invalidateTreeIfNeeded()
404 // is applicable here. If yes, remove this overriding method. 404 // is applicable here. If yes, remove this overriding method.
405 LayoutObject::invalidateTreeIfNeeded(paintInvalidationState); 405 LayoutObject::invalidateTreeIfNeeded(paintInvalidationState);
406 } 406 }
407 407
408 } // namespace blink 408 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698