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 86cc07e89d487d2eb56e3224bc7a8bd126d12c3f..ae02a471c2300af606c36cc906883ab6d9b38400 100644 |
--- a/content/browser/frame_host/render_frame_host_manager.h |
+++ b/content/browser/frame_host/render_frame_host_manager.h |
@@ -177,6 +177,13 @@ 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. This FrameTreeNode is the frame that |
Charlie Reis
2015/06/18 00:13:18
The second sentence is confusing because of the tw
lazyboy
2015/06/18 22:45:12
Done.
|
+ // represents this inner WebContents within the FrameTree of the outer |
+ // WebContents. Returns FrameTreeNode::kFrameTreeNodeInvalidID if this |
+ // WebContents does not have an outer WebContents. |
+ virtual int GetOuterDelegateFrameTreeNodeID() = 0; |
+ |
protected: |
virtual ~Delegate() {} |
}; |
@@ -222,7 +229,27 @@ 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 |
Charlie Reis
2015/06/18 00:13:18
nit: of the outer WebContents (if any)
lazyboy
2015/06/18 22:45:12
Done.
|
+ // the last keyboard event. |
+ // TODO(lazyboy): This can be removed once input events are sent directly to |
+ // remote frames. |
Charlie Reis
2015/06/18 00:13:18
Ask Ken if there's a bug number we can list for th
lazyboy
2015/06/18 22:45:12
Ken's OOO, will do when he comes back. Added note
|
+ RenderWidgetHostImpl* GetOuterRenderWidgetHostForKeyboardInput(); |
+ |
RenderFrameProxyHost* GetProxyToParent(); |
+ // Returns the proxy to inner WebContents in the outer WebContents's |
Charlie Reis
2015/06/18 00:13:18
nit: to the inner
Also, put a blank line above th
lazyboy
2015/06/18 22:45:12
Done.
|
+ // SiteInstance. Returns nullptr if this WebContents isn't part of inner/outer |
+ // relationship. |
+ RenderFrameProxyHost* GetProxyToOuterDelegate(); |
+ |
+ // Returns whether this manager belongs to a FrameTreeNode that is a main |
+ // frame in an inner WebContents. |
+ // TODO(lazyboy): Make this work correctly for subframes inside inner |
+ // WebContents too. |
+ bool ForInnerDelegate(); |
Charlie Reis
2015/06/18 00:13:18
nit: Let's move this above GetOuterRenderWidgetHos
lazyboy
2015/06/18 22:45:12
Done.
|
+ |
+ // Removes the FrameTreeNode in the outer WebContents that represents this |
+ // FrameTreeNode. |
+ void RemoveOuterDelegateFrame(); |
Charlie Reis
2015/06/18 00:13:18
This method doesn't make sense to me.
It looks li
lazyboy
2015/06/18 22:45:12
[1]
|
// Returns the pending RenderFrameHost, or NULL if there is no pending one. |
RenderFrameHostImpl* pending_frame_host() const { |
@@ -423,6 +450,17 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver { |
RenderViewHostImpl* render_view_host, |
SiteInstance* instance); |
+ // Called on the RFHM of the inner WebContents to create a |
+ // RenderFrameProxyHost for this inner WebContents's frame in its outer |
+ // WebContents's SiteInstance. This SiteInstance is for the parent frame |
+ // |render_frame_host| in the outer WebContents |
Charlie Reis
2015/06/18 00:13:18
This is confusingly worded. Can you rephrase it?
lazyboy
2015/06/18 22:45:12
I just dropped the "for this inner Webcontent's fr
|
+ void CreateOuterDelegateProxy(SiteInstance* outer_contents_site_instance, |
+ RenderFrameHostImpl* render_frame_host); |
+ |
+ // Sets the child RenderWidgetHostView for this frame, which much be part of |
Charlie Reis
2015/06/18 00:13:18
s/much/must/
lazyboy
2015/06/18 22:45:12
Done.
|
+ // an inner WebContents. |
+ void SetRWHViewForInnerContents(RenderWidgetHostView* child_rwhv); |
+ |
private: |
friend class FrameTreeVisualizer; |
friend class NavigatorTestWithBrowserSideNavigation; |