diff options
Diffstat (limited to 'src/core/compositor.cpp')
-rw-r--r-- | src/core/compositor.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/core/compositor.cpp b/src/core/compositor.cpp index 20d956ab4..5dd053718 100644 --- a/src/core/compositor.cpp +++ b/src/core/compositor.cpp @@ -135,6 +135,10 @@ QSGNode *Compositor::updatePaintNode(QSGNode *oldNode) content::BrowserThread::UI, FROM_HERE, base::BindOnce(&Compositor::notifyFrameCommitted, m_weakPtrFactory.GetWeakPtr())); } + if (m_chromiumCompositorData->frameData.metadata.request_presentation_feedback) + content::BrowserThread::PostTask( + content::BrowserThread::UI, FROM_HERE, + base::BindOnce(&Compositor::sendPresentationFeedback, m_weakPtrFactory.GetWeakPtr(), m_chromiumCompositorData->frameData.metadata.frame_token)); return frameNode; } @@ -149,6 +153,12 @@ void Compositor::notifyFrameCommitted() m_resourcesToRelease.clear(); } +void Compositor::sendPresentationFeedback(uint frame_token) +{ + gfx::PresentationFeedback dummyFeedback(base::TimeTicks::Now(), base::TimeDelta(), gfx::PresentationFeedback::Flags::kVSync); + m_frameSinkClient->DidPresentCompositorFrame(frame_token, dummyFeedback); +} + bool Compositor::OnBeginFrameDerivedImpl(const viz::BeginFrameArgs &args) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |