示例#1
0
static void paintLayers(GraphicsLayer& layer, SimDisplayItemList& displayList) {
  if (layer.drawsContent() && layer.hasTrackedRasterInvalidations()) {
    ContentLayerDelegate* delegate = layer.contentLayerDelegateForTesting();
    delegate->paintContents(&displayList);
    layer.resetTrackedRasterInvalidations();
  }

  if (GraphicsLayer* maskLayer = layer.maskLayer())
    paintLayers(*maskLayer, displayList);
  if (GraphicsLayer* contentsClippingMaskLayer =
          layer.contentsClippingMaskLayer())
    paintLayers(*contentsClippingMaskLayer, displayList);

  for (auto child : layer.children())
    paintLayers(*child, displayList);
}
static void paintFrames(LocalFrame& root, SimDisplayItemList& displayList)
{
    for (Frame* frame = &root; frame; frame = frame->tree().traverseNext(&root)) {
        if (!frame->isLocalFrame())
            continue;
        PaintLayer* layer = toLocalFrame(frame)->view()->layoutView()->layer();
        paintLayers(*layer, displayList);
    }
}
static void paintLayers(PaintLayer& layer, SimDisplayItemList& displayList)
{
    if (layer.isAllowedToQueryCompositingState() && layer.compositingState() == PaintsIntoOwnBacking) {
        CompositedLayerMapping* mapping = layer.compositedLayerMapping();
        GraphicsLayer* graphicsLayer = mapping->mainGraphicsLayer();
        if (graphicsLayer->hasTrackedPaintInvalidations()) {
            ContentLayerDelegate* delegate = graphicsLayer->contentLayerDelegateForTesting();
            delegate->paintContents(&displayList, WebRect(0, 0, layer.size().width(), layer.size().height()));
            graphicsLayer->resetTrackedPaintInvalidations();
        }
    }
    for (PaintLayer* child = layer.firstChild(); child; child = child->nextSibling())
        paintLayers(*child, displayList);
}
示例#4
0
static void paintFrames(LocalFrame& root, SimDisplayItemList& displayList) {
  GraphicsLayer* layer =
      root.view()->layoutViewItem().compositor()->rootGraphicsLayer();
  paintLayers(*layer, displayList);
}