New issue
Advanced search Search tips

Issue 700680 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 501866
issue 468240

Blocking:
issue 673664



Sign in to add a comment

Stop using CustomConstructor in ExtendableMessageEvent, CustomEvent, PerformanceObserver, IntersectionObserver,

Project Member Reported by lunalu@chromium.org, Mar 11 2017

Issue description

For ExtendableMessageEvent:
Once reference circulation between Blink and V8 is solved (http://crbug.com/501866), update the constructor to be:

Constructor(DOMString type, optional ExtendableMessageEventInit eventInitDict)

For CustomEvent:
See  crbug.com/468240 

For the other two:
It seems like they all have something to do with Callbacks.
 

Comment 1 by lunalu@chromium.org, Mar 13 2017

Summary: Stop using CustomConstructor in ExtendableMessageEvent, CustomEvent, PerformanceObserver, IntersectionObserver, (was: Stop using CustomConstructor in ExtendableMessageEvent)

Comment 2 by lunalu@chromium.org, Mar 13 2017

Description: Show this description

Comment 3 by lunalu@chromium.org, Mar 13 2017

Blockedon: 468240

Comment 4 by bashi@chromium.org, Apr 21 2017

Components: Blink>Bindings
Status: Started (was: Untriaged)
Project Member

Comment 5 by bugdroid1@chromium.org, Apr 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57

commit fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57
Author: Kenichi Ishibashi <bashi@chromium.org>
Date: Fri Apr 28 08:44:43 2017

Trace CustomEvent.detail instead of keeping ScriptValue

Before this CL we used V8PrivateProperty to avoid
cyclic references between V8 and Blink. Now we have
trace wrapper and DOM object can have a reference to
V8 objects. Use trace wrapper for CustomEvent

BUG=501866,700680

Change-Id: I9089d9cf0828bb979467cc5bd859e460847b6c28
Reviewed-on: https://chromium-review.googlesource.com/484162
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#467934}
[modify] https://crrev.com/fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57/third_party/WebKit/Source/bindings/bindings.gni
[delete] https://crrev.com/f32671c0f445b58612ebba5c7a72de7c7981e8e9/third_party/WebKit/Source/bindings/core/v8/custom/V8CustomEventCustom.cpp
[modify] https://crrev.com/fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57/third_party/WebKit/Source/core/events/CustomEvent.cpp
[modify] https://crrev.com/fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57/third_party/WebKit/Source/core/events/CustomEvent.h
[modify] https://crrev.com/fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57/third_party/WebKit/Source/core/events/CustomEvent.idl
[modify] https://crrev.com/fa3fcf6eb2ec5bfb3504ab2c118bc8406fd5ef57/third_party/WebKit/Source/platform/bindings/V8PrivateProperty.h

Project Member

Comment 6 by bugdroid1@chromium.org, Jul 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d4c49e792c45c2dd3e6bce89b1c512822991af9b

commit d4c49e792c45c2dd3e6bce89b1c512822991af9b
Author: Kenichi Ishibashi <bashi@chromium.org>
Date: Tue Jul 18 17:22:55 2017

bindings: Remove custom bindings for PerformanceObserver

We don't have to use V8PrivateProperty to anymore because
PerformanceObserver holds PerformanceObserverCallback in
TraceWrapperMember and wrapper tracing makes sure that
a callback will be alive while the corresponding observer
is alive.

BUG=700680

Change-Id: I4aeabe6c379f6a07fd4bc882206db1a24dcba87f
Reviewed-on: https://chromium-review.googlesource.com/574985
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487514}
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/bindings/bindings.gni
[delete] https://crrev.com/5b3331104e2f701f06fb61164ddd0756662963c5/third_party/WebKit/Source/bindings/core/v8/custom/V8PerformanceObserverCustom.cpp
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/core/timing/PerformanceBaseTest.cpp
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/core/timing/PerformanceObserver.cpp
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/core/timing/PerformanceObserver.h
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/core/timing/PerformanceObserver.idl
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/core/timing/PerformanceObserverTest.cpp
[modify] https://crrev.com/d4c49e792c45c2dd3e6bce89b1c512822991af9b/third_party/WebKit/Source/platform/bindings/V8PrivateProperty.h

Project Member

Comment 7 by bugdroid1@chromium.org, Jul 24 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9499ec2e108be7b49eb100fb272c336c71e9ed63

commit 9499ec2e108be7b49eb100fb272c336c71e9ed63
Author: Kenichi Ishibashi <bashi@chromium.org>
Date: Mon Jul 24 01:35:54 2017

Drop [Custom] from IntersectionObserverCallback

We can generate IntersectionObserverCallback automatically and don't
need custom bindings. This CL removes the custom bindings.

As a side effect, this CL renames existing IntersectionObserverCallback
class to IntersectionObserverDelegate. This is a base class for
both web-exposed callback and Blink internal callback. The name
"IntersectionObserverCallback" is used by the code generator and we need
a different name for the base class.

BUG=700680, 569301 

Change-Id: Ie3f6c6db70446bf0466714d37551d34e9d340a40
Reviewed-on: https://chromium-review.googlesource.com/581128
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488903}
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/bindings/bindings.gni
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/bindings/core/v8/BUILD.gn
[delete] https://crrev.com/46cafe7d660547ee91b66e4f001c49a32216a6ea/third_party/WebKit/Source/bindings/core/v8/V8IntersectionObserverCallback.cpp
[delete] https://crrev.com/46cafe7d660547ee91b66e4f001c49a32216a6ea/third_party/WebKit/Source/bindings/core/v8/V8IntersectionObserverCallback.h
[add] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/bindings/core/v8/V8IntersectionObserverDelegate.cpp
[add] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/bindings/core/v8/V8IntersectionObserverDelegate.h
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/bindings/core/v8/custom/V8IntersectionObserverCustom.cpp
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/frame/LocalFrameView.cpp
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/intersection_observer/BUILD.gn
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/intersection_observer/IntersectionObserver.cpp
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/intersection_observer/IntersectionObserver.h
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/intersection_observer/IntersectionObserver.idl
[delete] https://crrev.com/46cafe7d660547ee91b66e4f001c49a32216a6ea/third_party/WebKit/Source/core/intersection_observer/IntersectionObserverCallback.h
[add] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/intersection_observer/IntersectionObserverDelegate.h
[modify] https://crrev.com/9499ec2e108be7b49eb100fb272c336c71e9ed63/third_party/WebKit/Source/core/intersection_observer/IntersectionObserverTest.cpp

Project Member

Comment 8 by bugdroid1@chromium.org, Jul 24 2017

Sign in to add a comment