Chromium Code Reviews| 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 af88aa5ccf2674c3b2dab2213a7483dde36e62a7..9c7fcd38559e91c00073c2c728711319696a5622 100644 | 
| --- a/content/browser/frame_host/render_frame_host_manager.h | 
| +++ b/content/browser/frame_host/render_frame_host_manager.h | 
| @@ -175,6 +175,11 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver { | 
| // hidden state. | 
| virtual bool IsHidden() = 0; | 
| + // Returns the FTN id of the outer WebContents that is hosting this | 
| 
 
nasko
2015/05/22 16:32:27
nit: s/FTN/FrameTreeNode/
 
lazyboy
2015/05/26 16:32:54
Done.
 
 | 
| + // (inner) WebContents. | 
| + // Returns -1 if this WebContents does not have an outer WebContents. | 
| + virtual int GetOuterWebContentsFrameTreeNodeID() = 0; | 
| 
 
nasko
2015/05/22 16:32:27
At this layer (content/browser/frame_host) we don'
 
Charlie Reis
2015/05/22 23:44:31
In a sense, "delegate" refers to WebContents, so m
 
lazyboy
2015/05/26 16:32:54
Using GetOuterDelegateFrameTreeNodeID.
 
 | 
| + | 
| protected: | 
| virtual ~Delegate() {} | 
| }; | 
| @@ -221,6 +226,14 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver { | 
| RenderWidgetHostView* GetRenderWidgetHostView() const; | 
| RenderFrameProxyHost* GetProxyToParent(); | 
| + RenderFrameProxyHost* GetProxyToOuterContents(); | 
| 
 
nasko
2015/05/22 16:32:27
nit: Similar issue with Contents as above. This la
 
Charlie Reis
2015/05/22 23:44:30
GetProxyToOuterDelegate?
 
lazyboy
2015/05/26 16:32:54
Using GetProxyToOuterDelegate().
Done.
 
 | 
| + | 
| + // Returns whether this manager belongs to a FTN that is a main frame in | 
| 
 
nasko
2015/05/22 16:32:27
nit: s/FTN/FrameTreeNode/
 
lazyboy
2015/05/26 16:32:54
Done.
 
 | 
| + // an inner WebContents. | 
| + // | 
| + // TODO(lazyboy): Make this work correctly for subframes inside inner | 
| + // WebContents too. | 
| + bool IsGuest(); | 
| 
 
Charlie Reis
2015/05/22 23:44:30
ForInnerDelegate?
I'm ok with mentioning "inner W
 
lazyboy
2015/05/26 16:32:54
Done.
 
 | 
| // Returns the pending RenderFrameHost, or NULL if there is no pending one. | 
| RenderFrameHostImpl* pending_frame_host() const { | 
| @@ -414,6 +427,19 @@ 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 | 
| + // inner WebContents' frame in its outer WebContents' process. | 
| 
 
Charlie Reis
2015/05/22 23:44:30
nit: WebContents's
(Always use 's when the noun i
 
lazyboy
2015/05/26 16:32:54
Done.
 
 | 
| + // Returns the proxy routing ID. | 
| + int CreateOuterContentsProxy(SiteInstance* outer_contents_site_instance); | 
| 
 
nasko
2015/05/22 16:32:27
Can we avoid using "Contents" here? The method see
 
Charlie Reis
2015/05/22 23:44:30
CreateOuterDelegateProxy(SiteInstance* outer_site_
 
lazyboy
2015/05/26 16:32:54
Done.
 The method seems to just create a proxy bas
 
 | 
| + | 
| + // Called on the RFHM of outer WebContents to replace the initial frame in the | 
| + // outer WebContents with the proxy that has routing id | 
| + // |proxy_to_outer_contents_routing_id|. | 
| + void ReplaceWithInnerContentsProxy(int proxy_to_outer_contents_routing_id); | 
| 
 
nasko
2015/05/22 16:32:27
Maybe named "SwapFrameWithProxy"? Those are all ba
 
lazyboy
2015/05/26 16:32:54
Done.
Also, the comments about how WebContents are
 
 | 
| + | 
| + // Sets the child RWHV for this frame that is part of an inner WebContents. | 
| + void SetRWHViewForInnerContents(RenderWidgetHostView* child_rwhv); | 
| + | 
| private: | 
| friend class FrameTreeVisualizer; | 
| friend class NavigatorTestWithBrowserSideNavigation; |