Bug 79625

Summary: Move PointerLock APIs from Navigator.idl to NavigatorPointerLock.idl
Product: WebKit Reporter: Kentaro Hara <haraken>
Component: WebCore JavaScriptAssignee: Kentaro Hara <haraken>
Status: RESOLVED WONTFIX    
Severity: Normal CC: abarth, ap, ojan, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 79327    
Attachments:
Description Flags
Patch abarth: review-

Kentaro Hara
Reported 2012-02-26 22:41:10 PST
For WebKit modularization, we can move PointerLock APIs from Navigator.idl to NavigatorPointerLock.idl.
Attachments
Patch (12.49 KB, patch)
2012-02-26 22:45 PST, Kentaro Hara
abarth: review-
Kentaro Hara
Comment 1 2012-02-26 22:45:56 PST
Adam Barth
Comment 2 2012-02-26 22:59:35 PST
Comment on attachment 128956 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=128956&action=review > Source/WebCore/Modules/pointerlock/NavigatorPointerLock.idl:25 > + ] NavigatorPointerLock { There are a bunch of ENABLED(POINTER_LOCK) ifdefs in WebCore proper. It might be better to wait on creating a pointerlock module until we're certain we can remove them all (or at least the vast majority of them). > Source/WebCore/page/PointerLock.h:43 > -class PointerLock : public RefCounted<PointerLock>, public DOMWindowProperty { > +class PointerLock : public RefCounted<PointerLock>, public DOMWindowProperty, public NavigatorSupplement { PointerLock is RefCounted but NavigatorSupplement uses OwnPtr. This patch will create a use-after-free bug. We should make NavigatorPointerLock be the NavigatorSupplement, which can hold a RefPtr to the PointerLock object.
Adam Barth
Comment 3 2012-02-26 23:00:18 PST
Note: This patch conflicts with <http://trac.webkit.org/changeset/108958>. You'll probably want to update past that revision when working on this patch.
Adam Barth
Comment 4 2012-02-26 23:01:11 PST
Check out NavigatorGamepad for an example of how to create an OwnPtr'ed container class for a RefCounted object that hangs off of Navigator.
Kentaro Hara
Comment 5 2012-02-26 23:28:40 PST
(In reply to comment #2) > (From update of attachment 128956 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=128956&action=review > > > Source/WebCore/Modules/pointerlock/NavigatorPointerLock.idl:25 > > + ] NavigatorPointerLock { > > There are a bunch of ENABLED(POINTER_LOCK) ifdefs in WebCore proper. It might be better to wait on creating a pointerlock module until we're certain we can remove them all (or at least the vast majority of them). Makes sense. As far as I see, it seems difficult to get rid of them. For now let me mark this bug as WONTFIX.
Note You need to log in before you can comment on or make changes to this bug.