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

Issue 2702273004: bindings: Simplifies WindowProxyManager and its relation to Frame. (Closed)

Created:
3 years, 10 months ago by Yuki
Modified:
3 years, 9 months ago
Reviewers:
haraken, dcheng
CC:
chromium-reviews, blink-reviews, mlamouri+watch-blink_chromium.org, blink-reviews-bindings_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

bindings: Simplifies WindowProxyManager and its relation to Frame. Both of LocalFrame and RemoteFrame have a WindowProxyManager. We can move it into a base class Frame. windowProxy->initializedIfNeeded() is moved into WindowProxyManager from ScriptController and RemoteFrame. WindowProxyManager::windowProxy(world) now always returns an initialized global proxy. It's safer than before, I think. (But no behavioral change in this CL at all.) Also the following renaming is done in order to emphasize that the returned object may not be initialized. WindowProxyManagerBase => WindowProxyManager (Same naming as Frame, DOMWindow and WindowProxy) WindowProxyManager::mainWorldProxy => mainWorldProxyMaybeUninitialized WindowProxyManager::windowProxy => windowProxyMaybeUninitialized By the way, we don't much use RemoteWindowProxyManager. We can simply remove the class in a follow-up CL. BUG= Review-Url: https://codereview.chromium.org/2702273004 Cr-Commit-Position: refs/heads/master@{#457409} Committed: https://chromium.googlesource.com/chromium/src/+/4136f45071af9b51dfb36598efa9ac705c8d1b0f

Patch Set 1 #

Total comments: 4

Patch Set 2 : Addressed review comments. #

Total comments: 6

Patch Set 3 : Synced. #

Patch Set 4 : Addressed review comments. #

Patch Set 5 : Did changes in order to keep the exactly same behavior. #

Total comments: 13

Patch Set 6 : Synced. #

Patch Set 7 : Addressed review comments. #

Patch Set 8 : Removed isMainWorldContextInitialized(). #

Patch Set 9 : Synced. #

Patch Set 10 : Synced. #

