| OLD | NEW |
| (Empty) |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "components/mus/ws/window_tree_factory.h" | |
| 6 | |
| 7 #include "base/memory/ptr_util.h" | |
| 8 #include "components/mus/ws/default_access_policy.h" | |
| 9 #include "components/mus/ws/window_server.h" | |
| 10 #include "components/mus/ws/window_tree.h" | |
| 11 #include "components/mus/ws/window_tree_binding.h" | |
| 12 | |
| 13 namespace mus { | |
| 14 namespace ws { | |
| 15 | |
| 16 WindowTreeFactory::WindowTreeFactory(WindowServer* window_server, | |
| 17 const UserId& user_id, | |
| 18 const std::string& client_name, | |
| 19 mojom::WindowTreeFactoryRequest request) | |
| 20 : window_server_(window_server), | |
| 21 user_id_(user_id), | |
| 22 client_name_(client_name), | |
| 23 binding_(this, std::move(request)) {} | |
| 24 | |
| 25 WindowTreeFactory::~WindowTreeFactory() {} | |
| 26 | |
| 27 void WindowTreeFactory::CreateWindowTree( | |
| 28 mojo::InterfaceRequest<mojom::WindowTree> tree_request, | |
| 29 mojom::WindowTreeClientPtr client) { | |
| 30 std::unique_ptr<ws::WindowTree> service( | |
| 31 new ws::WindowTree(window_server_, user_id_, nullptr, | |
| 32 base::WrapUnique(new DefaultAccessPolicy))); | |
| 33 std::unique_ptr<ws::DefaultWindowTreeBinding> binding( | |
| 34 new ws::DefaultWindowTreeBinding(service.get(), window_server_, | |
| 35 std::move(tree_request), | |
| 36 std::move(client))); | |
| 37 service->set_name(client_name_); | |
| 38 window_server_->AddTree(std::move(service), std::move(binding), nullptr); | |
| 39 } | |
| 40 | |
| 41 } // namespace ws | |
| 42 } // namespace mus | |
| OLD | NEW |