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

Issue 910313004: Replace PlaceholderFrameOwner with RemoteBridgeFrameOwner. (Closed)

Created:
5 years, 10 months ago by alexmos
Modified:
5 years, 10 months ago
Reviewers:
Nate Chapin, dcheng
CC:
dcheng, blink-reviews, dglazkov+blink, mlamouri+watch-blink_chromium.org, site-isolation-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Replace PlaceholderFrameOwner with RemoteBridgeFrameOwner. Currently, with --site-per-process, PlaceholderFrameOwner is used as the FrameOwner for remote frames with a remote parent, and RemoteBridgeFrameOwner is used for local frames with a remote parent. Having PlaceholderFrameOwners is proving to be problematic: - when transitioning from a remote frame to local frame in initializeToReplaceRemoteFrame, we are currently leaving the PlaceholderFrameOwner in place, even though we should be switching it to RemoteBridgeFrameOwner. - PlaceholderFrameOwner does not store SandboxFlags, which is needed to support sandbox flags replication. This CL removes PlaceholderFrameOwner and replaces its usage with RemoteBridgeFrameOwner. RemoteBridgeFrameOwner is lifted out of an anonymous namespace, because it needs to be referenced by WebLocalFrameImpl::initializeToReplaceRemoteFrame. WebFrame::swap() probably also needs to be changed to update m_frame for RemoteBridgeFrameOwner. I left this for a separate CL, since that probably needs some other plumbing and a test. RemoteBridgeFrameOwner::m_frame isn't used anywhere at the moment, but it will be needed for plumbing dispatchLoad(). This also needs a small Chromium-side update: https://codereview.chromium.org/886923004 BUG=426512 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=190010

Patch Set 1 #

Total comments: 4

Patch Set 2 : Address Daniel's comments #

Total comments: 2

Patch Set 3 : Nit: remove newline #

Unified diffs Side-by-side diffs Delta from patch set Stats (+99 lines, -100 lines) Patch
A Source/web/RemoteBridgeFrameOwner.h View 1 2 1 chunk +54 lines, -0 lines 0 comments Download
A Source/web/RemoteBridgeFrameOwner.cpp View 1 1 chunk +27 lines, -0 lines 0 comments Download
M Source/web/WebLocalFrameImpl.cpp View 1 2 chunks +2 lines, -1 line 0 comments Download
M Source/web/WebRemoteFrameImpl.h View 1 2 chunks +2 lines, -17 lines 0 comments Download
M Source/web/WebRemoteFrameImpl.cpp View 1 2 chunks +8 lines, -81 lines 0 comments Download
M Source/web/tests/WebFrameTest.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/web/web.gypi View 1 1 chunk +2 lines, -0 lines 0 comments Download
M public/web/WebRemoteFrame.h View 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 13 (4 generated)
alexmos
Daniel, could you please take a look?
5 years, 10 months ago (2015-02-11 21:19:42 UTC) #2
dcheng
https://codereview.chromium.org/910313004/diff/1/Source/web/WebRemoteFrameImpl.h File Source/web/WebRemoteFrameImpl.h (right): https://codereview.chromium.org/910313004/diff/1/Source/web/WebRemoteFrameImpl.h#newcode29 Source/web/WebRemoteFrameImpl.h:29: class RemoteBridgeFrameOwner : public NoBaseWillBeGarbageCollectedFinalized<RemoteBridgeFrameOwner>, public FrameOwner { Perhaps ...
5 years, 10 months ago (2015-02-11 21:57:24 UTC) #3
alexmos
https://codereview.chromium.org/910313004/diff/1/Source/web/WebRemoteFrameImpl.h File Source/web/WebRemoteFrameImpl.h (right): https://codereview.chromium.org/910313004/diff/1/Source/web/WebRemoteFrameImpl.h#newcode29 Source/web/WebRemoteFrameImpl.h:29: class RemoteBridgeFrameOwner : public NoBaseWillBeGarbageCollectedFinalized<RemoteBridgeFrameOwner>, public FrameOwner { On ...
5 years, 10 months ago (2015-02-11 22:39:45 UTC) #4
dcheng
lgtm https://codereview.chromium.org/910313004/diff/20001/Source/web/RemoteBridgeFrameOwner.h File Source/web/RemoteBridgeFrameOwner.h (right): https://codereview.chromium.org/910313004/diff/20001/Source/web/RemoteBridgeFrameOwner.h#newcode20 Source/web/RemoteBridgeFrameOwner.h:20: Nit: no newline.
5 years, 10 months ago (2015-02-11 22:45:04 UTC) #5
alexmos
https://codereview.chromium.org/910313004/diff/20001/Source/web/RemoteBridgeFrameOwner.h File Source/web/RemoteBridgeFrameOwner.h (right): https://codereview.chromium.org/910313004/diff/20001/Source/web/RemoteBridgeFrameOwner.h#newcode20 Source/web/RemoteBridgeFrameOwner.h:20: On 2015/02/11 22:45:04, dcheng wrote: > Nit: no newline. ...
5 years, 10 months ago (2015-02-11 22:49:47 UTC) #7
alexmos
Nate, could you please provide an owner review?
5 years, 10 months ago (2015-02-11 22:50:21 UTC) #9
Nate Chapin
lgtm
5 years, 10 months ago (2015-02-11 23:16:39 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/910313004/40001
5 years, 10 months ago (2015-02-11 23:25:36 UTC) #12
commit-bot: I haz the power
5 years, 10 months ago (2015-02-12 00:20:14 UTC) #13
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=190010

Powered by Google App Engine
This is Rietveld 408576698