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

Side by Side Diff: Source/core/rendering/svg/RenderSVGRoot.cpp

Issue 236203020: Separate repaint and layout requirements of StyleDifference (Step 1) (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase; Renaming of some methods and small changes in StyleDifference Created 6 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) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005, 2007, 2008, 2009 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2007, 2008, 2009 Rob Buis <buis@kde.org>
4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> 4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org>
5 * Copyright (C) 2009 Google, Inc. 5 * Copyright (C) 2009 Google, Inc.
6 * Copyright (C) Research In Motion Limited 2011. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2011. 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 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 void RenderSVGRoot::willBeDestroyed() 287 void RenderSVGRoot::willBeDestroyed()
288 { 288 {
289 RenderBlock::removePercentHeightDescendant(const_cast<RenderSVGRoot*>(this)) ; 289 RenderBlock::removePercentHeightDescendant(const_cast<RenderSVGRoot*>(this)) ;
290 290
291 SVGResourcesCache::clientDestroyed(this); 291 SVGResourcesCache::clientDestroyed(this);
292 RenderReplaced::willBeDestroyed(); 292 RenderReplaced::willBeDestroyed();
293 } 293 }
294 294
295 void RenderSVGRoot::styleDidChange(StyleDifference diff, const RenderStyle* oldS tyle) 295 void RenderSVGRoot::styleDidChange(StyleDifference diff, const RenderStyle* oldS tyle)
296 { 296 {
297 if (diff == StyleDifferenceLayout) 297 if (diff.needsFullLayout())
298 setNeedsBoundariesUpdate(); 298 setNeedsBoundariesUpdate();
299 if (diff == StyleDifferenceRepaint) { 299 // FIXME: How about other diff flags?
300 if (diff.needsRepaintObjectOnly()) {
300 // Box decorations may have appeared/disappeared - recompute status. 301 // Box decorations may have appeared/disappeared - recompute status.
301 m_hasBoxDecorations = calculateHasBoxDecorations(); 302 m_hasBoxDecorations = calculateHasBoxDecorations();
302 } 303 }
303 304
304 RenderReplaced::styleDidChange(diff, oldStyle); 305 RenderReplaced::styleDidChange(diff, oldStyle);
305 SVGResourcesCache::clientStyleChanged(this, diff, style()); 306 SVGResourcesCache::clientStyleChanged(this, diff, style());
306 } 307 }
307 308
308 bool RenderSVGRoot::isChildAllowed(RenderObject* child, RenderStyle*) const 309 bool RenderSVGRoot::isChildAllowed(RenderObject* child, RenderStyle*) const
309 { 310 {
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 476
476 bool RenderSVGRoot::hasRelativeLogicalHeight() const 477 bool RenderSVGRoot::hasRelativeLogicalHeight() const
477 { 478 {
478 SVGSVGElement* svg = toSVGSVGElement(node()); 479 SVGSVGElement* svg = toSVGSVGElement(node());
479 ASSERT(svg); 480 ASSERT(svg);
480 481
481 return svg->intrinsicHeight(SVGSVGElement::IgnoreCSSProperties).isPercent(); 482 return svg->intrinsicHeight(SVGSVGElement::IgnoreCSSProperties).isPercent();
482 } 483 }
483 484
484 } 485 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698