| Index: services/ui/launcher/launcher_app.cc
|
| diff --git a/services/ui/launcher/launcher_app.cc b/services/ui/launcher/launcher_app.cc
|
| index b29f8316208978fc84d49f44b851cf38955c505a..0359d9577e9290cff93e0aa1662c7fa493d4c169 100644
|
| --- a/services/ui/launcher/launcher_app.cc
|
| +++ b/services/ui/launcher/launcher_app.cc
|
| @@ -8,29 +8,25 @@
|
| #include "base/logging.h"
|
| #include "base/strings/string_split.h"
|
| #include "base/trace_event/trace_event.h"
|
| -#include "mojo/application/application_runner_chromium.h"
|
| #include "mojo/common/tracing_impl.h"
|
| -#include "mojo/public/c/system/main.h"
|
| -#include "mojo/public/cpp/application/application_impl.h"
|
| #include "mojo/public/cpp/application/connect.h"
|
| +#include "mojo/public/cpp/application/run_application.h"
|
| #include "mojo/public/cpp/application/service_provider_impl.h"
|
|
|
| namespace launcher {
|
|
|
| -LauncherApp::LauncherApp() : app_impl_(nullptr), next_id_(0u) {}
|
| +LauncherApp::LauncherApp() : next_id_(0u) {}
|
|
|
| LauncherApp::~LauncherApp() {}
|
|
|
| -void LauncherApp::Initialize(mojo::ApplicationImpl* app_impl) {
|
| - app_impl_ = app_impl;
|
| -
|
| +void LauncherApp::OnInitialize() {
|
| auto command_line = base::CommandLine::ForCurrentProcess();
|
| - command_line->InitFromArgv(app_impl_->args());
|
| + command_line->InitFromArgv(args());
|
| logging::LoggingSettings settings;
|
| settings.logging_dest = logging::LOG_TO_SYSTEM_DEBUG_LOG;
|
| logging::InitLogging(settings);
|
|
|
| - tracing_.Initialize(app_impl_->shell(), &app_impl_->args());
|
| + tracing_.Initialize(shell(), &args());
|
| TRACE_EVENT0("launcher", __func__);
|
|
|
| InitCompositor();
|
| @@ -43,14 +39,14 @@ void LauncherApp::Initialize(mojo::ApplicationImpl* app_impl) {
|
| }
|
|
|
| void LauncherApp::InitCompositor() {
|
| - mojo::ConnectToService(app_impl_->shell(), "mojo:compositor_service",
|
| + mojo::ConnectToService(shell(), "mojo:compositor_service",
|
| GetProxy(&compositor_));
|
| compositor_.set_connection_error_handler(base::Bind(
|
| &LauncherApp::OnCompositorConnectionError, base::Unretained(this)));
|
| }
|
|
|
| void LauncherApp::InitViewManager() {
|
| - mojo::ConnectToService(app_impl_->shell(), "mojo:view_manager_service",
|
| + mojo::ConnectToService(shell(), "mojo:view_manager_service",
|
| GetProxy(&view_manager_));
|
| view_manager_.set_connection_error_handler(base::Bind(
|
| &LauncherApp::OnViewManagerConnectionError, base::Unretained(this)));
|
| @@ -76,7 +72,7 @@ void LauncherApp::InitViewAssociates(
|
| // Connect to the ViewAssociate.
|
| DVLOG(2) << "Connecting to ViewAssociate " << url;
|
| mojo::ui::ViewAssociatePtr view_associate;
|
| - mojo::ConnectToService(app_impl_->shell(), url, GetProxy(&view_associate));
|
| + mojo::ConnectToService(shell(), url, GetProxy(&view_associate));
|
|
|
| // Wire up the associate to the ViewManager.
|
| mojo::ui::ViewAssociateOwnerPtr view_associate_owner;
|
| @@ -91,7 +87,7 @@ void LauncherApp::InitViewAssociates(
|
| view_manager_->FinishedRegisteringViewAssociates();
|
| }
|
|
|
| -bool LauncherApp::ConfigureIncomingConnection(
|
| +bool LauncherApp::OnAcceptConnection(
|
| mojo::ServiceProviderImpl* service_provider_impl) {
|
| // Only present the launcher interface to the shell.
|
| if (service_provider_impl->connection_context().remote_url.empty()) {
|
| @@ -108,15 +104,15 @@ void LauncherApp::Launch(const mojo::String& application_url) {
|
| DVLOG(1) << "Launching " << application_url;
|
|
|
| mojo::NativeViewportPtr viewport;
|
| - mojo::ConnectToService(app_impl_->shell(), "mojo:native_viewport_service",
|
| + mojo::ConnectToService(shell(), "mojo:native_viewport_service",
|
| GetProxy(&viewport));
|
|
|
| mojo::ui::ViewProviderPtr view_provider;
|
| - mojo::ConnectToService(app_impl_->shell(), application_url,
|
| - GetProxy(&view_provider));
|
| + mojo::ConnectToService(shell(), application_url, GetProxy(&view_provider));
|
|
|
| LaunchInternal(viewport.Pass(), view_provider.Pass());
|
| }
|
| +
|
| void LauncherApp::LaunchOnViewport(
|
| mojo::InterfaceHandle<mojo::NativeViewport> viewport,
|
| mojo::InterfaceHandle<mojo::ui::ViewProvider> view_provider) {
|
| @@ -128,7 +124,7 @@ void LauncherApp::LaunchInternal(mojo::NativeViewportPtr viewport,
|
| mojo::ui::ViewProviderPtr view_provider) {
|
| uint32_t next_id = next_id_++;
|
| std::unique_ptr<LaunchInstance> instance(new LaunchInstance(
|
| - app_impl_, viewport.Pass(), view_provider.Pass(), compositor_.get(),
|
| + viewport.Pass(), view_provider.Pass(), compositor_.get(),
|
| view_manager_.get(), base::Bind(&LauncherApp::OnLaunchTermination,
|
| base::Unretained(this), next_id)));
|
| instance->Launch();
|
| @@ -138,23 +134,23 @@ void LauncherApp::LaunchInternal(mojo::NativeViewportPtr viewport,
|
| void LauncherApp::OnLaunchTermination(uint32_t id) {
|
| launch_instances_.erase(id);
|
| if (launch_instances_.empty()) {
|
| - app_impl_->Terminate();
|
| + mojo::TerminateApplication(MOJO_RESULT_OK);
|
| }
|
| }
|
|
|
| void LauncherApp::OnCompositorConnectionError() {
|
| LOG(ERROR) << "Exiting due to compositor connection error.";
|
| - app_impl_->Terminate();
|
| + mojo::TerminateApplication(MOJO_RESULT_UNKNOWN);
|
| }
|
|
|
| void LauncherApp::OnViewManagerConnectionError() {
|
| LOG(ERROR) << "Exiting due to view manager connection error.";
|
| - app_impl_->Terminate();
|
| + mojo::TerminateApplication(MOJO_RESULT_UNKNOWN);
|
| }
|
|
|
| void LauncherApp::OnViewAssociateConnectionError() {
|
| LOG(ERROR) << "Exiting due to view associate connection error.";
|
| - app_impl_->Terminate();
|
| + mojo::TerminateApplication(MOJO_RESULT_UNKNOWN);
|
| };
|
|
|
| } // namespace launcher
|
|
|