Index: Source/core/rendering/RenderLayer.h |
diff --git a/Source/core/rendering/RenderLayer.h b/Source/core/rendering/RenderLayer.h |
index afcfb9c5d162e1218508025e3ead04511bba658e..493b879084df64ebef829da9b79b21e94f445e5f 100644 |
--- a/Source/core/rendering/RenderLayer.h |
+++ b/Source/core/rendering/RenderLayer.h |
@@ -50,6 +50,7 @@ |
#include "core/rendering/LayerPaintingInfo.h" |
#include "core/rendering/PaintInfo.h" |
#include "core/rendering/RenderBox.h" |
+#include "core/rendering/RenderLayerBlendInfo.h" |
#include "core/rendering/RenderLayerClipper.h" |
#include "core/rendering/RenderLayerFilterInfo.h" |
#include "core/rendering/RenderLayerReflectionInfo.h" |
@@ -167,8 +168,6 @@ public: |
void updateTransform(); |
- void updateBlendMode(); |
- |
const LayoutSize& offsetForInFlowPosition() const { return m_offsetForInFlowPosition; } |
void addBlockSelectionGapsBounds(const LayoutRect&); |
@@ -206,8 +205,6 @@ public: |
void setHasOutOfFlowPositionedDescendant(bool hasDescendant) { m_hasOutOfFlowPositionedDescendant = hasDescendant; } |
void setHasOutOfFlowPositionedDescendantDirty(bool dirty) { m_hasOutOfFlowPositionedDescendantDirty = dirty; } |
- bool childLayerHasBlendMode() const { ASSERT(!m_childLayerHasBlendModeStatusDirty); return m_childLayerHasBlendMode; } |
- |
bool hasUnclippedDescendant() const { return m_hasUnclippedDescendant; } |
void setHasUnclippedDescendant(bool hasDescendant) { m_hasUnclippedDescendant = hasDescendant; } |
void updateHasUnclippedDescendant(); |
@@ -336,8 +333,7 @@ public: |
void filterNeedsRepaint(); |
bool hasFilter() const { return renderer()->hasFilter(); } |
- bool hasBlendMode() const; |
- bool paintsWithBlendMode() const { return hasBlendMode() && compositingState() != PaintsIntoOwnBacking; } |
+ bool paintsWithBlendMode() const { return m_blendInfo.hasBlendMode() && compositingState() != PaintsIntoOwnBacking; } |
void* operator new(size_t); |
// Only safe to call from RenderLayerModelObject::destroyLayer() |
@@ -443,6 +439,8 @@ public: |
PassOwnPtr<Vector<FloatRect> > collectTrackedRepaintRects() const; |
+ RenderLayerBlendInfo& blendInfo() { return m_blendInfo; } |
+ |
private: |
bool hasOverflowControls() const; |
@@ -567,9 +565,6 @@ private: |
void dirtyAncestorChainVisibleDescendantStatus(); |
void setAncestorChainHasVisibleDescendant(); |
- void dirtyAncestorChainBlendedDescendantStatus(); |
- void setAncestorChainBlendedDescendant(); |
- |
void updateDescendantDependentFlags(); |
// This flag is computed by RenderLayerCompositor, which knows more about 3d hierarchies than we do. |
@@ -633,9 +628,6 @@ protected: |
// we ended up painting this layer or any descendants (and therefore need to |
// blend). |
- unsigned m_childLayerHasBlendMode : 1; |
- unsigned m_childLayerHasBlendModeStatusDirty : 1; |
- |
unsigned m_visibleContentStatusDirty : 1; |
unsigned m_hasVisibleContent : 1; |
unsigned m_visibleDescendantStatusDirty : 1; |
@@ -659,8 +651,6 @@ protected: |
unsigned m_hasFilterInfo : 1; |
- blink::WebBlendMode m_blendMode; |
- |
RenderLayerModelObject* m_renderer; |
RenderLayer* m_parent; |
@@ -730,6 +720,7 @@ private: |
RenderLayerClipper m_clipper; // FIXME: Lazily allocate? |
OwnPtr<RenderLayerStackingNode> m_stackingNode; |
OwnPtr<RenderLayerReflectionInfo> m_reflectionInfo; |
+ RenderLayerBlendInfo m_blendInfo; |
}; |
} // namespace WebCore |