summaryrefslogtreecommitdiff
path: root/chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h')
-rw-r--r--chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h b/chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h
index 2bdc547406d..f55275af341 100644
--- a/chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h
+++ b/chromium/components/contextual_search/renderer/overlay_js_render_frame_observer.h
@@ -10,6 +10,7 @@
#include "components/contextual_search/common/overlay_page_notifier_service.mojom.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_frame_observer.h"
+#include "services/service_manager/public/cpp/binder_registry.h"
#include "third_party/WebKit/public/web/WebLocalFrame.h"
#include "v8/include/v8.h"
@@ -21,11 +22,13 @@ namespace contextual_search {
// in an overlay panel.
class OverlayJsRenderFrameObserver : public content::RenderFrameObserver {
public:
- explicit OverlayJsRenderFrameObserver(content::RenderFrame* render_frame);
+ OverlayJsRenderFrameObserver(content::RenderFrame* render_frame,
+ service_manager::BinderRegistry* registry);
~OverlayJsRenderFrameObserver() override;
// RenderFrameObserver implementation.
- void DidStartProvisionalLoad(blink::WebDataSource* data_source) override;
+ void DidStartProvisionalLoad(
+ blink::WebDocumentLoader* document_loader) override;
void DidClearWindowObject() override;
void DidFinishLoad() override;
@@ -36,9 +39,6 @@ class OverlayJsRenderFrameObserver : public content::RenderFrameObserver {
// RenderFrameObserver implementation.
void OnDestruct() override;
- // Add the mojo interface to a RenderFrame's
- // service_manager::InterfaceRegistry.
- void RegisterMojoInterface();
// Creates the OverlayPageNotifierService connecting the browser to this
// observer.
void CreateOverlayPageNotifierService(
@@ -49,6 +49,10 @@ class OverlayJsRenderFrameObserver : public content::RenderFrameObserver {
// Track if the current page is presented in the contextual search overlay.
bool is_contextual_search_overlay_;
+ // Requests for mojom::OverlayPageNotifierService are only bound while
+ // a load is active.
+ bool can_bind_requests_ = false;
+
base::WeakPtrFactory<OverlayJsRenderFrameObserver> weak_factory_;
DISALLOW_COPY_AND_ASSIGN(OverlayJsRenderFrameObserver);