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

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: 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) 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 647 matching lines...) Expand 10 before | Expand all | Expand 10 after
658 658
659 // Used to skip PaintPhaseDescendantOutlinesOnly for layers that have never had descendant outlines. 659 // Used to skip PaintPhaseDescendantOutlinesOnly for layers that have never had descendant outlines.
660 // Once it's set we never clear it because it's not easy to track if all out lines have been removed. 660 // Once it's set we never clear it because it's not easy to track if all out lines have been removed.
661 bool needsPaintPhaseDescendantOutlines() const { return m_needsPaintPhaseDes cendantOutlines; } 661 bool needsPaintPhaseDescendantOutlines() const { return m_needsPaintPhaseDes cendantOutlines; }
662 void setNeedsPaintPhaseDescendantOutlines() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseDescendantOutlines = true; } 662 void setNeedsPaintPhaseDescendantOutlines() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseDescendantOutlines = true; }
663 663
664 // Similar to above, but for PaintPhaseFloat. 664 // Similar to above, but for PaintPhaseFloat.
665 bool needsPaintPhaseFloat() const { return m_needsPaintPhaseFloat; } 665 bool needsPaintPhaseFloat() const { return m_needsPaintPhaseFloat; }
666 void setNeedsPaintPhaseFloat() { ASSERT(isSelfPaintingLayer()); m_needsPaint PhaseFloat = true; } 666 void setNeedsPaintPhaseFloat() { ASSERT(isSelfPaintingLayer()); m_needsPaint PhaseFloat = true; }
667 667
668 bool needsPaintPhaseDescendantBlockBackgrounds() const { return m_needsPaint PhaseDescendantBlockBackgrounds; }
669 void setNeedsPaintPhaseDescendantBlockBackgrounds() { ASSERT(isSelfPaintingL ayer()); m_needsPaintPhaseDescendantBlockBackgrounds = true; }
670
668 PaintTiming* paintTiming(); 671 PaintTiming* paintTiming();
669 672
670 ClipRectsCache* clipRectsCache() const { return m_clipRectsCache.get(); } 673 ClipRectsCache* clipRectsCache() const { return m_clipRectsCache.get(); }
671 ClipRectsCache& ensureClipRectsCache() const 674 ClipRectsCache& ensureClipRectsCache() const
672 { 675 {
673 if (!m_clipRectsCache) 676 if (!m_clipRectsCache)
674 m_clipRectsCache = adoptPtr(new ClipRectsCache); 677 m_clipRectsCache = adoptPtr(new ClipRectsCache);
675 return *m_clipRectsCache; 678 return *m_clipRectsCache;
676 } 679 }
677 void clearClipRectsCache() const { m_clipRectsCache.clear(); } 680 void clearClipRectsCache() const { m_clipRectsCache.clear(); }
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
806 809
807 // True if this layout layer just lost its grouped mapping due to the Compos itedLayerMapping being destroyed, 810 // True if this layout layer just lost its grouped mapping due to the Compos itedLayerMapping being destroyed,
808 // and we don't yet know to what graphics layer this Layer will be assigned. 811 // and we don't yet know to what graphics layer this Layer will be assigned.
809 unsigned m_lostGroupedMapping : 1; 812 unsigned m_lostGroupedMapping : 1;
810 813
811 unsigned m_needsRepaint : 1; 814 unsigned m_needsRepaint : 1;
812 unsigned m_previousPaintResult : 1; // PaintLayerPainter::PaintResult 815 unsigned m_previousPaintResult : 1; // PaintLayerPainter::PaintResult
813 816
814 unsigned m_needsPaintPhaseDescendantOutlines : 1; 817 unsigned m_needsPaintPhaseDescendantOutlines : 1;
815 unsigned m_needsPaintPhaseFloat : 1; 818 unsigned m_needsPaintPhaseFloat : 1;
819 unsigned m_needsPaintPhaseDescendantBlockBackgrounds : 1;
816 820
817 // These bitfields are part of ancestor/descendant dependent compositing inp uts. 821 // These bitfields are part of ancestor/descendant dependent compositing inp uts.
818 unsigned m_hasDescendantWithClipPath : 1; 822 unsigned m_hasDescendantWithClipPath : 1;
819 unsigned m_hasNonIsolatedDescendantWithBlendMode : 1; 823 unsigned m_hasNonIsolatedDescendantWithBlendMode : 1;
820 unsigned m_hasAncestorWithClipPath : 1; 824 unsigned m_hasAncestorWithClipPath : 1;
821 825
822 LayoutBoxModelObject* m_layoutObject; 826 LayoutBoxModelObject* m_layoutObject;
823 827
824 PaintLayer* m_parent; 828 PaintLayer* m_parent;
825 PaintLayer* m_previous; 829 PaintLayer* m_previous;
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
858 862
859 } // namespace blink 863 } // namespace blink
860 864
861 #ifndef NDEBUG 865 #ifndef NDEBUG
862 // Outside the WebCore namespace for ease of invocation from gdb. 866 // Outside the WebCore namespace for ease of invocation from gdb.
863 void showLayerTree(const blink::PaintLayer*); 867 void showLayerTree(const blink::PaintLayer*);
864 void showLayerTree(const blink::LayoutObject*); 868 void showLayerTree(const blink::LayoutObject*);
865 #endif 869 #endif
866 870
867 #endif // Layer_h 871 #endif // Layer_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutBox.cpp ('k') | third_party/WebKit/Source/core/paint/PaintLayer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698