Skip to content
  • tommyw@google.com's avatar
    MediaStream API: Add MediaStream management to RTCPeerConnection · 0cc32da8
    tommyw@google.com authored
    https://bugs.webkit.org/show_bug.cgi?id=95543
    
    Reviewed by Adam Barth.
    
    Source/Platform:
    
    * chromium/public/WebMediaStreamCenter.h:
    (WebMediaStreamCenter):
    * chromium/public/WebRTCPeerConnectionHandler.h:
    (WebKit):
    (WebRTCPeerConnectionHandler):
    * chromium/public/WebRTCPeerConnectionHandlerClient.h:
    (WebKit):
    (WebRTCPeerConnectionHandlerClient):
    
    Source/WebCore:
    
    This includes addStream/removeStream to RTCPeerConnection,
    as well as didAddRemoteStream/didRemoveRemoteStream to RTCPeerConnectionHandlerClient.
    
    Test: fast/mediastream/RTCPeerConnection-AddRemoveStream.html
    
    * Modules/mediastream/RTCPeerConnection.cpp:
    (WebCore::RTCPeerConnection::parseConfiguration):
    (WebCore::RTCPeerConnection::RTCPeerConnection):
    (WebCore::RTCPeerConnection::addStream):
    (WebCore):
    (WebCore::RTCPeerConnection::removeStream):
    (WebCore::RTCPeerConnection::localStreams):
    (WebCore::RTCPeerConnection::remoteStreams):
    (WebCore::RTCPeerConnection::didAddRemoteStream):
    (WebCore::RTCPeerConnection::didRemoveRemoteStream):
    * Modules/mediastream/RTCPeerConnection.h:
    (RTCPeerConnection):
    * Modules/mediastream/RTCPeerConnection.idl:
    * bindings/js/Dictionary.cpp:
    (WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
    (WebCore::Dictionary::getOwnPropertyNames):
    * bindings/v8/Dictionary.cpp:
    (WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
    (WebCore::Dictionary::getOwnPropertyNames):
    * bindings/v8/Dictionary.h:
    (Dictionary):
    * platform/mediastream/RTCPeerConnectionHandler.cpp:
    (RTCPeerConnectionHandlerDummy):
    (WebCore::RTCPeerConnectionHandlerDummy::addStream):
    (WebCore):
    (WebCore::RTCPeerConnectionHandlerDummy::removeStream):
    * platform/mediastream/RTCPeerConnectionHandler.h:
    (RTCPeerConnectionHandler):
    * platform/mediastream/RTCPeerConnectionHandlerClient.h:
    (WebCore):
    (RTCPeerConnectionHandlerClient):
    * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
    (WebCore::RTCPeerConnectionHandlerChromium::addStream):
    (WebCore):
    (WebCore::RTCPeerConnectionHandlerChromium::removeStream):
    (WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteStream):
    (WebCore::RTCPeerConnectionHandlerChromium::didRemoveRemoteStream):
    * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
    (WebKit):
    (RTCPeerConnectionHandlerChromium):
    
    Source/WebKit/chromium:
    
    * src/AssertMatchingEnums.cpp:
    
    Tools:
    
    Extending MockWebRTCPeerConnectionHandler to handle addStream/removeStream.
    
    * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
    (MockWebRTCPeerConnectionHandler::MockWebRTCPeerConnectionHandler):
    (MockWebRTCPeerConnectionHandler::addStream):
    (MockWebRTCPeerConnectionHandler::removeStream):
    * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
    (MockWebRTCPeerConnectionHandler):
    
    LayoutTests:
    
    * fast/mediastream/RTCPeerConnection-AddRemoveStream-expected.txt: Added.
    * fast/mediastream/RTCPeerConnection-AddRemoveStream.html: Added.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127365 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    0cc32da8