| Index: blimp/client/core/blimp_client_context_impl.h
|
| diff --git a/blimp/client/core/blimp_client_context_impl.h b/blimp/client/core/blimp_client_context_impl.h
|
| index 7c8d6e588929159df70e86cd3013473edda85b79..14c66779b42ff82125f156bb56debeec6d108562 100644
|
| --- a/blimp/client/core/blimp_client_context_impl.h
|
| +++ b/blimp/client/core/blimp_client_context_impl.h
|
| @@ -24,9 +24,13 @@
|
| namespace blimp {
|
| namespace client {
|
|
|
| +class BlimpCompositorDependencies;
|
| class BlimpContentsManager;
|
| +class CompositorDependencies;
|
| class ImeFeature;
|
| class NavigationFeature;
|
| +class RenderWidgetFeature;
|
| +class SettingsFeature;
|
| class TabControlFeature;
|
|
|
| // BlimpClientContextImpl is the implementation of the main context-class for
|
| @@ -40,7 +44,8 @@ class BlimpClientContextImpl : public BlimpClientContext,
|
| // operations.
|
| BlimpClientContextImpl(
|
| scoped_refptr<base::SingleThreadTaskRunner> io_thread_task_runner,
|
| - scoped_refptr<base::SingleThreadTaskRunner> file_thread_task_runner);
|
| + scoped_refptr<base::SingleThreadTaskRunner> file_thread_task_runner,
|
| + std::unique_ptr<CompositorDependencies> compositor_dependencies);
|
| ~BlimpClientContextImpl() override;
|
|
|
| IdentitySource* GetIdentitySource();
|
| @@ -61,13 +66,6 @@ class BlimpClientContextImpl : public BlimpClientContext,
|
| // the AssignmentSource.
|
| virtual GURL GetAssignerURL();
|
|
|
| - // Create IdentitySource which provides user sign in states and OAuth2 token
|
| - // service.
|
| - void CreateIdentitySource();
|
| -
|
| - // Provide OAuth2 token and propagate account sign in states change.
|
| - std::unique_ptr<IdentitySource> identity_source_;
|
| -
|
| private:
|
| // Connect to assignment source with OAuth2 token to get an assignment.
|
| virtual void ConnectToAssignmentSource(const std::string& client_auth_token);
|
| @@ -78,6 +76,11 @@ class BlimpClientContextImpl : public BlimpClientContext,
|
| const Assignment& assignment);
|
|
|
| void RegisterFeatures();
|
| + void InitializeSettings();
|
| +
|
| + // Create IdentitySource which provides user sign in states and OAuth2 token
|
| + // service.
|
| + void CreateIdentitySource();
|
|
|
| // Provides functionality from the embedder.
|
| BlimpClientContextDelegate* delegate_ = nullptr;
|
| @@ -92,9 +95,14 @@ class BlimpClientContextImpl : public BlimpClientContext,
|
| // Connect() to get a valid assignment and later connect to the engine.
|
| std::unique_ptr<AssignmentSource> assignment_source_;
|
|
|
| + // A set of dependencies required by all BlimpCompositor instances.
|
| + std::unique_ptr<BlimpCompositorDependencies> blimp_compositor_dependencies_;
|
| +
|
| // Features to handle all incoming and outgoing protobuf messages.
|
| std::unique_ptr<ImeFeature> ime_feature_;
|
| std::unique_ptr<NavigationFeature> navigation_feature_;
|
| + std::unique_ptr<RenderWidgetFeature> render_widget_feature_;
|
| + std::unique_ptr<SettingsFeature> settings_feature_;
|
| std::unique_ptr<TabControlFeature> tab_control_feature_;
|
|
|
| std::unique_ptr<BlimpContentsManager> blimp_contents_manager_;
|
| @@ -105,6 +113,9 @@ class BlimpClientContextImpl : public BlimpClientContext,
|
|
|
| std::unique_ptr<ThreadPipeManager> thread_pipe_manager_;
|
|
|
| + // Provide OAuth2 token and propagate account sign in states change.
|
| + std::unique_ptr<IdentitySource> identity_source_;
|
| +
|
| base::WeakPtrFactory<BlimpClientContextImpl> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(BlimpClientContextImpl);
|
|
|