summaryrefslogtreecommitdiffstats
path: root/extensions/renderer/guest_view/guest_view_container.h
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/renderer/guest_view/guest_view_container.h')
-rw-r--r--extensions/renderer/guest_view/guest_view_container.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/extensions/renderer/guest_view/guest_view_container.h b/extensions/renderer/guest_view/guest_view_container.h
index 57a30da..036ece5 100644
--- a/extensions/renderer/guest_view/guest_view_container.h
+++ b/extensions/renderer/guest_view/guest_view_container.h
@@ -5,12 +5,16 @@
#ifndef EXTENSIONS_RENDERER_GUEST_VIEW_GUEST_VIEW_CONTAINER_H_
#define EXTENSIONS_RENDERER_GUEST_VIEW_GUEST_VIEW_CONTAINER_H_
+#include "base/memory/scoped_ptr.h"
#include "content/public/renderer/browser_plugin_delegate.h"
-#include "content/public/renderer/render_frame_observer.h"
#include "ipc/ipc_message.h"
namespace extensions {
+namespace {
+class RenderFrameLifetimeObserver;
+} // namespace
+
class GuestViewContainer : public content::BrowserPluginDelegate {
public:
explicit GuestViewContainer(content::RenderFrame* render_frame);
@@ -19,6 +23,8 @@ class GuestViewContainer : public content::BrowserPluginDelegate {
// Queries whether GuestViewContainer is interested in the |message|.
static bool HandlesMessage(const IPC::Message& message);
+ void RenderFrameDestroyed();
+
// BrowserPluginDelegate implementation.
void SetElementInstanceID(int element_instance_id) override;
@@ -29,7 +35,8 @@ class GuestViewContainer : public content::BrowserPluginDelegate {
private:
int element_instance_id_;
const int render_view_routing_id_;
- content::RenderFrame* const render_frame_;
+ content::RenderFrame* render_frame_;
+ scoped_ptr<RenderFrameLifetimeObserver> render_frame_lifetime_observer_;
DISALLOW_COPY_AND_ASSIGN(GuestViewContainer);
};