Index: mojo/services/html_viewer/webthread_impl.cc |
diff --git a/mojo/services/html_viewer/webthread_impl.cc b/mojo/services/html_viewer/webthread_impl.cc |
index 2fad29534ba85527c14f7af51ecb32c8e05301a1..a6f6f64771a4fac554071025bfd056af921c3cd7 100644 |
--- a/mojo/services/html_viewer/webthread_impl.cc |
+++ b/mojo/services/html_viewer/webthread_impl.cc |
@@ -57,7 +57,8 @@ void WebThreadBase::removeTaskObserver(TaskObserver* observer) { |
} |
WebThreadImpl::WebThreadImpl(const char* name) |
- : thread_(new base::Thread(name)) { |
+ : thread_(new base::Thread(name)), |
+ web_scheduler_(new WebSchedulerImpl(thread_->task_runner())) { |
thread_->Start(); |
} |
@@ -116,6 +117,10 @@ void WebThreadImpl::exitRunLoop() { |
thread_->message_loop()->Quit(); |
} |
+blink::WebScheduler* WebThreadImpl::scheduler() const { |
+ return web_scheduler_.get(); |
+} |
+ |
bool WebThreadImpl::isCurrentThread() const { |
return thread_->thread_id() == base::PlatformThread::CurrentId(); |
} |
@@ -130,7 +135,9 @@ WebThreadImpl::~WebThreadImpl() { |
WebThreadImplForMessageLoop::WebThreadImplForMessageLoop( |
base::MessageLoopProxy* message_loop) |
- : message_loop_(message_loop) {} |
+ : message_loop_(message_loop), |
+ web_scheduler_(new WebSchedulerImpl(message_loop_)) { |
+} |
void WebThreadImplForMessageLoop::postTask( |
const blink::WebTraceLocation& location, |
@@ -163,6 +170,10 @@ void WebThreadImplForMessageLoop::exitRunLoop() { |
base::MessageLoop::current()->Quit(); |
} |
+blink::WebScheduler* WebThreadImplForMessageLoop::scheduler() const { |
+ return web_scheduler_.get(); |
+} |
+ |
bool WebThreadImplForMessageLoop::isCurrentThread() const { |
return message_loop_->BelongsToCurrentThread(); |
} |