RenderLayerCompositing.h [plain text]
#if ENABLE(HW_COMP)
public:
bool isDocumentLayer() const { return m_object->node()->isDocumentNode(); }
bool isPlaceholderDocumentLayer() const;
void updateLayers();
void updateThisLayer();
void updatePageZoomFactor(float newZoom);
bool has3DContent() const;
void computeCompositingLayerRequirements(struct CompositingState& ioCompState);
void rebuildCompositingLayerTree(struct CompositingState& ioCompState);
RenderLayer* enclosingCompositingAncestor() const;
RenderLayer* enclosingCompositingLayer() const;
RenderLayer* enclosingCompositingClippingLayer() const;
bool needsContentsCompositingLayer() const;
void paintIntoLayer(RenderLayer* rootLayer, GraphicsContext*, const IntRect& paintDirtyRect,
bool haveTransparency, PaintRestriction paintRestriction, RenderLayerCompositePhase inCompositePhase, RenderObject* paintingRoot);
void paintCompositingLayerContents(GraphicsContext& inGraphicsContext, RenderLayerCompositePhase inCompositePhase, const IntRect& inClip);
bool compositingLayerContentsContainPoint(const IntPoint& inPoint, RenderLayerCompositePhase inCompositePhase, struct LayerHitTestData* inData);
void setNeedsRepaint();
void setNeedsRepaintInRect(const IntRect& r);
void enableCompositingMode(bool inEnable = true) const;
bool inCompositingMode() const;
bool requiresCompositingLayer() const;
bool shouldCreateCompositingLayer() const;
bool hasCompositingLayer() const;
LCLayer* compositingLayer() const { return m_layer; }
bool requiresClippingLayer() const;
bool hasClippingLayer() const { return m_clippingLayer != 0; }
LCLayer* clippingLayer() const { return m_clippingLayer; }
void setCompositingLayer(LCLayer* inLayer);
bool isSimpleContainerCompositingLayer();
bool useInnerContentLayer(bool& outHasBoxDecorations) const;
void rendererContentChanged();
bool rendererHasBackground() const;
const Color& rendererBackgroundColor();
IntSize contentOffsetInCompostingLayer();
IntSize contentSizeInCompositingLayer() const;
IntRect calculateCompositingLayerBounds(const RenderLayer* inRoot, IntRect& outLayerBoundingBox);
FloatPoint compositingLayerToLayerCoordinates(const FloatPoint& inPoint);
FloatPoint layerToCompositingLayerCoordinates(const FloatPoint& inPoint);
void forceCompositingLayer(bool inForce = true);
bool forcedCompositingLayer() const { return m_forceCompositingLayer; }
bool hasCompositingDescendant() const { return m_hasCompositingDescendant; }
private:
void setParent(RenderLayer* parent);
void setAsCompositingChildOfLayer(RenderLayer* inCompAncestor);
void setCompositingParent(RenderLayer* inCompLayer); RenderLayer* compositingParent() const;
void createCompositingLayer();
void destroyCompositingLayer();
LCLayer* hostingCompositingLayer() const;
void parentInRootLayer();
void unparentChildsLayer(RenderLayer* oldChild);
void updateCompositingLayer(bool hasOldStyle, bool inScheduleUpdate = true, bool inNeedsRepaint = true);
void updateCompositingLayerPosition();
void repaintCompositingLayerRect(const IntRect& inRect, bool inIncludeDescendents);
void setCompositingContentNeedsDisplay();
void setCompositingContentNeedsDisplayInRect(const IntRect& inRect);
bool computeIsSimpleContainerCompositingLayer();
bool hasNonCompositingContent();
bool animationRequiresCompositingLayer() const;
RenderLayer* findHitCompositingLayer(RenderLayer* rootLayer, const HitTestRequest& request, HitTestResult& result, const IntRect& hitTestRect, const IntPoint& hitTestPoint);
FloatPoint convertPointToLayer(const FloatPoint& inPoint, RenderLayer* inTargetLayer);
FloatPoint convertToPageUsingCompositingLayer(const FloatPoint& inPoint);
FloatPoint convertFromPageUsingCompositingLayer(const FloatPoint& inPoint);
void convertQuadToPageUsingCompositingLayer(FloatQuad& ioQuad);
#endif // ENABLE(HW_COMP)