Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1724)

Unified Diff: content/browser/frame_host/render_frame_host_manager.h

Issue 972313002: Make <webview> use out-of-process iframe architecture. (Closed) Base URL: ssh://saopaulo.wat/mnt/dev/shared/src@testoopif2z-better-chrome
Patch Set: not using NPAPI bindings anymore, yay! Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 086dea52b11022fb353ca0ca1f209cf81297cb70..3fe3da40c6577590227692dbd9a87a93549c185a 100644
--- a/content/browser/frame_host/render_frame_host_manager.h
+++ b/content/browser/frame_host/render_frame_host_manager.h
@@ -174,6 +174,11 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver {
// hidden state.
virtual bool IsHidden() = 0;
+ // Returns the FTN id of the embedder delegate (WebContents) that is hosting
+ // this delegate (WebContents). Returns -1 if this WebContents does not
+ // have embedder delegate.
+ virtual int64 GetEmbedderFrameTreeNodeID() = 0;
+
protected:
virtual ~Delegate() {}
};
@@ -220,6 +225,10 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver {
RenderWidgetHostView* GetRenderWidgetHostView() const;
RenderFrameProxyHost* GetProxyToParent();
+ RenderFrameProxyHost* GetProxyToEmbedder();
+
+ // Returns whether this manager belongs to a FTN that is a guest main frame.
+ bool IsGuest();
nasko 2015/05/05 21:34:50 nit: I would prefer if we can come up with a more
lazyboy 2015/05/05 22:33:53 Acknowledged.
// Returns the pending RenderFrameHost, or NULL if there is no pending one.
RenderFrameHostImpl* pending_frame_host() const {
@@ -426,6 +435,19 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver {
RenderViewHostImpl* render_view_host,
SiteInstance* instance);
+ // Called on the guest RFHM to create a proxy for this guest frame in its
+ // embedder process.
+ // Returns the proxy routing ID.
+ int CreateEmbedderProxy(SiteInstance* embedder_site_instance);
+
+ // Called on the embedder RFHM to replace the initial guest frame in the
+ // embedder with the proxy that has routing id
+ // |proxy_to_embedder_routing_id|.
+ void ReplaceWithGuestProxy(int proxy_to_embedder_routing_id);
+
+ // Sets the child RWHV for this guest frame.
+ void SetGuestRWHView(RenderWidgetHostView* child_rwhv);
+
private:
friend class FrameTreeVisualizer;
friend class NavigatorTestWithBrowserSideNavigation;

Powered by Google App Engine
This is Rietveld 408576698