| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/views/test/platform_test_helper.h" | 5 #include "ui/views/test/platform_test_helper.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/run_loop.h" |
| 8 #include "mojo/shell/background/background_shell.h" | 9 #include "mojo/shell/background/background_shell.h" |
| 9 #include "mojo/shell/background/tests/test_catalog_store.h" | 10 #include "mojo/shell/background/tests/test_catalog_store.h" |
| 10 #include "mojo/shell/public/cpp/connector.h" | 11 #include "mojo/shell/public/cpp/connector.h" |
| 11 #include "mojo/shell/public/cpp/shell_client.h" | 12 #include "mojo/shell/public/cpp/shell_client.h" |
| 12 #include "mojo/shell/public/cpp/shell_connection.h" | 13 #include "mojo/shell/public/cpp/shell_connection.h" |
| 13 #include "ui/aura/env.h" | 14 #include "ui/aura/env.h" |
| 14 #include "ui/views/mus/window_manager_connection.h" | 15 #include "ui/views/mus/window_manager_connection.h" |
| 15 #include "ui/views/views_delegate.h" | 16 #include "ui/views/views_delegate.h" |
| 16 | 17 |
| 17 using mojo::shell::BackgroundShell; | 18 using mojo::shell::BackgroundShell; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 42 PlatformTestHelperMus() { | 43 PlatformTestHelperMus() { |
| 43 background_shell_.reset(new BackgroundShell); | 44 background_shell_.reset(new BackgroundShell); |
| 44 scoped_ptr<BackgroundShell::InitParams> init_params( | 45 scoped_ptr<BackgroundShell::InitParams> init_params( |
| 45 new BackgroundShell::InitParams); | 46 new BackgroundShell::InitParams); |
| 46 init_params->catalog_store = BuildTestCatalogStore(); | 47 init_params->catalog_store = BuildTestCatalogStore(); |
| 47 background_shell_->Init(std::move(init_params)); | 48 background_shell_->Init(std::move(init_params)); |
| 48 shell_client_.reset(new DefaultShellClient); | 49 shell_client_.reset(new DefaultShellClient); |
| 49 shell_connection_.reset(new mojo::ShellConnection( | 50 shell_connection_.reset(new mojo::ShellConnection( |
| 50 shell_client_.get(), | 51 shell_client_.get(), |
| 51 background_shell_->CreateShellClientRequest(kTestName))); | 52 background_shell_->CreateShellClientRequest(kTestName))); |
| 53 |
| 54 // TODO(rockot): Remove this RunLoop. http://crbug.com/594852. |
| 55 base::RunLoop wait_loop; |
| 56 shell_connection_->set_initialize_handler(wait_loop.QuitClosure()); |
| 57 wait_loop.Run(); |
| 58 |
| 52 // ui/views/mus requires a WindowManager running, for now use the desktop | 59 // ui/views/mus requires a WindowManager running, for now use the desktop |
| 53 // one. | 60 // one. |
| 54 mojo::Connector* connector = shell_connection_->connector(); | 61 mojo::Connector* connector = shell_connection_->connector(); |
| 55 connector->Connect("mojo:desktop_wm"); | 62 connector->Connect("mojo:desktop_wm"); |
| 56 WindowManagerConnection::Create(connector); | 63 WindowManagerConnection::Create(connector); |
| 57 | 64 |
| 58 // On X we need to reset the ContextFactory before every NativeWidgetMus | 65 // On X we need to reset the ContextFactory before every NativeWidgetMus |
| 59 // is created. | 66 // is created. |
| 60 // TODO(sad): this is a hack, figure out a better solution. | 67 // TODO(sad): this is a hack, figure out a better solution. |
| 61 ViewsDelegate::GetInstance()->set_native_widget_factory(base::Bind( | 68 ViewsDelegate::GetInstance()->set_native_widget_factory(base::Bind( |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 }; | 100 }; |
| 94 | 101 |
| 95 } // namespace | 102 } // namespace |
| 96 | 103 |
| 97 // static | 104 // static |
| 98 scoped_ptr<PlatformTestHelper> PlatformTestHelper::Create() { | 105 scoped_ptr<PlatformTestHelper> PlatformTestHelper::Create() { |
| 99 return make_scoped_ptr(new PlatformTestHelperMus); | 106 return make_scoped_ptr(new PlatformTestHelperMus); |
| 100 } | 107 } |
| 101 | 108 |
| 102 } // namespace views | 109 } // namespace views |
| OLD | NEW |