Patch Set 11 : Fixed WindowProxyManager::createWindowProxy(ForFrame). #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+136 lines, -145 lines) Patch
M third_party/WebKit/Source/bindings/core/v8/ScriptController.h View 1 2 3 4 5 6 4 chunks +14 lines, -13 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp View 1 2 3 4 5 6 7 8 9 6 chunks +7 lines, -23 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/V8Binding.cpp View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h View 1 2 3 4 5 6 7 8 9 10 5 chunks +37 lines, -20 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +50 lines, -45 lines 2 comments Download
M third_party/WebKit/Source/core/frame/Frame.h View 1 2 3 5 chunks +7 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/frame/Frame.cpp View 1 2 3 4 5 6 7 8 9 4 chunks +11 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/frame/LocalFrame.h View 1 2 2 chunks +0 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/frame/LocalFrame.cpp View 1 2 3 4 5 6 7 8 3 chunks +4 lines, -10 lines 0 comments Download
M third_party/WebKit/Source/core/frame/RemoteFrame.h View 4 chunks +0 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/frame/RemoteFrame.cpp View 1 2 3 4 5 6 7 8 9 4 chunks +3 lines, -16 lines 0 comments Download
M third_party/WebKit/Source/web/WebFrame.cpp View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 67 (45 generated)
Yuki
Could you guys review this CL? This CL should have no behavioral change (at least ...
3 years, 10 months ago (2017-02-21 15:17:12 UTC) #5
haraken
LGTM although I'd prefer splitting the CL into small pieces.
3 years, 10 months ago (2017-02-22 01:03:49 UTC) #8
dcheng
https://codereview.chromium.org/2702273004/diff/1/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h (right): https://codereview.chromium.org/2702273004/diff/1/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h#newcode86 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h:86: LocalWindowProxy* mainWorldProxyMaybeUninitialized() { I would prefer not to expose ...
3 years, 10 months ago (2017-02-22 01:07:06 UTC) #9
haraken
On 2017/02/22 01:07:06, dcheng wrote: > https://codereview.chromium.org/2702273004/diff/1/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h > File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h (right): > > https://codereview.chromium.org/2702273004/diff/1/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h#newcode86 > ...
3 years, 10 months ago (2017-02-22 03:05:49 UTC) #10
Yuki
https://codereview.chromium.org/2702273004/diff/1/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h (right): https://codereview.chromium.org/2702273004/diff/1/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h#newcode86 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h:86: LocalWindowProxy* mainWorldProxyMaybeUninitialized() { On 2017/02/22 01:07:06, dcheng wrote: > ...
3 years, 10 months ago (2017-02-22 09:01:33 UTC) #12
dcheng
https://codereview.chromium.org/2702273004/diff/40001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp (right): https://codereview.chromium.org/2702273004/diff/40001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp#newcode84 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp:84: mainWorldProxy()->updateSecurityOrigin(securityOrigin); Hmm... updateSecurityOrigin() also checks this, so it looks ...
3 years, 10 months ago (2017-02-23 19:02:36 UTC) #17
Yuki
Sorry for leaving this CL for a long time. I'm finally back. Could you take ...
3 years, 9 months ago (2017-03-09 14:58:53 UTC) #24
dcheng
lgtm with nits https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/ScriptController.h File third_party/WebKit/Source/bindings/core/v8/ScriptController.h (right): https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/ScriptController.h#newcode70 third_party/WebKit/Source/bindings/core/v8/ScriptController.h:70: static ScriptController* create(LocalFrame* frame, Nit: pass ...
3 years, 9 months ago (2017-03-10 09:52:13 UTC) #27
haraken
Mostly looks good with one question. https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp (right): https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp#newcode61 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp:61: : m_isolate(v8::Isolate::GetCurrent()), toIsolate(frame). ...
3 years, 9 months ago (2017-03-10 12:44:12 UTC) #28
Yuki
Addressed review comments. Also removed (Local)WindowProxyManager::isMainWorldContextInitialized because it turned out that it doesn't help much ...
3 years, 9 months ago (2017-03-10 15:21:51 UTC) #38
haraken
https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp (right): https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp#newcode61 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp:61: : m_isolate(v8::Isolate::GetCurrent()), On 2017/03/10 15:21:50, Yuki wrote: > On ...
3 years, 9 months ago (2017-03-11 19:35:25 UTC) #41
dcheng
On 2017/03/11 19:35:25, haraken wrote: > https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp > File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp (right): > > https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp#newcode61 > ...
3 years, 9 months ago (2017-03-12 07:59:21 UTC) #42
haraken
On 2017/03/12 07:59:21, dcheng wrote: > On 2017/03/11 19:35:25, haraken wrote: > > > https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp ...
3 years, 9 months ago (2017-03-12 21:27:56 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2702273004/180001
3 years, 9 months ago (2017-03-13 07:27:33 UTC) #46
Yuki
https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp (right): https://codereview.chromium.org/2702273004/diff/100001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp#newcode61 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp:61: : m_isolate(v8::Isolate::GetCurrent()), On 2017/03/11 19:35:24, haraken wrote: > On ...
3 years, 9 months ago (2017-03-13 08:24:30 UTC) #50
Yuki
It turned out that I need more change about WindowProxyManager::createWindowProxyForFrame in PS11. Could you guys ...
3 years, 9 months ago (2017-03-15 14:04:14 UTC) #55
Yuki
On 2017/03/15 14:04:14, Yuki wrote: > It turned out that I need more change about ...
3 years, 9 months ago (2017-03-15 14:06:54 UTC) #56
dcheng
I'm going offline for the night, so please don't feel like you need to block ...
3 years, 9 months ago (2017-03-16 08:43:16 UTC) #59
Yuki
https://codereview.chromium.org/2702273004/diff/240001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp File third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp (right): https://codereview.chromium.org/2702273004/diff/240001/third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp#newcode57 third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp:57: // RemoteFrame. On 2017/03/16 08:43:16, dcheng wrote: > This ...
3 years, 9 months ago (2017-03-16 12:41:21 UTC) #60
Yuki
I'll commit this CL seeing no strong objection, but I'm happy to address any issues ...
3 years, 9 months ago (2017-03-16 12:43:05 UTC) #61
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2702273004/240001
3 years, 9 months ago (2017-03-16 12:43:29 UTC) #64
commit-bot: I haz the power
3 years, 9 months ago (2017-03-16 12:47:55 UTC) #67
Message was sent while issue was closed.
Committed patchset #11 (id:240001) as
https://chromium.googlesource.com/chromium/src/+/4136f45071af9b51dfb36598efa9...

Powered by Google App Engine
This is Rietveld 408576698