Index: headless/lib/browser/headless_web_contents_impl.h |
diff --git a/headless/lib/browser/headless_web_contents_impl.h b/headless/lib/browser/headless_web_contents_impl.h |
index e0eec04afa2f6e30115e2461c45b06620cdca072..317c2ea1d3247e66257b72b2fe2dcd7afeb983f7 100644 |
--- a/headless/lib/browser/headless_web_contents_impl.h |
+++ b/headless/lib/browser/headless_web_contents_impl.h |
@@ -5,6 +5,7 @@ |
#ifndef HEADLESS_LIB_BROWSER_HEADLESS_WEB_CONTENTS_IMPL_H_ |
#define HEADLESS_LIB_BROWSER_HEADLESS_WEB_CONTENTS_IMPL_H_ |
+#include "content/public/browser/web_contents_observer.h" |
#include "headless/public/headless_devtools_target.h" |
#include "headless/public/headless_web_contents.h" |
@@ -31,7 +32,8 @@ class HeadlessBrowserImpl; |
class WebContentsObserverAdapter; |
class HeadlessWebContentsImpl : public HeadlessWebContents, |
- public HeadlessDevToolsTarget { |
+ public HeadlessDevToolsTarget, |
+ public content::WebContentsObserver { |
public: |
~HeadlessWebContentsImpl() override; |
@@ -54,6 +56,10 @@ class HeadlessWebContentsImpl : public HeadlessWebContents, |
void AttachClient(HeadlessDevToolsClient* client) override; |
void DetachClient(HeadlessDevToolsClient* client) override; |
+ // content::WebContentsObserver implementation: |
+ void RenderFrameCreated(content::RenderFrameHost* render_frame_host) override; |
+ void DocumentOnLoadCompletedInMainFrame() override; |
+ |
content::WebContents* web_contents() const; |
bool OpenURL(const GURL& url); |
@@ -67,10 +73,15 @@ class HeadlessWebContentsImpl : public HeadlessWebContents, |
void InitializeScreen(aura::Window* parent_window, |
const gfx::Size& initial_size); |
+ using MojoService = HeadlessWebContents::Builder::MojoService; |
+ using MojoBindings = HeadlessWebContents::Builder::MojoBindings; |
+ |
class Delegate; |
std::unique_ptr<Delegate> web_contents_delegate_; |
std::unique_ptr<content::WebContents> web_contents_; |
scoped_refptr<content::DevToolsAgentHost> agent_host_; |
+ std::list<MojoService> mojo_services_; |
+ std::list<MojoBindings> mojo_bindings_; |
HeadlessBrowserImpl* browser_; // Not owned. |