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

Side by Side Diff: Source/core/rendering/RenderObject.h

Issue 204843002: Reduce invalidation on children-needs-layout containers (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Updated patch after Levi's comment + the bots failures Created 6 years, 9 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) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after
518 HasBoxDecorationsAndBackgroundIsKnownToBeObscured, 518 HasBoxDecorationsAndBackgroundIsKnownToBeObscured,
519 HasBoxDecorationsAndBackgroundMayBeVisible, 519 HasBoxDecorationsAndBackgroundMayBeVisible,
520 }; 520 };
521 bool hasBoxDecorations() const { return m_bitfields.boxDecorationState() != NoBoxDecorations; } 521 bool hasBoxDecorations() const { return m_bitfields.boxDecorationState() != NoBoxDecorations; }
522 bool backgroundIsKnownToBeObscured(); 522 bool backgroundIsKnownToBeObscured();
523 bool borderImageIsLoadedAndCanBeRendered() const; 523 bool borderImageIsLoadedAndCanBeRendered() const;
524 bool mustRepaintBackgroundOrBorder() const; 524 bool mustRepaintBackgroundOrBorder() const;
525 bool hasBackground() const { return style()->hasBackground(); } 525 bool hasBackground() const { return style()->hasBackground(); }
526 bool hasEntirelyFixedBackground() const; 526 bool hasEntirelyFixedBackground() const;
527 527
528 bool needsLayoutBecauseOfChildren() const { return needsLayout() && !selfNee dsLayout() && !needsPositionedMovementLayout() && !needsSimplifiedNormalFlowLayo ut(); }
529
528 bool needsLayout() const 530 bool needsLayout() const
529 { 531 {
530 return m_bitfields.selfNeedsLayout() || m_bitfields.normalChildNeedsLayo ut() || m_bitfields.posChildNeedsLayout() 532 return m_bitfields.selfNeedsLayout() || m_bitfields.normalChildNeedsLayo ut() || m_bitfields.posChildNeedsLayout()
531 || m_bitfields.needsSimplifiedNormalFlowLayout() || m_bitfields.need sPositionedMovementLayout(); 533 || m_bitfields.needsSimplifiedNormalFlowLayout() || m_bitfields.need sPositionedMovementLayout();
532 } 534 }
533 535
534 bool selfNeedsLayout() const { return m_bitfields.selfNeedsLayout(); } 536 bool selfNeedsLayout() const { return m_bitfields.selfNeedsLayout(); }
535 bool needsPositionedMovementLayout() const { return m_bitfields.needsPositio nedMovementLayout(); } 537 bool needsPositionedMovementLayout() const { return m_bitfields.needsPositio nedMovementLayout(); }
536 bool needsPositionedMovementLayoutOnly() const 538 bool needsPositionedMovementLayoutOnly() const
537 { 539 {
(...skipping 879 matching lines...) Expand 10 before | Expand all | Expand 10 after
1417 void showTree(const WebCore::RenderObject*); 1419 void showTree(const WebCore::RenderObject*);
1418 void showLineTree(const WebCore::RenderObject*); 1420 void showLineTree(const WebCore::RenderObject*);
1419 void showRenderTree(const WebCore::RenderObject* object1); 1421 void showRenderTree(const WebCore::RenderObject* object1);
1420 // We don't make object2 an optional parameter so that showRenderTree 1422 // We don't make object2 an optional parameter so that showRenderTree
1421 // can be called from gdb easily. 1423 // can be called from gdb easily.
1422 void showRenderTree(const WebCore::RenderObject* object1, const WebCore::RenderO bject* object2); 1424 void showRenderTree(const WebCore::RenderObject* object1, const WebCore::RenderO bject* object2);
1423 1425
1424 #endif 1426 #endif
1425 1427
1426 #endif // RenderObject_h 1428 #endif // RenderObject_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698