Index: ui/views/mus/mus_client.cc |
diff --git a/ui/views/mus/mus_client.cc b/ui/views/mus/mus_client.cc |
index 5cf4487bb5bea87dae24a80e39b37e72241313a5..e9ed297f500d3c3d1f808a7a65fcb87a7046b1f5 100644 |
--- a/ui/views/mus/mus_client.cc |
+++ b/ui/views/mus/mus_client.cc |
@@ -55,6 +55,45 @@ namespace views { |
// static |
MusClient* MusClient::instance_ = nullptr; |
+MusClient::MusClient(service_manager::Connector* connector, |
+ const service_manager::Identity& identity, |
+ scoped_refptr<base::SingleThreadTaskRunner> io_task_runner, |
+ bool create_wm_state) |
+ : identity_(identity) { |
+ DCHECK(!instance_); |
+ instance_ = this; |
+ // TODO(msw): Avoid this... use some default value? Allow clients to extend? |
+ property_converter_ = base::MakeUnique<aura::PropertyConverter>(); |
+ |
+ if (create_wm_state) |
+ wm_state_ = base::MakeUnique<wm::WMState>(); |
+ |
+ gpu_ = ui::Gpu::Create(connector, std::move(io_task_runner)); |
+ compositor_context_factory_ = |
+ base::MakeUnique<aura::MusContextFactory>(gpu_.get()); |
+ aura::Env::GetInstance()->set_context_factory( |
+ compositor_context_factory_.get()); |
+ window_tree_client_ = |
+ base::MakeUnique<aura::WindowTreeClient>(connector, this); |
+ aura::Env::GetInstance()->SetWindowTreeClient(window_tree_client_.get()); |
+ window_tree_client_->ConnectViaWindowTreeFactory(); |
+ |
+ pointer_watcher_event_router_ = |
+ base::MakeUnique<PointerWatcherEventRouter2>(window_tree_client_.get()); |
+ |
+ screen_ = base::MakeUnique<ScreenMus>(this); |
+ screen_->Init(connector); |
+ |
+ std::unique_ptr<ClipboardMus> clipboard = base::MakeUnique<ClipboardMus>(); |
+ clipboard->Init(connector); |
+ ui::Clipboard::SetClipboardForCurrentThread(std::move(clipboard)); |
+ |
+ ui::OSExchangeDataProviderFactory::SetFactory(this); |
+ |
+ ViewsDelegate::GetInstance()->set_native_widget_factory( |
+ base::Bind(&MusClient::CreateNativeWidget, base::Unretained(this))); |
+} |
+ |
MusClient::~MusClient() { |
// ~WindowTreeClient calls back to us (we're its delegate), destroy it while |
// we are still valid. |
@@ -168,43 +207,6 @@ void MusClient::RemoveObserver(MusClientObserver* observer) { |
observer_list_.RemoveObserver(observer); |
} |
-MusClient::MusClient(service_manager::Connector* connector, |
- const service_manager::Identity& identity, |
- scoped_refptr<base::SingleThreadTaskRunner> io_task_runner) |
- : identity_(identity) { |
- DCHECK(!instance_); |
- instance_ = this; |
- // TODO(msw): Avoid this... use some default value? Allow clients to extend? |
- property_converter_ = base::MakeUnique<aura::PropertyConverter>(); |
- |
- wm_state_ = base::MakeUnique<wm::WMState>(); |
- |
- gpu_ = ui::Gpu::Create(connector, std::move(io_task_runner)); |
- compositor_context_factory_ = |
- base::MakeUnique<aura::MusContextFactory>(gpu_.get()); |
- aura::Env::GetInstance()->set_context_factory( |
- compositor_context_factory_.get()); |
- window_tree_client_ = |
- base::MakeUnique<aura::WindowTreeClient>(connector, this); |
- aura::Env::GetInstance()->SetWindowTreeClient(window_tree_client_.get()); |
- window_tree_client_->ConnectViaWindowTreeFactory(); |
- |
- pointer_watcher_event_router_ = |
- base::MakeUnique<PointerWatcherEventRouter2>(window_tree_client_.get()); |
- |
- screen_ = base::MakeUnique<ScreenMus>(this); |
- screen_->Init(connector); |
- |
- std::unique_ptr<ClipboardMus> clipboard = base::MakeUnique<ClipboardMus>(); |
- clipboard->Init(connector); |
- ui::Clipboard::SetClipboardForCurrentThread(std::move(clipboard)); |
- |
- ui::OSExchangeDataProviderFactory::SetFactory(this); |
- |
- ViewsDelegate::GetInstance()->set_native_widget_factory( |
- base::Bind(&MusClient::CreateNativeWidget, base::Unretained(this))); |
-} |
- |
void MusClient::OnEmbed( |
std::unique_ptr<aura::WindowTreeHostMus> window_tree_host) { |
NOTREACHED(); |