| Index: mojo/services/view_manager/cpp/view_manager_context.h
|
| diff --git a/mojo/services/view_manager/cpp/view_manager_context.h b/mojo/services/view_manager/cpp/view_manager_context.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..406546032e135032666705894ebf9316c8c40db7
|
| --- /dev/null
|
| +++ b/mojo/services/view_manager/cpp/view_manager_context.h
|
| @@ -0,0 +1,46 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef MOJO_SERVICES_VIEW_MANAGER_CPP_VIEW_MANAGER_CONTEXT_H_
|
| +#define MOJO_SERVICES_VIEW_MANAGER_CPP_VIEW_MANAGER_CONTEXT_H_
|
| +
|
| +#include <string>
|
| +#include <vector>
|
| +
|
| +#include "mojo/public/cpp/application/service_provider_impl.h"
|
| +#include "mojo/public/cpp/system/macros.h"
|
| +
|
| +namespace mojo {
|
| +class ApplicationImpl;
|
| +
|
| +class ViewManagerContext {
|
| + public:
|
| + explicit ViewManagerContext(ApplicationImpl* application_impl);
|
| + ~ViewManagerContext();
|
| +
|
| + // Embed an application @ |url| at an appropriate View.
|
| + // The first time this method is called in the life time of the View Manager
|
| + // service the "appropriate View" is defined as being the service' root View.
|
| + // Subsequent times, the implementation of this method is delegated to the
|
| + // application embedded at the service root View. This application will have a
|
| + // specific definition of where within its View hierarchy to embed an
|
| + // un-parented URL.
|
| + // |services| encapsulates services offered by the embedder to the embedded
|
| + // app alongside this Embed() call. |exposed_services| provides a means for
|
| + // the embedder to connect to services exposed by the embedded app.
|
| + void Embed(const String& url);
|
| + void Embed(const String& url,
|
| + InterfaceRequest<ServiceProvider> services,
|
| + ServiceProviderPtr exposed_Services);
|
| +
|
| + private:
|
| + class InternalState;
|
| + InternalState* state_;
|
| +
|
| + MOJO_DISALLOW_COPY_AND_ASSIGN(ViewManagerContext);
|
| +};
|
| +
|
| +} // namespace mojo
|
| +
|
| +#endif // MOJO_SERVICES_VIEW_MANAGER_CPP_VIEW_MANAGER_CONTEXT_H_
|
|
|