| Index: ui/aura/mus/mus_context_factory.cc
|
| diff --git a/ui/aura/mus/mus_context_factory.cc b/ui/aura/mus/mus_context_factory.cc
|
| index 9517875318f35ee39d05ef00313a8b7970cf1c18..8361f70616c0bb90c97b20c5dad99606d9805c4a 100644
|
| --- a/ui/aura/mus/mus_context_factory.cc
|
| +++ b/ui/aura/mus/mus_context_factory.cc
|
| @@ -50,8 +50,15 @@ void MusContextFactory::CreateCompositorFrameSink(
|
|
|
| scoped_refptr<cc::ContextProvider>
|
| MusContextFactory::SharedMainThreadContextProvider() {
|
| - // NOTIMPLEMENTED();
|
| - return nullptr;
|
| + if (!shared_main_thread_context_provider_) {
|
| + scoped_refptr<gpu::GpuChannelHost> gpu_channel =
|
| + gpu_->EstablishGpuChannelSync();
|
| + shared_main_thread_context_provider_ =
|
| + gpu_->CreateContextProvider(gpu_channel);
|
| + if (!shared_main_thread_context_provider_->BindToCurrentThread())
|
| + shared_main_thread_context_provider_ = nullptr;
|
| + }
|
| + return shared_main_thread_context_provider_;
|
| }
|
|
|
| void MusContextFactory::RemoveCompositor(ui::Compositor* compositor) {
|
|
|