summaryrefslogtreecommitdiffstats
path: root/content/renderer/render_frame_impl.h
diff options
context:
space:
mode:
authorkenrb <kenrb@chromium.org>2015-01-22 15:44:59 -0800
committerCommit bot <commit-bot@chromium.org>2015-01-22 23:46:07 +0000
commita719983b5525a477724350ee9eba20e574d0eb3b (patch)
tree150f37f5683b0193b7f25dc167e3b2d3b9941231 /content/renderer/render_frame_impl.h
parent81bea3e1d1391eb54ff49434fbeed69d9a39c6d1 (diff)
downloadchromium_src-a719983b5525a477724350ee9eba20e574d0eb3b.zip
chromium_src-a719983b5525a477724350ee9eba20e574d0eb3b.tar.gz
chromium_src-a719983b5525a477724350ee9eba20e574d0eb3b.tar.bz2
Make RenderFrame(Host) own a RenderWidget(Host).
When a RenderFrameHost is created for an out-of-process iframe, it will create a RenderWidgetHost to manage rendering and input events for the iframe and its same-process frame descendants. A corresponding RenderWidget is created in the renderer process. BUG=419087 Committed: https://crrev.com/2dfb76d84f4ebde602c1c3cde700dcf71b4d1bd6 Cr-Commit-Position: refs/heads/master@{#312451} Review URL: https://codereview.chromium.org/616133002 Cr-Commit-Position: refs/heads/master@{#312702}
Diffstat (limited to 'content/renderer/render_frame_impl.h')
-rw-r--r--content/renderer/render_frame_impl.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index c543d9b..463d330 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -44,6 +44,7 @@ class GURL;
class TransportDIB;
struct FrameHostMsg_AddNavigationTransitionData_Params;
struct FrameMsg_Navigate_Params;
+struct FrameMsg_NewFrame_WidgetParams;
struct FrameMsg_RequestNavigation_Params;
namespace blink {
@@ -72,6 +73,7 @@ class WebEncryptedMediaClientImpl;
namespace content {
class ChildFrameCompositingHelper;
+class CompositorDependencies;
class ExternalPopupMenu;
class GeolocationDispatcher;
class ManifestManager;
@@ -125,7 +127,9 @@ class CONTENT_EXPORT RenderFrameImpl
static void CreateFrame(int routing_id,
int parent_routing_id,
int proxy_routing_id,
- const FrameReplicationState& replicated_state);
+ const FrameReplicationState& replicated_state,
+ CompositorDependencies* compositor_deps,
+ const FrameMsg_NewFrame_WidgetParams& params);
// Returns the RenderFrameImpl for the given routing ID.
static RenderFrameImpl* FromRoutingID(int routing_id);
@@ -742,6 +746,13 @@ class CONTENT_EXPORT RenderFrameImpl
// TODO(creis): Remove this after switching to PlzNavigate.
int proxy_routing_id_;
+ // Used when the RenderFrame is a local root. For now, RenderWidgets are
+ // added only when a child frame is in a different process from its parent
+ // frame, but eventually this will also apply to top-level frames.
+ // TODO(kenrb): Correct the above statement when top-level frames have their
+ // own RenderWidgets.
+ scoped_refptr<RenderWidget> render_widget_;
+
#if defined(ENABLE_PLUGINS)
// Current text input composition text. Empty if no composition is in
// progress.