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

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

Issue 23503046: [CSS Blending] Implement mix-blend-mode in software. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 3 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 * 3 *
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
5 * 5 *
6 * Other contributors: 6 * Other contributors:
7 * Robert O'Callahan <roc+@cs.cmu.edu> 7 * Robert O'Callahan <roc+@cs.cmu.edu>
8 * David Baron <dbaron@fas.harvard.edu> 8 * David Baron <dbaron@fas.harvard.edu>
9 * Christian Biesinger <cbiesinger@web.de> 9 * Christian Biesinger <cbiesinger@web.de>
10 * Randall Jesup <rjesup@wgate.com> 10 * Randall Jesup <rjesup@wgate.com>
(...skipping 807 matching lines...) Expand 10 before | Expand all | Expand 10 after
818 void clearZOrderLists(); 818 void clearZOrderLists();
819 void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDes cendant = isUnclippedDescendant; } 819 void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDes cendant = isUnclippedDescendant; }
820 820
821 821
822 void updateNormalFlowList(); 822 void updateNormalFlowList();
823 823
824 bool isStackingContext(const RenderStyle* style) const { return !style->hasA utoZIndex() || isRootLayer(); } 824 bool isStackingContext(const RenderStyle* style) const { return !style->hasA utoZIndex() || isRootLayer(); }
825 825
826 bool isDirtyStackingContainer() const { return m_zOrderListsDirty && isStack ingContainer(); } 826 bool isDirtyStackingContainer() const { return m_zOrderListsDirty && isStack ingContainer(); }
827 827
828 bool hasNonAcceleratedBlendedChildInCurrentStackingContext() const;
829
828 void setAncestorChainHasSelfPaintingLayerDescendant(); 830 void setAncestorChainHasSelfPaintingLayerDescendant();
829 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); 831 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus();
830 832
831 void setAncestorChainHasOutOfFlowPositionedDescendant(); 833 void setAncestorChainHasOutOfFlowPositionedDescendant();
832 void dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus(); 834 void dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus();
833 835
834 bool acceleratedCompositingForOverflowScrollEnabled() const; 836 bool acceleratedCompositingForOverflowScrollEnabled() const;
835 // FIXME: This is a temporary flag and should be removed once accelerated 837 // FIXME: This is a temporary flag and should be removed once accelerated
836 // overflow scroll is ready (crbug.com/254111). 838 // overflow scroll is ready (crbug.com/254111).
837 bool compositorDrivenAcceleratedScrollingEnabled() const; 839 bool compositorDrivenAcceleratedScrollingEnabled() const;
(...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after
1130 // descendants in stacking order. This is one of the requirements of being 1132 // descendants in stacking order. This is one of the requirements of being
1131 // able to safely become a stacking context. 1133 // able to safely become a stacking context.
1132 unsigned m_canBePromotedToStackingContainer : 1; 1134 unsigned m_canBePromotedToStackingContainer : 1;
1133 unsigned m_canBePromotedToStackingContainerDirty : 1; 1135 unsigned m_canBePromotedToStackingContainerDirty : 1;
1134 1136
1135 const unsigned m_isRootLayer : 1; 1137 const unsigned m_isRootLayer : 1;
1136 1138
1137 unsigned m_usedTransparency : 1; // Tracks whether we need to close a transp arent layer, i.e., whether 1139 unsigned m_usedTransparency : 1; // Tracks whether we need to close a transp arent layer, i.e., whether
1138 // we ended up painting this layer or any desce ndants (and therefore need to 1140 // we ended up painting this layer or any desce ndants (and therefore need to
1139 // blend). 1141 // blend).
1142 unsigned m_isolateLayerFromBlendedContent : 1; // Blending through the mix-b lend-mode operation should
1143 // only be performed with the contents of the underlying
1144 // stacking context.
1140 unsigned m_paintingInsideReflection : 1; // A state bit tracking if we are p ainting inside a replica. 1145 unsigned m_paintingInsideReflection : 1; // A state bit tracking if we are p ainting inside a replica.
1141 unsigned m_inOverflowRelayout : 1; 1146 unsigned m_inOverflowRelayout : 1;
1142 unsigned m_repaintStatus : 2; // RepaintStatus 1147 unsigned m_repaintStatus : 2; // RepaintStatus
1143 1148
1144 unsigned m_visibleContentStatusDirty : 1; 1149 unsigned m_visibleContentStatusDirty : 1;
1145 unsigned m_hasVisibleContent : 1; 1150 unsigned m_hasVisibleContent : 1;
1146 unsigned m_visibleDescendantStatusDirty : 1; 1151 unsigned m_visibleDescendantStatusDirty : 1;
1147 unsigned m_hasVisibleDescendant : 1; 1152 unsigned m_hasVisibleDescendant : 1;
1148 1153
1149 unsigned m_isPaginated : 1; // If we think this layer is split by a multi-co lumn ancestor, then this bit will be set. 1154 unsigned m_isPaginated : 1; // If we think this layer is split by a multi-co lumn ancestor, then this bit will be set.
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
1298 1303
1299 } // namespace WebCore 1304 } // namespace WebCore
1300 1305
1301 #ifndef NDEBUG 1306 #ifndef NDEBUG
1302 // Outside the WebCore namespace for ease of invocation from gdb. 1307 // Outside the WebCore namespace for ease of invocation from gdb.
1303 void showLayerTree(const WebCore::RenderLayer*); 1308 void showLayerTree(const WebCore::RenderLayer*);
1304 void showLayerTree(const WebCore::RenderObject*); 1309 void showLayerTree(const WebCore::RenderObject*);
1305 #endif 1310 #endif
1306 1311
1307 #endif // RenderLayer_h 1312 #endif // RenderLayer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698