Changeset 49488 in webkit
- Timestamp:
- Oct 12, 2009 6:44:18 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 6 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r49487 r49488 1 2009-10-12 Fumitoshi Ukai <ukai@chromium.org> 2 3 Reviewed by Sam Weinig. 4 5 Add a test to verify WebSocket's EventTarget methods. 6 https://bugs.webkit.org/show_bug.cgi?id=29841 7 8 * fast/websockets/script-tests/TEMPLATE.html: Copied from LayoutTests/fast/canvas/script-tests/TEMPLATE.html. 9 * fast/websockets/script-tests/websocket-event-target.js: Added. 10 (openListener): 11 (messageListener): 12 (closeListener): 13 * fast/websockets/websocket-event-target-expected.txt: Added. 14 * fast/websockets/websocket-event-target.html: Added. 15 1 16 2009-10-12 Sam Weinig <sam@webkit.org> 2 17 -
trunk/WebCore/ChangeLog
r49487 r49488 1 2009-10-12 Fumitoshi Ukai <ukai@chromium.org> 2 3 Reviewed by Sam Weinig. 4 5 JavaScript bindings of WebSocket addEventListener/removeEventListener 6 https://bugs.webkit.org/show_bug.cgi?id=29841 7 8 Test: fast/websockets/websocket-event-target.html 9 10 * bindings/js/JSWebSocketCustom.cpp: 11 (WebCore::JSWebSocket::addEventListener): 12 (WebCore::JSWebSocket::removeEventListener): 13 * bindings/v8/custom/V8CustomBinding.h: 14 * bindings/v8/custom/V8WebSocketCustom.cpp: 15 (WebCore::CALLBACK_FUNC_DECL): 16 * websockets/WebSocket.idl: 17 1 18 2009-10-12 Sam Weinig <sam@webkit.org> 2 19 -
trunk/WebCore/bindings/js/JSWebSocketCustom.cpp
r48701 r49488 37 37 38 38 #include "KURL.h" 39 #include "JSEventListener.h" 39 40 #include "WebSocket.h" 40 41 #include "NotImplemented.h" … … 60 61 } 61 62 62 // FIXME: implement addEventListener/removeEventListener. 63 JSValue JSWebSocket::addEventListener(ExecState* exec, const ArgList& args) 64 { 65 JSDOMGlobalObject* globalObject = toJSDOMGlobalObject(impl()->scriptExecutionContext()); 66 if (!globalObject) 67 return jsUndefined(); 68 69 JSValue listener = args.at(1); 70 if (!listener.isObject()) 71 return jsUndefined(); 72 73 impl()->addEventListener(args.at(0).toString(exec), JSEventListener::create(asObject(listener), false), args.at(2).toBoolean(exec)); 74 return jsUndefined(); 75 } 76 77 JSValue JSWebSocket::removeEventListener(ExecState* exec, const ArgList& args) 78 { 79 JSDOMGlobalObject* globalObject = toJSDOMGlobalObject(impl()->scriptExecutionContext()); 80 if (!globalObject) 81 return jsUndefined(); 82 83 JSValue listener = args.at(1); 84 if (!listener.isObject()) 85 return jsUndefined(); 86 87 impl()->removeEventListener(args.at(0).toString(exec), JSEventListener::create(asObject(listener), false).get(), args.at(2).toBoolean(exec)); 88 return jsUndefined(); 89 } 63 90 64 91 } // namespace WebCore -
trunk/WebCore/bindings/v8/custom/V8CustomBinding.h
r49234 r49488 628 628 DECLARE_PROPERTY_ACCESSOR(WebSocketOnclose); 629 629 DECLARE_CALLBACK(WebSocketConstructor); 630 DECLARE_CALLBACK(WebSocketAddEventListener); 631 DECLARE_CALLBACK(WebSocketRemoveEventListener); 630 632 DECLARE_CALLBACK(WebSocketSend); 631 633 DECLARE_CALLBACK(WebSocketClose); -
trunk/WebCore/bindings/v8/custom/V8WebSocketCustom.cpp
r49086 r49488 45 45 namespace WebCore { 46 46 47 // ??? AddEventListener, RemoveEventListener 47 CALLBACK_FUNC_DECL(WebSocketAddEventListener) 48 { 49 INC_STATS("DOM.WebSocket.addEventListener()"); 50 WebSocket* webSocket = V8DOMWrapper::convertToNativeObject<WebSocket>(V8ClassIndex::WEBSOCKET, args.Holder()); 51 52 RefPtr<EventListener> listener = V8DOMWrapper::getEventListener(webSocket, args[1], false, ListenerFindOrCreate); 53 if (listener) { 54 String type = toWebCoreString(args[0]); 55 bool useCapture = args[2]->BooleanValue(); 56 webSocket->addEventListener(type, listener, useCapture); 57 58 createHiddenDependency(args.Holder(), args[1], V8Custom::kWebSocketCacheIndex); 59 } 60 return v8::Undefined(); 61 } 62 63 CALLBACK_FUNC_DECL(WebSocketRemoveEventListener) 64 { 65 INC_STATS("DOM.WebSocket.removeEventListener()"); 66 WebSocket* webSocket = V8DOMWrapper::convertToNativeObject<WebSocket>(V8ClassIndex::WEBSOCKET, args.Holder()); 67 68 RefPtr<EventListener> listener = V8DOMWrapper::getEventListener(webSocket, args[1], false, ListenerFindOnly); 69 if (listener) { 70 String type = toWebCoreString(args[0]); 71 bool useCapture = args[2]->BooleanValue(); 72 webSocket->removeEventListener(type, listener.get(), useCapture); 73 removeHiddenDependency(args.Holder(), args[1], V8Custom::kWebSocketCacheIndex); 74 } 75 return v8::Undefined(); 76 } 48 77 49 78 CALLBACK_FUNC_DECL(WebSocketConstructor) -
trunk/WebCore/websockets/WebSocket.idl
r48701 r49488 56 56 57 57 // EventTarget interface 58 //[Custom] void addEventListener(in DOMString type,59 //in EventListener listener,60 //in boolean useCapture);61 //[Custom] void removeEventListener(in DOMString type,62 //in EventListener listener,63 //in boolean useCapture);64 //boolean dispatchEvent(in Event evt)65 //raises(EventException);58 [Custom] void addEventListener(in DOMString type, 59 in EventListener listener, 60 in boolean useCapture); 61 [Custom] void removeEventListener(in DOMString type, 62 in EventListener listener, 63 in boolean useCapture); 64 boolean dispatchEvent(in Event evt) 65 raises(EventException); 66 66 }; 67 67 } -
trunk/WebKitTools/ChangeLog
r49485 r49488 1 2009-10-12 Fumitoshi Ukai <ukai@chromium.org> 2 3 Reviewed by Sam Weinig. 4 5 Enable experimentalWebSocket in DumpRenderTree for LayoutTest. 6 https://bugs.webkit.org/show_bug.cgi?id=29841 7 8 * DumpRenderTree/mac/DumpRenderTree.mm: 9 (resetDefaultsToConsistentValues): 10 * DumpRenderTree/win/DumpRenderTree.cpp: 11 (resetDefaultsToConsistentValues): 12 1 13 2009-10-12 Yaar Schnitman <yaar@chromium.org> 2 14 -
trunk/WebKitTools/DumpRenderTree/mac/DumpRenderTree.mm
r49411 r49488 410 410 [preferences setXSSAuditorEnabled:NO]; 411 411 [preferences setExperimentalNotificationsEnabled:NO]; 412 [preferences setExperimentalWebSocketsEnabled: NO];412 [preferences setExperimentalWebSocketsEnabled:YES]; 413 413 [preferences setPluginAllowedRunTime:1]; 414 414 -
trunk/WebKitTools/DumpRenderTree/win/DumpRenderTree.cpp
r49299 r49488 738 738 prefsPrivate->setDeveloperExtrasEnabled(FALSE); 739 739 prefsPrivate->setExperimentalNotificationsEnabled(TRUE); 740 prefsPrivate->setExperimentalWebSocketsEnabled( FALSE);740 prefsPrivate->setExperimentalWebSocketsEnabled(TRUE); 741 741 prefsPrivate->setShouldPaintNativeControls(FALSE); // FIXME - need to make DRT pass with Windows native controls <http://bugs.webkit.org/show_bug.cgi?id=25592> 742 742 prefsPrivate->setXSSAuditorEnabled(FALSE);
Note: See TracChangeset
for help on using the changeset viewer.