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

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

Issue 744493002: Let RenderTable reach table cells needing overflow recalc (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 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 | 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 561 matching lines...) Expand 10 before | Expand all | Expand 10 after
572 } 572 }
573 573
574 bool posChildNeedsLayout() const { return m_bitfields.posChildNeedsLayout(); } 574 bool posChildNeedsLayout() const { return m_bitfields.posChildNeedsLayout(); }
575 bool needsSimplifiedNormalFlowLayout() const { return m_bitfields.needsSimpl ifiedNormalFlowLayout(); } 575 bool needsSimplifiedNormalFlowLayout() const { return m_bitfields.needsSimpl ifiedNormalFlowLayout(); }
576 bool normalChildNeedsLayout() const { return m_bitfields.normalChildNeedsLay out(); } 576 bool normalChildNeedsLayout() const { return m_bitfields.normalChildNeedsLay out(); }
577 577
578 bool preferredLogicalWidthsDirty() const { return m_bitfields.preferredLogic alWidthsDirty(); } 578 bool preferredLogicalWidthsDirty() const { return m_bitfields.preferredLogic alWidthsDirty(); }
579 579
580 bool needsOverflowRecalcAfterStyleChange() const { return m_bitfields.selfNe edsOverflowRecalcAfterStyleChange() || m_bitfields.childNeedsOverflowRecalcAfter StyleChange(); } 580 bool needsOverflowRecalcAfterStyleChange() const { return m_bitfields.selfNe edsOverflowRecalcAfterStyleChange() || m_bitfields.childNeedsOverflowRecalcAfter StyleChange(); }
581 bool selfNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.se lfNeedsOverflowRecalcAfterStyleChange(); } 581 bool selfNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.se lfNeedsOverflowRecalcAfterStyleChange(); }
582 void clearSelfNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setSelfNee dsOverflowRecalcAfterStyleChange(false); }
582 bool childNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.c hildNeedsOverflowRecalcAfterStyleChange(); } 583 bool childNeedsOverflowRecalcAfterStyleChange() const { return m_bitfields.c hildNeedsOverflowRecalcAfterStyleChange(); }
584 void clearChildNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setChildN eedsOverflowRecalcAfterStyleChange(false); }
583 585
584 bool isSelectionBorder() const; 586 bool isSelectionBorder() const;
585 587
586 bool hasClip() const { return isOutOfFlowPositioned() && !style()->hasAutoCl ip(); } 588 bool hasClip() const { return isOutOfFlowPositioned() && !style()->hasAutoCl ip(); }
587 bool hasOverflowClip() const { return m_bitfields.hasOverflowClip(); } 589 bool hasOverflowClip() const { return m_bitfields.hasOverflowClip(); }
588 bool hasClipOrOverflowClip() const { return hasClip() || hasOverflowClip(); } 590 bool hasClipOrOverflowClip() const { return hasClip() || hasOverflowClip(); }
589 591
590 bool hasTransformRelatedProperty() const { return m_bitfields.hasTransformRe latedProperty(); } 592 bool hasTransformRelatedProperty() const { return m_bitfields.hasTransformRe latedProperty(); }
591 bool hasMask() const { return style() && style()->hasMask(); } 593 bool hasMask() const { return style() && style()->hasMask(); }
592 bool hasClipPath() const { return style() && style()->clipPath(); } 594 bool hasClipPath() const { return style() && style()->clipPath(); }
(...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after
1041 bool shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState() con st 1043 bool shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState() con st
1042 { 1044 {
1043 return layoutDidGetCalledSinceLastFrame() || mayNeedPaintInvalidation() || shouldDoFullPaintInvalidation() || shouldInvalidateSelection(); 1045 return layoutDidGetCalledSinceLastFrame() || mayNeedPaintInvalidation() || shouldDoFullPaintInvalidation() || shouldInvalidateSelection();
1044 } 1046 }
1045 1047
1046 bool needsPaint() const { return m_bitfields.needsPaint(); } 1048 bool needsPaint() const { return m_bitfields.needsPaint(); }
1047 1049
1048 bool supportsPaintInvalidationStateCachedOffsets() const { return !hasColumn s() && !hasTransformRelatedProperty() && !hasReflection() && !style()->isFlipped BlocksWritingMode(); } 1050 bool supportsPaintInvalidationStateCachedOffsets() const { return !hasColumn s() && !hasTransformRelatedProperty() && !hasReflection() && !style()->isFlipped BlocksWritingMode(); }
1049 1051
1050 void setNeedsOverflowRecalcAfterStyleChange(); 1052 void setNeedsOverflowRecalcAfterStyleChange();
1051 void markContainingBlocksForOverflowRecalc(); 1053 void markContainersForOverflowRecalcIfNeeded();
1052 1054
1053 virtual LayoutRect viewRect() const; 1055 virtual LayoutRect viewRect() const;
1054 1056
1055 protected: 1057 protected:
1056 enum RenderObjectType { 1058 enum RenderObjectType {
1057 RenderObjectBr, 1059 RenderObjectBr,
1058 RenderObjectCanvas, 1060 RenderObjectCanvas,
1059 RenderObjectFieldset, 1061 RenderObjectFieldset,
1060 RenderObjectCounter, 1062 RenderObjectCounter,
1061 RenderObjectDetailsMarker, 1063 RenderObjectDetailsMarker,
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
1377 RenderObjectBitfields m_bitfields; 1379 RenderObjectBitfields m_bitfields;
1378 1380
1379 void setSelfNeedsLayout(bool b) { m_bitfields.setSelfNeedsLayout(b); } 1381 void setSelfNeedsLayout(bool b) { m_bitfields.setSelfNeedsLayout(b); }
1380 void setNeedsPositionedMovementLayout(bool b) { m_bitfields.setNeedsPosition edMovementLayout(b); } 1382 void setNeedsPositionedMovementLayout(bool b) { m_bitfields.setNeedsPosition edMovementLayout(b); }
1381 void setNormalChildNeedsLayout(bool b) { m_bitfields.setNormalChildNeedsLayo ut(b); } 1383 void setNormalChildNeedsLayout(bool b) { m_bitfields.setNormalChildNeedsLayo ut(b); }
1382 void setPosChildNeedsLayout(bool b) { m_bitfields.setPosChildNeedsLayout(b); } 1384 void setPosChildNeedsLayout(bool b) { m_bitfields.setPosChildNeedsLayout(b); }
1383 void setNeedsSimplifiedNormalFlowLayout(bool b) { m_bitfields.setNeedsSimpli fiedNormalFlowLayout(b); } 1385 void setNeedsSimplifiedNormalFlowLayout(bool b) { m_bitfields.setNeedsSimpli fiedNormalFlowLayout(b); }
1384 void setIsDragging(bool b) { m_bitfields.setIsDragging(b); } 1386 void setIsDragging(bool b) { m_bitfields.setIsDragging(b); }
1385 void setEverHadLayout(bool b) { m_bitfields.setEverHadLayout(b); } 1387 void setEverHadLayout(bool b) { m_bitfields.setEverHadLayout(b); }
1386 void setShouldInvalidateOverflowForPaint(bool b) { m_bitfields.setShouldInva lidateOverflowForPaint(b); } 1388 void setShouldInvalidateOverflowForPaint(bool b) { m_bitfields.setShouldInva lidateOverflowForPaint(b); }
1387 void setSelfNeedsOverflowRecalcAfterStyleChange(bool b) { m_bitfields.setSel fNeedsOverflowRecalcAfterStyleChange(b); } 1389 void setSelfNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setSelfNeeds OverflowRecalcAfterStyleChange(true); }
1388 void setChildNeedsOverflowRecalcAfterStyleChange(bool b) { m_bitfields.setCh ildNeedsOverflowRecalcAfterStyleChange(b); } 1390 void setChildNeedsOverflowRecalcAfterStyleChange() { m_bitfields.setChildNee dsOverflowRecalcAfterStyleChange(true); }
1389 1391
1390 private: 1392 private:
1391 // Store state between styleWillChange and styleDidChange 1393 // Store state between styleWillChange and styleDidChange
1392 static bool s_affectsParentBlock; 1394 static bool s_affectsParentBlock;
1393 1395
1394 // This stores the paint invalidation rect from the previous frame. 1396 // This stores the paint invalidation rect from the previous frame.
1395 LayoutRect m_previousPaintInvalidationRect; 1397 LayoutRect m_previousPaintInvalidationRect;
1396 1398
1397 // This stores the position in the paint invalidation backing's coordinate. 1399 // This stores the position in the paint invalidation backing's coordinate.
1398 // It is used to detect renderer shifts that forces a full invalidation. 1400 // It is used to detect renderer shifts that forces a full invalidation.
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
1613 void showTree(const blink::RenderObject*); 1615 void showTree(const blink::RenderObject*);
1614 void showLineTree(const blink::RenderObject*); 1616 void showLineTree(const blink::RenderObject*);
1615 void showRenderTree(const blink::RenderObject* object1); 1617 void showRenderTree(const blink::RenderObject* object1);
1616 // We don't make object2 an optional parameter so that showRenderTree 1618 // We don't make object2 an optional parameter so that showRenderTree
1617 // can be called from gdb easily. 1619 // can be called from gdb easily.
1618 void showRenderTree(const blink::RenderObject* object1, const blink::RenderObjec t* object2); 1620 void showRenderTree(const blink::RenderObject* object1, const blink::RenderObjec t* object2);
1619 1621
1620 #endif 1622 #endif
1621 1623
1622 #endif // RenderObject_h 1624 #endif // RenderObject_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698