| Index: mojo/ui/content_viewer_app.cc
 | 
| diff --git a/mojo/ui/content_viewer_app.cc b/mojo/ui/content_viewer_app.cc
 | 
| index 0ede5d2ecbc7b62a3d8aaf20b2bc76781d98b50f..21bb266caee1934db1915356bad8cb2778d6005c 100644
 | 
| --- a/mojo/ui/content_viewer_app.cc
 | 
| +++ b/mojo/ui/content_viewer_app.cc
 | 
| @@ -6,6 +6,8 @@
 | 
|  
 | 
|  #include "base/command_line.h"
 | 
|  #include "base/logging.h"
 | 
| +#include "mojo/public/cpp/application/service_provider_impl.h"
 | 
| +#include "mojo/ui/view_provider_app.h"
 | 
|  
 | 
|  namespace mojo {
 | 
|  namespace ui {
 | 
| @@ -37,17 +39,15 @@ ContentViewerApp::ContentViewerApp() {}
 | 
|  
 | 
|  ContentViewerApp::~ContentViewerApp() {}
 | 
|  
 | 
| -void ContentViewerApp::Initialize(mojo::ApplicationImpl* app_impl) {
 | 
| -  app_impl_ = app_impl;
 | 
| -
 | 
| +void ContentViewerApp::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);
 | 
|  }
 | 
|  
 | 
| -bool ContentViewerApp::ConfigureIncomingConnection(
 | 
| +bool ContentViewerApp::OnAcceptConnection(
 | 
|      ServiceProviderImpl* service_provider_impl) {
 | 
|    service_provider_impl->AddService<ContentHandler>([this](
 | 
|        const ConnectionContext& connection_context,
 | 
| @@ -63,12 +63,13 @@ void ContentViewerApp::StartViewer(
 | 
|      const std::string& content_handler_url,
 | 
|      mojo::InterfaceRequest<mojo::Application> application_request,
 | 
|      mojo::URLResponsePtr response) {
 | 
| +  // TODO(vtl): This is usually leaky, since |*app| (the returned
 | 
| +  // |ApplicationImplBase|/|ViewProviderApp| implementation) typically doesn't
 | 
| +  // own itself. Probably |LoadContent()| should take the |application_request|,
 | 
| +  // and not return anything. This method doesn't really appear to add anything.
 | 
|    ViewProviderApp* app = LoadContent(content_handler_url, response.Pass());
 | 
| -  if (app) {
 | 
| -    // TODO(vtl): This is leaky, since |ApplicationImpl| doesn't own itself.
 | 
| -    // (Also, who owns |*app|?)
 | 
| -    new mojo::ApplicationImpl(app, application_request.Pass());
 | 
| -  }
 | 
| +  if (app)
 | 
| +    app->Bind(application_request.Pass());
 | 
|  }
 | 
|  
 | 
|  }  // namespace ui
 | 
| 
 |