Index: content/browser/frame_host/render_frame_host_manager.h |
diff --git a/content/browser/frame_host/render_frame_host_manager.h b/content/browser/frame_host/render_frame_host_manager.h |
index 9b28575a1ab9c3930ec268cdd26f6c9d39319237..015746071c0da8de302025c8b6af2d939fdd4191 100644 |
--- a/content/browser/frame_host/render_frame_host_manager.h |
+++ b/content/browser/frame_host/render_frame_host_manager.h |
@@ -177,6 +177,14 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver { |
// hidden state. |
virtual bool IsHidden() = 0; |
+ // Returns the FrameTreeNode id of the outer WebContents that is hosting |
+ // this (inner) WebContents. |
nasko
2015/06/15 23:00:13
nit: Lots of empty whitespace at end of this line.
lazyboy
2015/06/16 17:59:51
Done.
|
+ // This FrameTreeNode is the frame that represents this inner WebContents |
+ // within the outer WebContents. |
nasko
2015/06/15 23:00:13
nit: s/within/within the FrameTree of/
lazyboy
2015/06/16 17:59:51
Done.
|
+ // Returns FrameTreeNode::FRAME_TREE_NODE_ID_NONE if this WebContents does |
+ // not have an outer WebContents. |
+ virtual int GetOuterDelegateFrameTreeNodeID() = 0; |
+ |
protected: |
virtual ~Delegate() {} |
}; |
@@ -222,7 +230,25 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver { |
// there is no current one. |
RenderWidgetHostView* GetRenderWidgetHostView() const; |
+ // Returns the RenderWidgetHost of outer WebContents that can be used to fetch |
+ // the last keyboard event. |
+ // TODO(lazyboy): This can be removed once input events are sent directly to |
+ // remote frames. |
+ RenderWidgetHostImpl* GetOuterRenderWidgetHostForKeyboardInput(); |
+ |
RenderFrameProxyHost* GetProxyToParent(); |
+ RenderFrameProxyHost* GetProxyToOuterDelegate(); |
nasko
2015/06/15 23:00:13
nit: Add a small comment to describe what this met
lazyboy
2015/06/16 17:59:51
Done.
|
+ |
+ // Returns whether this manager belongs to a FrameTreeNode that is a main |
+ // frame in an inner WebContents. |
+ // |
nasko
2015/06/15 23:00:13
nit: no need for empty line.
lazyboy
2015/06/16 17:59:51
Done.
|
+ // TODO(lazyboy): Make this work correctly for subframes inside inner |
+ // WebContents too. |
+ bool ForInnerDelegate(); |
+ |
+ // Removes the FrameTreeNode in the outer WebContents that represents this |
+ // FrameTreeNode. |
+ void RemoveOuterDelegateFrame(); |
// Returns the pending RenderFrameHost, or NULL if there is no pending one. |
RenderFrameHostImpl* pending_frame_host() const { |
@@ -422,6 +448,15 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver { |
RenderViewHostImpl* render_view_host, |
SiteInstance* instance); |
+ // Called on the RFHM of the inner WebContents to create a proxy for this |
nasko
2015/06/15 23:00:13
nit: s/proxy/RenderFrameProxyHost/
lazyboy
2015/06/16 17:59:51
Done.
|
+ // inner WebContents's frame in its outer WebContents's process. |
nasko
2015/06/15 23:00:13
nit: s/process/SiteInstance/. Also, the SiteInstan
lazyboy
2015/06/16 17:59:51
Done.
|
+ void CreateOuterDelegateProxy(SiteInstance* outer_contents_site_instance, |
+ RenderFrameHostImpl* render_frame_host); |
+ |
+ // Sets the child RWHV for this frame, which much be part of an inner |
nasko
2015/06/15 23:00:13
nit: s/RWHV/RenderWidgetHostView/
lazyboy
2015/06/16 17:59:51
Done.
|
+ // WebContents. |
+ void SetRWHViewForInnerContents(RenderWidgetHostView* child_rwhv); |
+ |
private: |
friend class FrameTreeVisualizer; |
friend class NavigatorTestWithBrowserSideNavigation; |