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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 1131593003: Revert of Revert of OOPIF: Specify previous sibling frames when creating new RenderFrames. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | content/renderer/render_frame_impl_browsertest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 1ede182290c70954e15ed65404aa397303daab36..8b1c15323e230682df1c85646f28f0e5b01ad9b1 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -564,6 +564,7 @@
void RenderFrameImpl::CreateFrame(
int routing_id,
int parent_routing_id,
+ int previous_sibling_routing_id,
int proxy_routing_id,
const FrameReplicationState& replicated_state,
CompositorDependencies* compositor_deps,
@@ -583,12 +584,19 @@
CHECK(parent_proxy);
blink::WebRemoteFrame* parent_web_frame = parent_proxy->web_frame();
+ blink::WebFrame* previous_sibling_web_frame = nullptr;
+ RenderFrameProxy* previous_sibling_proxy =
+ RenderFrameProxy::FromRoutingID(previous_sibling_routing_id);
+ if (previous_sibling_proxy)
+ previous_sibling_web_frame = previous_sibling_proxy->web_frame();
+
// Create the RenderFrame and WebLocalFrame, linking the two.
render_frame =
RenderFrameImpl::Create(parent_proxy->render_view(), routing_id);
web_frame = parent_web_frame->createLocalChild(
WebString::fromUTF8(replicated_state.name),
- ContentToWebSandboxFlags(replicated_state.sandbox_flags), render_frame);
+ ContentToWebSandboxFlags(replicated_state.sandbox_flags), render_frame,
+ previous_sibling_web_frame);
} else {
RenderFrameProxy* proxy =
RenderFrameProxy::FromRoutingID(proxy_routing_id);
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | content/renderer/render_frame_impl_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698