diff options
author | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-08 01:45:24 +0000 |
---|---|---|
committer | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-08 01:45:24 +0000 |
commit | 0f077a5f3e29d65a06794f44c31703421e1099b5 (patch) | |
tree | e03e164915723038aae056b913078d5ece62679b /cc/CCThreadProxy.cpp | |
parent | 495972babd62847cc623537adfadefe95bb728f7 (diff) | |
download | chromium_src-0f077a5f3e29d65a06794f44c31703421e1099b5.zip chromium_src-0f077a5f3e29d65a06794f44c31703421e1099b5.tar.gz chromium_src-0f077a5f3e29d65a06794f44c31703421e1099b5.tar.bz2 |
Update cc snapshot to r127918
TBR=nduca@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/10917153
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155554 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/CCThreadProxy.cpp')
-rw-r--r-- | cc/CCThreadProxy.cpp | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/cc/CCThreadProxy.cpp b/cc/CCThreadProxy.cpp index 184ec51..1bbe5bc 100644 --- a/cc/CCThreadProxy.cpp +++ b/cc/CCThreadProxy.cpp @@ -51,7 +51,6 @@ CCThreadProxy::CCThreadProxy(CCLayerTreeHost* layerTreeHost) , m_commitRequestSentToImplThread(false) , m_forcedCommitRequested(false) , m_layerTreeHost(layerTreeHost) - , m_compositorIdentifier(-1) , m_rendererInitialized(false) , m_started(false) , m_texturesAcquired(true) @@ -251,12 +250,6 @@ bool CCThreadProxy::recreateContext() return recreateSucceeded; } -int CCThreadProxy::compositorIdentifier() const -{ - ASSERT(isMainThread()); - return m_compositorIdentifier; -} - void CCThreadProxy::implSideRenderingStats(CCRenderingStats& stats) { ASSERT(isMainThread()); @@ -389,7 +382,8 @@ void CCThreadProxy::start() // Create LayerTreeHostImpl. DebugScopedSetMainThreadBlocked mainThreadBlocked; CCCompletionEvent completion; - CCProxy::implThread()->postTask(createCCThreadTask(this, &CCThreadProxy::initializeImplOnImplThread, &completion)); + OwnPtr<CCInputHandler> handler = m_layerTreeHost->createInputHandler(); + CCProxy::implThread()->postTask(createCCThreadTask(this, &CCThreadProxy::initializeImplOnImplThread, &completion, handler.release())); completion.wait(); m_started = true; @@ -682,7 +676,8 @@ CCScheduledActionDrawAndSwapResult CCThreadProxy::scheduledActionDrawAndSwapInte double monotonicTime = monotonicallyIncreasingTime(); double wallClockTime = currentTime(); - m_inputHandlerOnImplThread->animate(monotonicTime); + if (m_inputHandlerOnImplThread) + m_inputHandlerOnImplThread->animate(monotonicTime); m_layerTreeHostImpl->animate(monotonicTime, wallClockTime); // This method is called on a forced draw, regardless of whether we are able to produce a frame, @@ -835,7 +830,7 @@ void CCThreadProxy::tryToRecreateContext() m_contextRecreationTimer.clear(); } -void CCThreadProxy::initializeImplOnImplThread(CCCompletionEvent* completion) +void CCThreadProxy::initializeImplOnImplThread(CCCompletionEvent* completion, PassOwnPtr<CCInputHandler> popHandler) { TRACE_EVENT0("cc", "CCThreadProxy::initializeImplOnImplThread"); ASSERT(isImplThread()); @@ -849,8 +844,9 @@ void CCThreadProxy::initializeImplOnImplThread(CCCompletionEvent* completion) m_schedulerOnImplThread = CCScheduler::create(this, frameRateController.release()); m_schedulerOnImplThread->setVisible(m_layerTreeHostImpl->visible()); - m_inputHandlerOnImplThread = CCInputHandler::create(m_layerTreeHostImpl.get()); - m_compositorIdentifier = m_inputHandlerOnImplThread->identifier(); + m_inputHandlerOnImplThread = popHandler; + if (m_inputHandlerOnImplThread) + m_inputHandlerOnImplThread->bindToClient(m_layerTreeHostImpl.get()); completion->signal(); } |