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

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

Issue 1661983002: Don't propagate bbox for empty <text> to ancestors (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 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 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 479 matching lines...) Expand 10 before | Expand all | Expand 10 after
490 { 490 {
491 FloatRect paintInvalidationRect = strokeBoundingBox(); 491 FloatRect paintInvalidationRect = strokeBoundingBox();
492 SVGLayoutSupport::intersectPaintInvalidationRectWithResources(this, paintInv alidationRect); 492 SVGLayoutSupport::intersectPaintInvalidationRectWithResources(this, paintInv alidationRect);
493 493
494 if (const ShadowList* textShadow = style()->textShadow()) 494 if (const ShadowList* textShadow = style()->textShadow())
495 textShadow->adjustRectForShadow(paintInvalidationRect); 495 textShadow->adjustRectForShadow(paintInvalidationRect);
496 496
497 return paintInvalidationRect; 497 return paintInvalidationRect;
498 } 498 }
499 499
500 bool LayoutSVGText::isObjectBoundingBoxValid() const
501 {
502 // If we don't have any line boxes, then consider the bbox invalid.
503 return firstLineBox();
504 }
505
500 void LayoutSVGText::addChild(LayoutObject* child, LayoutObject* beforeChild) 506 void LayoutSVGText::addChild(LayoutObject* child, LayoutObject* beforeChild)
501 { 507 {
502 LayoutSVGBlock::addChild(child, beforeChild); 508 LayoutSVGBlock::addChild(child, beforeChild);
503 509
504 SVGResourcesCache::clientWasAddedToTree(child, child->styleRef()); 510 SVGResourcesCache::clientWasAddedToTree(child, child->styleRef());
505 subtreeChildWasAdded(child); 511 subtreeChildWasAdded(child);
506 } 512 }
507 513
508 void LayoutSVGText::removeChild(LayoutObject* child) 514 void LayoutSVGText::removeChild(LayoutObject* child)
509 { 515 {
(...skipping 20 matching lines...) Expand all
530 paintInvalidationState.pushDelayedPaintInvalidationTarget(*this); 536 paintInvalidationState.pushDelayedPaintInvalidationTarget(*this);
531 537
532 ForceHorriblySlowRectMapping slowRectMapping(&paintInvalidationState); 538 ForceHorriblySlowRectMapping slowRectMapping(&paintInvalidationState);
533 PaintInvalidationState childTreeWalkState(paintInvalidationState, *this, pai ntInvalidationState.paintInvalidationContainer()); 539 PaintInvalidationState childTreeWalkState(paintInvalidationState, *this, pai ntInvalidationState.paintInvalidationContainer());
534 if (reason == PaintInvalidationSVGResourceChange) 540 if (reason == PaintInvalidationSVGResourceChange)
535 childTreeWalkState.setForceSubtreeInvalidationWithinContainer(); 541 childTreeWalkState.setForceSubtreeInvalidationWithinContainer();
536 invalidatePaintOfSubtreesIfNeeded(childTreeWalkState); 542 invalidatePaintOfSubtreesIfNeeded(childTreeWalkState);
537 } 543 }
538 544
539 } // namespace blink 545 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698