Lines Matching refs:layer

32 static const RenderLayer* findParentLayerOnClippingContainerChain(const RenderLayer* layer)
34 RenderObject* current = layer->renderer();
42 return static_cast<const RenderLayerModelObject*>(current)->layer();
49 return static_cast<const RenderLayerModelObject*>(current)->layer();
57 return static_cast<const RenderLayerModelObject*>(current)->layer();
58 // Having clip or overflow clip forces the RenderObject to become a layer.
69 return static_cast<const RenderLayerModelObject*>(current)->layer();
75 static bool hasClippedStackingAncestor(const RenderLayer* layer, const RenderLayer* clippingLayer)
77 if (layer == clippingLayer)
80 for (const RenderLayer* current = layer->compositingContainer(); current && current != clippingLayer; current = current->compositingContainer()) {
92 void CompositingInputsUpdater::updateRecursive(RenderLayer* layer, UpdateType updateType, AncestorInfo info)
94 if (!layer->childNeedsCompositingInputsUpdate() && updateType != ForceUpdate)
97 m_geometryMap.pushMappingsToAncestor(layer, layer->parent());
99 if (layer->hasCompositedLayerMapping())
100 info.enclosingCompositedLayer = layer;
102 if (layer->needsCompositingInputsUpdate()) {
111 if (!layer->isRootLayer()) {
112 properties.clippedAbsoluteBoundingBox = enclosingIntRect(m_geometryMap.absoluteRect(layer->boundingBoxForCompositingOverlapTest()));
119 IntRect clipRect = pixelSnappedIntRect(layer->clipper().backgroundClipRect(ClipRectsContext(m_rootRenderLayer, AbsoluteClipRects)).rect());
122 const RenderLayer* parent = layer->parent();
128 const RenderLayer* parentLayerOnClippingContainerChain = findParentLayerOnClippingContainerChain(layer);
134 const RenderObject* containingBlock = layer->renderer()->containingBlock();
141 if (layer->renderer()->isOutOfFlowPositioned() && !layer->subtreeIsInvisible()) {
143 const RenderLayer* clippingLayer = properties.clippingContainer ? properties.clippingContainer->enclosingLayer() : layer->compositor()->rootRenderLayer();
145 if (hasClippedStackingAncestor(layer, clippingLayer))
149 if (!layer->stackingNode()->isNormalFlowOnly()
157 layer->updateAncestorDependentCompositingInputs(properties);
160 if (layer->stackingNode()->isStackingContext())
161 info.ancestorStackingContext = layer;
163 if (layer->scrollsOverflow())
164 info.lastScrollingAncestor = layer;
166 if (layer->renderer()->hasClipOrOverflowClip())
169 if (layer->renderer()->hasClipPath())
173 for (RenderLayer* child = layer->firstChild(); child; child = child->nextSibling()) {
180 layer->updateDescendantDependentCompositingInputs(descendantProperties);
181 layer->didUpdateCompositingInputs();
183 m_geometryMap.popMappingsToAncestor(layer->parent());
188 void CompositingInputsUpdater::assertNeedsCompositingInputsUpdateBitsCleared(RenderLayer* layer)
190 ASSERT(!layer->childNeedsCompositingInputsUpdate());
191 ASSERT(!layer->needsCompositingInputsUpdate());
193 for (RenderLayer* child = layer->firstChild(); child; child = child->nextSibling())