| Index: cc/layer_tree_host_impl.cc
|
| diff --git a/cc/layer_tree_host_impl.cc b/cc/layer_tree_host_impl.cc
|
| index 55f6452ded8bc55344b72f71dc08478de00335a7..4a459f726a8f0250a4024ae701c90b2530666a4c 100644
|
| --- a/cc/layer_tree_host_impl.cc
|
| +++ b/cc/layer_tree_host_impl.cc
|
| @@ -1724,4 +1724,30 @@ void LayerTreeHostImpl::animateScrollbarsRecursive(LayerImpl* layer, base::TimeT
|
| animateScrollbarsRecursive(layer->children()[i], time);
|
| }
|
|
|
| +// static
|
| +LayerImpl* LayerTreeHostImpl::getNonCompositedContentLayerRecursive(LayerImpl* layer)
|
| +{
|
| + if (!layer)
|
| + return NULL;
|
| +
|
| + if (layer->drawsContent())
|
| + return layer;
|
| +
|
| + for (LayerImpl::LayerList::const_iterator it = layer->children().begin();
|
| + it != layer->children().end(); ++it) {
|
| + LayerImpl* nccr = getNonCompositedContentLayerRecursive(*it);
|
| + if (nccr)
|
| + return nccr;
|
| + }
|
| +
|
| + return NULL;
|
| +}
|
| +
|
| +skia::RefPtr<SkPicture> LayerTreeHostImpl::capturePicture()
|
| +{
|
| + LayerTreeImpl* tree = pendingTree() ? pendingTree() : activeTree();
|
| + LayerImpl* layer = getNonCompositedContentLayerRecursive(tree->RootLayer());
|
| + return layer ? layer->getPicture() : skia::RefPtr<SkPicture>();
|
| +}
|
| +
|
| } // namespace cc
|
|
|