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

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: Completely remove CompositingReasonBlending 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 811 matching lines...) Expand 10 before | Expand all | Expand 10 after
822 void clearZOrderLists(); 822 void clearZOrderLists();
823 void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDes cendant = isUnclippedDescendant; } 823 void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDes cendant = isUnclippedDescendant; }
824 824
825 825
826 void updateNormalFlowList(); 826 void updateNormalFlowList();
827 827
828 bool isStackingContext(const RenderStyle* style) const { return !style->hasA utoZIndex() || isRootLayer(); } 828 bool isStackingContext(const RenderStyle* style) const { return !style->hasA utoZIndex() || isRootLayer(); }
829 829
830 bool isDirtyStackingContainer() const { return m_zOrderListsDirty && isStack ingContainer(); } 830 bool isDirtyStackingContainer() const { return m_zOrderListsDirty && isStack ingContainer(); }
831 831
832 bool hasNonAcceleratedBlendedChildInCurrentStackingContext() const;
833
832 void setAncestorChainHasSelfPaintingLayerDescendant(); 834 void setAncestorChainHasSelfPaintingLayerDescendant();
833 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); 835 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus();
834 836
835 void setAncestorChainHasOutOfFlowPositionedDescendant(); 837 void setAncestorChainHasOutOfFlowPositionedDescendant();
836 void dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus(); 838 void dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus();
837 839
838 bool acceleratedCompositingForOverflowScrollEnabled() const; 840 bool acceleratedCompositingForOverflowScrollEnabled() const;
839 // FIXME: This is a temporary flag and should be removed once accelerated 841 // FIXME: This is a temporary flag and should be removed once accelerated
840 // overflow scroll is ready (crbug.com/254111). 842 // overflow scroll is ready (crbug.com/254111).
841 bool compositorDrivenAcceleratedScrollingEnabled() const; 843 bool compositorDrivenAcceleratedScrollingEnabled() const;
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after
1140 // descendants in stacking order. This is one of the requirements of being 1142 // descendants in stacking order. This is one of the requirements of being
1141 // able to safely become a stacking context. 1143 // able to safely become a stacking context.
1142 unsigned m_canBePromotedToStackingContainer : 1; 1144 unsigned m_canBePromotedToStackingContainer : 1;
1143 unsigned m_canBePromotedToStackingContainerDirty : 1; 1145 unsigned m_canBePromotedToStackingContainerDirty : 1;
1144 1146
1145 const unsigned m_isRootLayer : 1; 1147 const unsigned m_isRootLayer : 1;
1146 1148
1147 unsigned m_usedTransparency : 1; // Tracks whether we need to close a transp arent layer, i.e., whether 1149 unsigned m_usedTransparency : 1; // Tracks whether we need to close a transp arent layer, i.e., whether
1148 // we ended up painting this layer or any desce ndants (and therefore need to 1150 // we ended up painting this layer or any desce ndants (and therefore need to
1149 // blend). 1151 // blend).
1152 unsigned m_isolateLayerFromBlendedContent : 1; // Blending through the mix-b lend-mode operation should
1153 // only be performed with the contents of the underlying
shawnsingh 2013/09/19 11:05:56 Some nitpicks here - (1) Is it correct to say "A
mitica 2013/09/19 11:49:00 Sounds good, I'll change it.
1154 // stacking context.
1150 unsigned m_paintingInsideReflection : 1; // A state bit tracking if we are p ainting inside a replica. 1155 unsigned m_paintingInsideReflection : 1; // A state bit tracking if we are p ainting inside a replica.
1151 unsigned m_inOverflowRelayout : 1; 1156 unsigned m_inOverflowRelayout : 1;
1152 unsigned m_repaintStatus : 2; // RepaintStatus 1157 unsigned m_repaintStatus : 2; // RepaintStatus
1153 1158
1154 unsigned m_visibleContentStatusDirty : 1; 1159 unsigned m_visibleContentStatusDirty : 1;
1155 unsigned m_hasVisibleContent : 1; 1160 unsigned m_hasVisibleContent : 1;
1156 unsigned m_visibleDescendantStatusDirty : 1; 1161 unsigned m_visibleDescendantStatusDirty : 1;
1157 unsigned m_hasVisibleDescendant : 1; 1162 unsigned m_hasVisibleDescendant : 1;
1158 1163
1159 unsigned m_isPaginated : 1; // If we think this layer is split by a multi-co lumn ancestor, then this bit will be set. 1164 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
1308 1313
1309 } // namespace WebCore 1314 } // namespace WebCore
1310 1315
1311 #ifndef NDEBUG 1316 #ifndef NDEBUG
1312 // Outside the WebCore namespace for ease of invocation from gdb. 1317 // Outside the WebCore namespace for ease of invocation from gdb.
1313 void showLayerTree(const WebCore::RenderLayer*); 1318 void showLayerTree(const WebCore::RenderLayer*);
1314 void showLayerTree(const WebCore::RenderObject*); 1319 void showLayerTree(const WebCore::RenderObject*);
1315 #endif 1320 #endif
1316 1321
1317 #endif // RenderLayer_h 1322 #endif // RenderLayer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698