Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(858)

Unified Diff: ui/views/mus/mus_client.cc

Issue 2746763007: Adds a factory function to ViewsDelegate for DesktopWindowTreeHost (Closed)
Patch Set: cleanup Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ui/views/mus/mus_client.h ('k') | ui/views/views_delegate.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/mus/mus_client.cc
diff --git a/ui/views/mus/mus_client.cc b/ui/views/mus/mus_client.cc
index d03fe330023562bae0eb1a4c7501bae58b50e42f..da055bef16a978201b63d3a59457367fe707720e 100644
--- a/ui/views/mus/mus_client.cc
+++ b/ui/views/mus/mus_client.cc
@@ -113,6 +113,8 @@ MusClient::MusClient(service_manager::Connector* connector,
ViewsDelegate::GetInstance()->set_native_widget_factory(
base::Bind(&MusClient::CreateNativeWidget, base::Unretained(this)));
+ ViewsDelegate::GetInstance()->set_desktop_window_tree_host_factory(base::Bind(
+ &MusClient::CreateDesktopWindowTreeHost, base::Unretained(this)));
}
MusClient::~MusClient() {
@@ -125,6 +127,8 @@ MusClient::~MusClient() {
if (ViewsDelegate::GetInstance()) {
ViewsDelegate::GetInstance()->set_native_widget_factory(
ViewsDelegate::NativeWidgetFactory());
+ ViewsDelegate::GetInstance()->set_desktop_window_tree_host_factory(
+ ViewsDelegate::DesktopWindowTreeHostFactory());
}
base::DiscardableMemoryAllocator::SetInstance(nullptr);
@@ -218,11 +222,8 @@ NativeWidget* MusClient::CreateNativeWidget(
native_widget->SetDesktopWindowTreeHost(
base::WrapUnique(init_params.desktop_window_tree_host));
} else {
- std::map<std::string, std::vector<uint8_t>> mus_properties =
- ConfigurePropertiesFromParams(init_params);
native_widget->SetDesktopWindowTreeHost(
- base::MakeUnique<DesktopWindowTreeHostMus>(delegate, native_widget,
- &mus_properties));
+ CreateDesktopWindowTreeHost(init_params, delegate, native_widget));
}
return native_widget;
}
@@ -253,6 +254,16 @@ void MusClient::SetMusPropertyMirror(
mus_property_mirror_ = std::move(mirror);
}
+std::unique_ptr<DesktopWindowTreeHost> MusClient::CreateDesktopWindowTreeHost(
+ const Widget::InitParams& init_params,
+ internal::NativeWidgetDelegate* delegate,
+ DesktopNativeWidgetAura* desktop_native_widget_aura) {
+ std::map<std::string, std::vector<uint8_t>> mus_properties =
+ ConfigurePropertiesFromParams(init_params);
+ return base::MakeUnique<DesktopWindowTreeHostMus>(
+ delegate, desktop_native_widget_aura, &mus_properties);
+}
+
void MusClient::OnEmbed(
std::unique_ptr<aura::WindowTreeHostMus> window_tree_host) {
NOTREACHED();
« no previous file with comments | « ui/views/mus/mus_client.h ('k') | ui/views/views_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698