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

Side by Side Diff: third_party/WebKit/Source/web/WebRemoteFrameImpl.cpp

Issue 2651583007: Plumbing blink::Interface{Provider|Registry} through WebLocalFrame's constructor. (Closed)
Patch Set: Rebasing... Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "web/WebRemoteFrameImpl.h" 5 #include "web/WebRemoteFrameImpl.h"
6 6
7 #include "core/dom/Fullscreen.h" 7 #include "core/dom/Fullscreen.h"
8 #include "core/dom/RemoteSecurityContext.h" 8 #include "core/dom/RemoteSecurityContext.h"
9 #include "core/dom/SecurityContext.h" 9 #include "core/dom/SecurityContext.h"
10 #include "core/frame/FrameView.h" 10 #include "core/frame/FrameView.h"
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after
325 NOTREACHED(); 325 NOTREACHED();
326 return WebString(); 326 return WebString();
327 } 327 }
328 328
329 WebLocalFrame* WebRemoteFrameImpl::createLocalChild( 329 WebLocalFrame* WebRemoteFrameImpl::createLocalChild(
330 WebTreeScopeType scope, 330 WebTreeScopeType scope,
331 const WebString& name, 331 const WebString& name,
332 const WebString& uniqueName, 332 const WebString& uniqueName,
333 WebSandboxFlags sandboxFlags, 333 WebSandboxFlags sandboxFlags,
334 WebFrameClient* client, 334 WebFrameClient* client,
335 blink::InterfaceProvider* interfaceProvider,
336 blink::InterfaceRegistry* interfaceRegistry,
335 WebFrame* previousSibling, 337 WebFrame* previousSibling,
336 const WebFrameOwnerProperties& frameOwnerProperties, 338 const WebFrameOwnerProperties& frameOwnerProperties,
337 WebFrame* opener) { 339 WebFrame* opener) {
338 WebLocalFrameImpl* child = WebLocalFrameImpl::create(scope, client, opener); 340 WebLocalFrameImpl* child = WebLocalFrameImpl::create(
341 scope, client, interfaceProvider, interfaceRegistry, opener);
339 insertAfter(child, previousSibling); 342 insertAfter(child, previousSibling);
340 RemoteFrameOwner* owner = RemoteFrameOwner::create( 343 RemoteFrameOwner* owner = RemoteFrameOwner::create(
341 static_cast<SandboxFlags>(sandboxFlags), frameOwnerProperties); 344 static_cast<SandboxFlags>(sandboxFlags), frameOwnerProperties);
342 // FIXME: currently this calls LocalFrame::init() on the created LocalFrame, 345 // FIXME: currently this calls LocalFrame::init() on the created LocalFrame,
343 // which may result in the browser observing two navigations to about:blank 346 // which may result in the browser observing two navigations to about:blank
344 // (one from the initial frame creation, and one from swapping it into the 347 // (one from the initial frame creation, and one from swapping it into the
345 // remote process). FrameLoader might need a special initialization function 348 // remote process). FrameLoader might need a special initialization function
346 // for this case to avoid that duplicate navigation. 349 // for this case to avoid that duplicate navigation.
347 child->initializeCoreFrame(frame()->host(), owner, name, uniqueName); 350 child->initializeCoreFrame(frame()->host(), owner, name, uniqueName);
348 // Partially related with the above FIXME--the init() call may trigger JS 351 // Partially related with the above FIXME--the init() call may trigger JS
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
525 } 528 }
526 529
527 WebRemoteFrameImpl::WebRemoteFrameImpl(WebTreeScopeType scope, 530 WebRemoteFrameImpl::WebRemoteFrameImpl(WebTreeScopeType scope,
528 WebRemoteFrameClient* client) 531 WebRemoteFrameClient* client)
529 : WebRemoteFrame(scope), 532 : WebRemoteFrame(scope),
530 m_frameClient(RemoteFrameClientImpl::create(this)), 533 m_frameClient(RemoteFrameClientImpl::create(this)),
531 m_client(client), 534 m_client(client),
532 m_selfKeepAlive(this) {} 535 m_selfKeepAlive(this) {}
533 536
534 } // namespace blink 537 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/WebRemoteFrameImpl.h ('k') | third_party/WebKit/Source/web/WebSharedWorkerImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698