Index: services/navigation/navigation.h |
diff --git a/services/navigation/navigation.h b/services/navigation/navigation.h |
index 3a40a7b91d740e2eec8d50373d3a48d7a0441806..1c2b26bb1d73d9fda6cadb7eac304038be0fb6f0 100644 |
--- a/services/navigation/navigation.h |
+++ b/services/navigation/navigation.h |
@@ -6,6 +6,7 @@ |
#define SERVICES_NAVIGATION_NAVIGATION_H_ |
#include "base/memory/ref_counted.h" |
+#include "base/memory/weak_ptr.h" |
#include "base/sequenced_task_runner.h" |
#include "content/public/common/connection_filter.h" |
#include "mojo/public/cpp/bindings/binding_set.h" |
@@ -20,9 +21,7 @@ class BrowserContext; |
namespace navigation { |
-class Navigation : public content::ConnectionFilter, |
- public shell::InterfaceFactory<mojom::ViewFactory>, |
- public mojom::ViewFactory { |
+class Navigation : public content::ConnectionFilter, public mojom::ViewFactory { |
public: |
Navigation(); |
~Navigation() override; |
@@ -33,14 +32,11 @@ class Navigation : public content::ConnectionFilter, |
shell::InterfaceRegistry* registry, |
shell::Connector* connector) override; |
- // shell::InterfaceFactory<mojom::ViewFactory>: |
- void Create(const shell::Identity& remote_identity, |
- mojom::ViewFactoryRequest request) override; |
- |
// mojom::ViewFactory: |
void CreateView(mojom::ViewClientPtr client, |
mojom::ViewRequest request) override; |
+ void CreateViewFactory(mojom::ViewFactoryRequest request); |
void ViewFactoryLost(); |
scoped_refptr<base::SequencedTaskRunner> view_task_runner_; |
@@ -53,6 +49,8 @@ class Navigation : public content::ConnectionFilter, |
mojo::BindingSet<mojom::ViewFactory> bindings_; |
+ base::WeakPtrFactory<Navigation> weak_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(Navigation); |
}; |