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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintLayer.h

Issue 1626623002: Skip PaintPhaseDescendantBlockBackgroundsOnly phase if possible (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@FloatPhase
Patch Set: Rebase Created 4 years, 11 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) 2003, 2009, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved.
3 * Copyright (C) 2013 Intel Corporation. All rights reserved. 3 * Copyright (C) 2013 Intel Corporation. All rights reserved.
4 * 4 *
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
6 * 6 *
7 * Other contributors: 7 * Other contributors:
8 * Robert O'Callahan <roc+@cs.cmu.edu> 8 * Robert O'Callahan <roc+@cs.cmu.edu>
9 * David Baron <dbaron@fas.harvard.edu> 9 * David Baron <dbaron@fas.harvard.edu>
10 * Christian Biesinger <cbiesinger@web.de> 10 * Christian Biesinger <cbiesinger@web.de>
(...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after
623 623
624 // Used to skip PaintPhaseDescendantOutlinesOnly for layers that have never had descendant outlines. 624 // Used to skip PaintPhaseDescendantOutlinesOnly for layers that have never had descendant outlines.
625 // Once it's set we never clear it because it's not easy to track if all out lines have been removed. 625 // Once it's set we never clear it because it's not easy to track if all out lines have been removed.
626 bool needsPaintPhaseDescendantOutlines() const { return m_needsPaintPhaseDes cendantOutlines; } 626 bool needsPaintPhaseDescendantOutlines() const { return m_needsPaintPhaseDes cendantOutlines; }
627 void setNeedsPaintPhaseDescendantOutlines() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseDescendantOutlines = true; } 627 void setNeedsPaintPhaseDescendantOutlines() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseDescendantOutlines = true; }
628 628
629 // Similar to above, but for PaintPhaseFloat. 629 // Similar to above, but for PaintPhaseFloat.
630 bool needsPaintPhaseFloat() const { return m_needsPaintPhaseFloat; } 630 bool needsPaintPhaseFloat() const { return m_needsPaintPhaseFloat; }
631 void setNeedsPaintPhaseFloat() { ASSERT(isSelfPaintingLayer()); m_needsPaint PhaseFloat = true; } 631 void setNeedsPaintPhaseFloat() { ASSERT(isSelfPaintingLayer()); m_needsPaint PhaseFloat = true; }
632 632
633 bool needsPaintPhaseDescendantBlockBackgrounds() const { return m_needsPaint PhaseDescendantBlockBackgrounds; }
634 void setNeedsPaintPhaseDescendantBlockBackgrounds() { ASSERT(isSelfPaintingL ayer()); m_needsPaintPhaseDescendantBlockBackgrounds = true; }
635
633 PaintTiming* paintTiming(); 636 PaintTiming* paintTiming();
634 637
635 private: 638 private:
636 // Bounding box in the coordinates of this layer. 639 // Bounding box in the coordinates of this layer.
637 LayoutRect logicalBoundingBox() const; 640 LayoutRect logicalBoundingBox() const;
638 641
639 bool hasOverflowControls() const; 642 bool hasOverflowControls() const;
640 643
641 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); 644 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus();
642 645
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
757 760
758 // True if this layout layer just lost its grouped mapping due to the Compos itedLayerMapping being destroyed, 761 // True if this layout layer just lost its grouped mapping due to the Compos itedLayerMapping being destroyed,
759 // and we don't yet know to what graphics layer this Layer will be assigned. 762 // and we don't yet know to what graphics layer this Layer will be assigned.
760 unsigned m_lostGroupedMapping : 1; 763 unsigned m_lostGroupedMapping : 1;
761 764
762 unsigned m_needsRepaint : 1; 765 unsigned m_needsRepaint : 1;
763 unsigned m_previousPaintResult : 1; // PaintLayerPainter::PaintResult 766 unsigned m_previousPaintResult : 1; // PaintLayerPainter::PaintResult
764 767
765 unsigned m_needsPaintPhaseDescendantOutlines : 1; 768 unsigned m_needsPaintPhaseDescendantOutlines : 1;
766 unsigned m_needsPaintPhaseFloat : 1; 769 unsigned m_needsPaintPhaseFloat : 1;
770 unsigned m_needsPaintPhaseDescendantBlockBackgrounds : 1;
767 771
768 LayoutBoxModelObject* m_layoutObject; 772 LayoutBoxModelObject* m_layoutObject;
769 773
770 PaintLayer* m_parent; 774 PaintLayer* m_parent;
771 PaintLayer* m_previous; 775 PaintLayer* m_previous;
772 PaintLayer* m_next; 776 PaintLayer* m_next;
773 PaintLayer* m_first; 777 PaintLayer* m_first;
774 PaintLayer* m_last; 778 PaintLayer* m_last;
775 779
776 // Our current relative position offset. 780 // Our current relative position offset.
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
831 835
832 } // namespace blink 836 } // namespace blink
833 837
834 #ifndef NDEBUG 838 #ifndef NDEBUG
835 // Outside the WebCore namespace for ease of invocation from gdb. 839 // Outside the WebCore namespace for ease of invocation from gdb.
836 void showLayerTree(const blink::PaintLayer*); 840 void showLayerTree(const blink::PaintLayer*);
837 void showLayerTree(const blink::LayoutObject*); 841 void showLayerTree(const blink::LayoutObject*);
838 #endif 842 #endif
839 843
840 #endif // Layer_h 844 #endif // Layer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698