Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3935)

Unified Diff: cc/CCThreadProxy.cpp

Issue 10917265: cc: Remove partial texture updates from scheduler. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: s/startMoreUpdates/performMoreUpdates/ Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/CCThreadProxy.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/CCThreadProxy.cpp
diff --git a/cc/CCThreadProxy.cpp b/cc/CCThreadProxy.cpp
index ec86bef955c7c1ec6b654e286fcd1ba72c91104c..cf425e9880d6495109ead2fdcd56d0ca3efb82ff 100644
--- a/cc/CCThreadProxy.cpp
+++ b/cc/CCThreadProxy.cpp
@@ -593,9 +593,8 @@ void CCThreadProxy::beginFrameCompleteOnImplThread(CCCompletionEvent* completion
setNeedsCommitOnImplThread();
}
- bool hasResourceUpdates = queue->hasMoreUpdates();
- if (hasResourceUpdates)
- m_currentTextureUpdateControllerOnImplThread = CCTextureUpdateController::create(this, CCProxy::implThread(), queue, m_layerTreeHostImpl->resourceProvider(), m_layerTreeHostImpl->renderer()->textureCopier(), m_layerTreeHostImpl->renderer()->textureUploader());
+ bool hasResourceUpdates = !!queue->fullUploadSize();
+ m_currentTextureUpdateControllerOnImplThread = CCTextureUpdateController::create(this, CCProxy::implThread(), queue, m_layerTreeHostImpl->resourceProvider(), m_layerTreeHostImpl->renderer()->textureCopier(), m_layerTreeHostImpl->renderer()->textureUploader());
m_commitCompletionEventOnImplThread = completion;
m_schedulerOnImplThread->beginFrameComplete(hasResourceUpdates);
@@ -615,7 +614,8 @@ void CCThreadProxy::scheduledActionUpdateMoreResources(double monotonicTimeLimit
{
TRACE_EVENT0("cc", "CCThreadProxy::scheduledActionUpdateMoreResources");
ASSERT(m_currentTextureUpdateControllerOnImplThread);
- m_currentTextureUpdateControllerOnImplThread->updateMoreTextures(monotonicTimeLimit);
+ m_currentTextureUpdateControllerOnImplThread->performMoreUpdates(
+ monotonicTimeLimit);
}
void CCThreadProxy::scheduledActionCommit()
@@ -623,7 +623,10 @@ void CCThreadProxy::scheduledActionCommit()
TRACE_EVENT0("cc", "CCThreadProxy::scheduledActionCommit");
ASSERT(isImplThread());
ASSERT(m_commitCompletionEventOnImplThread);
+ ASSERT(m_currentTextureUpdateControllerOnImplThread);
+ // Complete all remaining texture updates.
+ m_currentTextureUpdateControllerOnImplThread->finalize();
m_currentTextureUpdateControllerOnImplThread.clear();
m_layerTreeHostImpl->beginCommit();
@@ -761,7 +764,7 @@ CCScheduledActionDrawAndSwapResult CCThreadProxy::scheduledActionDrawAndSwapForc
return scheduledActionDrawAndSwapInternal(true);
}
-void CCThreadProxy::updateTexturesCompleted()
+void CCThreadProxy::readyToFinalizeTextureUpdates()
{
ASSERT(isImplThread());
m_schedulerOnImplThread->updateResourcesComplete();
« no previous file with comments | « cc/CCThreadProxy.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698