diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-10-22 13:51:45 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2019-01-28 19:03:39 +0000 |
commit | e6e66c8a2db056f583627d0fb0be6152733d295f (patch) | |
tree | de8c2df853593123cebc18a2a8117f96949be420 /src/core/compositor | |
parent | d3a6b236949a0197f998eeb58145c208552de4fe (diff) |
Adaptations for Chromium 71
Change-Id: Ib650113b05dfd4771240804f94e33c07aa317bf2
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Diffstat (limited to 'src/core/compositor')
-rw-r--r-- | src/core/compositor/compositor.cpp | 19 | ||||
-rw-r--r-- | src/core/compositor/compositor.h | 1 | ||||
-rw-r--r-- | src/core/compositor/compositor_resource_fence.cpp | 2 | ||||
-rw-r--r-- | src/core/compositor/compositor_resource_tracker.cpp | 8 | ||||
-rw-r--r-- | src/core/compositor/content_gpu_client_qt.cpp | 4 | ||||
-rw-r--r-- | src/core/compositor/delegated_frame_node.cpp | 5 |
6 files changed, 20 insertions, 19 deletions
diff --git a/src/core/compositor/compositor.cpp b/src/core/compositor/compositor.cpp index 258fb47b4..0660c155b 100644 --- a/src/core/compositor/compositor.cpp +++ b/src/core/compositor/compositor.cpp @@ -42,7 +42,9 @@ #include "compositor_resource_tracker.h" #include "delegated_frame_node.h" +#include "base/task/post_task.h" #include "components/viz/common/resources/returned_resource.h" +#include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" #include "services/viz/public/interfaces/compositing/compositor_frame_sink.mojom.h" @@ -54,11 +56,10 @@ Compositor::Compositor(content::RenderWidgetHost *host) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); - base::SingleThreadTaskRunner *taskRunner = - content::BrowserThread::GetTaskRunnerForThread(content::BrowserThread::UI).get(); + m_taskRunner = base::CreateSingleThreadTaskRunnerWithTraits({content::BrowserThread::UI}); m_beginFrameSource = std::make_unique<viz::DelayBasedBeginFrameSource>( - std::make_unique<viz::DelayBasedTimeSource>(taskRunner), + std::make_unique<viz::DelayBasedTimeSource>(m_taskRunner.get()), viz::BeginFrameSource::kNotRestartableId); } @@ -127,18 +128,16 @@ QSGNode *Compositor::updatePaintNode(QSGNode *oldNode, RenderWidgetHostViewQtDel m_updatePaintNodeShouldCommit = false; if (m_committedFrame.metadata.request_presentation_feedback) - content::BrowserThread::PostTask( - content::BrowserThread::UI, FROM_HERE, - base::BindOnce(&Compositor::sendPresentationFeedback, m_weakPtrFactory.GetWeakPtr(), m_committedFrame.metadata.frame_token)); - + m_taskRunner->PostTask(FROM_HERE, + base::BindOnce(&Compositor::sendPresentationFeedback, m_weakPtrFactory.GetWeakPtr(), + m_committedFrame.metadata.frame_token)); m_resourceTracker->commitResources(); frameNode->commit(m_pendingFrame, m_committedFrame, m_resourceTracker.get(), viewDelegate); m_committedFrame = std::move(m_pendingFrame); m_pendingFrame = viz::CompositorFrame(); - content::BrowserThread::PostTask( - content::BrowserThread::UI, FROM_HERE, - base::BindOnce(&Compositor::notifyFrameCommitted, m_weakPtrFactory.GetWeakPtr())); + m_taskRunner->PostTask(FROM_HERE, + base::BindOnce(&Compositor::notifyFrameCommitted, m_weakPtrFactory.GetWeakPtr())); return frameNode; } diff --git a/src/core/compositor/compositor.h b/src/core/compositor/compositor.h index 5efe419cc..69f4a530c 100644 --- a/src/core/compositor/compositor.h +++ b/src/core/compositor/compositor.h @@ -118,6 +118,7 @@ private: bool m_updatePaintNodeShouldCommit = false; bool m_needsBeginFrames = false; + scoped_refptr<base::SingleThreadTaskRunner> m_taskRunner; base::WeakPtrFactory<Compositor> m_weakPtrFactory{this}; DISALLOW_COPY_AND_ASSIGN(Compositor); diff --git a/src/core/compositor/compositor_resource_fence.cpp b/src/core/compositor/compositor_resource_fence.cpp index 4efed00d3..7fc5fbfb2 100644 --- a/src/core/compositor/compositor_resource_fence.cpp +++ b/src/core/compositor/compositor_resource_fence.cpp @@ -39,7 +39,7 @@ #include "compositor_resource_fence.h" -#include <ui/gl/gl_context.h> +#include "ui/gl/gl_context.h" #include <QtGui/qopenglcontext.h> diff --git a/src/core/compositor/compositor_resource_tracker.cpp b/src/core/compositor/compositor_resource_tracker.cpp index 90f98191c..6530f3249 100644 --- a/src/core/compositor/compositor_resource_tracker.cpp +++ b/src/core/compositor/compositor_resource_tracker.cpp @@ -44,10 +44,12 @@ #include "web_engine_context.h" #include "base/message_loop/message_loop.h" +#include "base/task/post_task.h" #include "components/viz/common/quads/compositor_frame.h" #include "components/viz/common/resources/returned_resource.h" #include "components/viz/service/display_embedder/server_shared_bitmap_manager.h" #include "content/browser/browser_main_loop.h" +#include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" #include "content/public/gpu/content_gpu_client.h" #include "gpu/command_buffer/service/mailbox_manager.h" @@ -181,7 +183,7 @@ quint32 CompositorResourceTracker::consumeMailbox(const gpu::MailboxHolder &mail bool CompositorResourceTracker::scheduleUpdateMailbox(CompositorResource *resource) { #if QT_CONFIG(opengl) - gpu::SyncPointManager *syncPointManager = WebEngineContext::current()->syncPointManager(); + gpu::SyncPointManager *syncPointManager = WebEngineContext::syncPointManager(); DCHECK(syncPointManager); return syncPointManager->WaitOutOfOrder( resource->mailbox_holder.sync_token, @@ -241,8 +243,8 @@ void CompositorResourceTracker::updateMailboxes(std::vector<CompositorResource * void CompositorResourceTracker::scheduleRunSubmitCallback() { - content::BrowserThread::PostTask( - content::BrowserThread::UI, FROM_HERE, + base::PostTaskWithTraits( + FROM_HERE, { content::BrowserThread::UI }, base::BindOnce(&CompositorResourceTracker::runSubmitCallback, m_weakPtrFactory.GetWeakPtr())); } diff --git a/src/core/compositor/content_gpu_client_qt.cpp b/src/core/compositor/content_gpu_client_qt.cpp index 0317b503a..f934979a0 100644 --- a/src/core/compositor/content_gpu_client_qt.cpp +++ b/src/core/compositor/content_gpu_client_qt.cpp @@ -53,9 +53,7 @@ ContentGpuClientQt::~ContentGpuClientQt() gpu::SyncPointManager *ContentGpuClientQt::GetSyncPointManager() { - WebEngineContext *current = WebEngineContext::current(); - Q_ASSERT(current); - return current->syncPointManager(); + return WebEngineContext::syncPointManager(); } } // namespace diff --git a/src/core/compositor/delegated_frame_node.cpp b/src/core/compositor/delegated_frame_node.cpp index a4fcf8daf..e2b6714a1 100644 --- a/src/core/compositor/delegated_frame_node.cpp +++ b/src/core/compositor/delegated_frame_node.cpp @@ -952,8 +952,9 @@ void DelegatedFrameNode::handleQuad( MailboxTexture *texture = static_cast<MailboxTexture *>( initAndHoldTexture(resource, quad->ShouldDrawWithBlending(), apiDelegate, GL_TEXTURE_EXTERNAL_OES)); - nodeHandler->setupStreamVideoNode(texture, toQt(squad->rect), toQt(squad->matrix.matrix()), - currentLayerChain); + QMatrix4x4 qMatrix; + convertToQt(squad->matrix.matrix(), qMatrix); + nodeHandler->setupStreamVideoNode(texture, toQt(squad->rect), qMatrix, currentLayerChain); break; #endif // GL_OES_EGL_image_external #endif // QT_NO_OPENGL |