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

Unified Diff: content/renderer/renderer_blink_platform_impl.cc

Issue 637303003: content: Add task queue manager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: First stab at blink integration. Created 6 years, 2 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
Index: content/renderer/renderer_blink_platform_impl.cc
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
index 3a0ccc35bad04b22350b102a4a29e1ed4577bd09..dfafc8707acfabb49ad860dc65b79d7ff988c23c 100644
--- a/content/renderer/renderer_blink_platform_impl.cc
+++ b/content/renderer/renderer_blink_platform_impl.cc
@@ -50,6 +50,7 @@
#include "content/renderer/media/webcontentdecryptionmodule_impl.h"
#include "content/renderer/render_thread_impl.h"
#include "content/renderer/renderer_clipboard_client.h"
+#include "content/renderer/scheduler/task_queue_manager.h"
#include "content/renderer/screen_orientation/screen_orientation_observer.h"
#include "content/renderer/webclipboard_impl.h"
#include "content/renderer/webgraphicscontext3d_provider_impl.h"
@@ -222,7 +223,9 @@ class RendererBlinkPlatformImpl::SandboxSupport
//------------------------------------------------------------------------------
RendererBlinkPlatformImpl::RendererBlinkPlatformImpl()
- : clipboard_client_(new RendererClipboardClient),
+ : task_queue_manager_(
+ new TaskQueueManager(base::MessageLoopProxy::current())),
+ clipboard_client_(new RendererClipboardClient),
clipboard_(new WebClipboardImpl(clipboard_client_.get())),
mime_registry_(new RendererBlinkPlatformImpl::MimeRegistry),
sudden_termination_disables_(0),
@@ -253,6 +256,12 @@ RendererBlinkPlatformImpl::~RendererBlinkPlatformImpl() {
//------------------------------------------------------------------------------
+void RendererBlinkPlatformImpl::callOnMainThread(void (*func)(void*),
+ void* context) {
+ task_queue_manager_->TaskRunnerForQueue(TaskQueueManager::kDefaultTaskQueue)
+ ->PostTask(FROM_HERE, base::Bind(func, context));
+}
+
blink::WebClipboard* RendererBlinkPlatformImpl::clipboard() {
blink::WebClipboard* clipboard =
GetContentClient()->renderer()->OverrideWebClipboard();

Powered by Google App Engine
This is Rietveld 408576698