Index: content/child/blink_platform_impl.h |
diff --git a/content/child/blink_platform_impl.h b/content/child/blink_platform_impl.h |
index 25c164936ccbd92c1da18d348e5dfd2c19c2e7bf..c9d39864ef07377a1eaabb786aafc3ef92a2eedd 100644 |
--- a/content/child/blink_platform_impl.h |
+++ b/content/child/blink_platform_impl.h |
@@ -32,6 +32,10 @@ namespace base { |
class MessageLoop; |
} |
+namespace scheduler { |
+class WebThreadBase; |
+} |
+ |
namespace content { |
class BackgroundSyncProvider; |
class FlingCurveConfiguration; |
@@ -167,6 +171,7 @@ class CONTENT_EXPORT BlinkPlatformImpl |
double systemTraceTime() override; |
void cryptographicallyRandomValues(unsigned char* buffer, |
size_t length) override; |
+ blink::WebThread* compositorThread() const override; |
blink::WebGestureCurve* createFlingAnimationCurve( |
blink::WebGestureDevice device_source, |
const blink::WebFloatPoint& velocity, |
@@ -187,6 +192,16 @@ class CONTENT_EXPORT BlinkPlatformImpl |
blink::WebString domKeyStringFromEnum(int dom_key) override; |
int domKeyEnumFromString(const blink::WebString& key_string) override; |
+ blink::WebThread* createThreadWithOptions(const char* name, |
piman
2015/12/01 23:44:41
nit: can you have this return a scoped_ptr<WebThre
Ian Vollick
2015/12/02 00:26:40
Done.
|
+ base::Thread::Options); |
+ |
+ // This class does *not* own |compositor_thread|. It is the responsibility of |
+ // the caller to ensure that the compositor thread is cleared before it is |
+ // destructed. |
+ void set_compositor_thread(scheduler::WebThreadBase* compositor_thread) { |
+ compositor_thread_ = compositor_thread; |
+ } |
+ |
private: |
void InternalInit(); |
void UpdateWebThreadTLS(blink::WebThread* thread); |
@@ -208,6 +223,8 @@ class CONTENT_EXPORT BlinkPlatformImpl |
scoped_refptr<PushDispatcher> push_dispatcher_; |
scoped_ptr<PermissionDispatcher> permission_client_; |
scoped_ptr<BackgroundSyncProvider> main_thread_sync_provider_; |
+ |
+ scheduler::WebThreadBase* compositor_thread_; |
}; |
} // namespace content |