| 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 71698063c0639e72494947b2103a2a4bd99dbcfc..dda4e63257f4acf0493166c127a163f7630b3dc3 100644
|
| --- a/ui/aura/mus/mus_context_factory.cc
|
| +++ b/ui/aura/mus/mus_context_factory.cc
|
| @@ -62,8 +62,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(std::move(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) {
|
|
|