| Index: cc/single_thread_proxy.cc
|
| diff --git a/cc/single_thread_proxy.cc b/cc/single_thread_proxy.cc
|
| index 1dc1e6bb95354af91577bad1643439ce586dd5f9..aa60e3e52dd6550e89626c41c9ce019687ebac2e 100644
|
| --- a/cc/single_thread_proxy.cc
|
| +++ b/cc/single_thread_proxy.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "cc/single_thread_proxy.h"
|
|
|
| +#include "base/auto_reset.h"
|
| #include "base/debug/trace_event.h"
|
| #include "cc/draw_quad.h"
|
| #include "cc/layer_tree_host.h"
|
| @@ -25,6 +26,7 @@ SingleThreadProxy::SingleThreadProxy(LayerTreeHost* layerTreeHost)
|
| , m_outputSurfaceLost(false)
|
| , m_rendererInitialized(false)
|
| , m_nextFrameIsNewlyCommittedFrame(false)
|
| + , m_insideDraw(false)
|
| , m_totalCommitCount(0)
|
| {
|
| TRACE_EVENT0("cc", "SingleThreadProxy::SingleThreadProxy");
|
| @@ -269,6 +271,18 @@ void SingleThreadProxy::setNeedsRedrawOnImplThread()
|
| m_layerTreeHost->scheduleComposite();
|
| }
|
|
|
| +void SingleThreadProxy::didSwapUseIncompleteTextureOnImplThread()
|
| +{
|
| + // implSidePainting only.
|
| + NOTREACHED();
|
| +}
|
| +
|
| +void SingleThreadProxy::didUploadVisibleHighResolutionTileOnImplTread()
|
| +{
|
| + // implSidePainting only.
|
| + NOTREACHED();
|
| +}
|
| +
|
| void SingleThreadProxy::setNeedsCommitOnImplThread()
|
| {
|
| m_layerTreeHost->scheduleComposite();
|
| @@ -309,6 +323,11 @@ void SingleThreadProxy::sendManagedMemoryStats()
|
| m_layerTreeHost->contentsTextureManager()->memoryUseBytes());
|
| }
|
|
|
| +bool SingleThreadProxy::isInsideDraw()
|
| +{
|
| + return m_insideDraw;
|
| +}
|
| +
|
| // Called by the legacy scheduling path (e.g. where render_widget does the scheduling)
|
| void SingleThreadProxy::compositeImmediately()
|
| {
|
| @@ -359,6 +378,7 @@ bool SingleThreadProxy::doComposite()
|
| DCHECK(!m_outputSurfaceLost);
|
| {
|
| DebugScopedSetImplThread impl(this);
|
| + base::AutoReset<bool> markInside(&m_insideDraw, true);
|
|
|
| if (!m_layerTreeHostImpl->visible())
|
| return false;
|
|
|