Changeset 281298 in webkit
- Timestamp:
- Aug 20, 2021 12:55:13 AM (11 months ago)
- Location:
- trunk
- Files:
-
- 15 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/imported/w3c/ChangeLog (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-canTrickleIceCandidates-expected.txt (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-constructor-expected.txt (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/webrtc/idlharness.https.window-expected.txt (modified) (2 diffs)
-
LayoutTests/webrtc/rtcpeerconnection-error-messages-expected.txt (modified) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/PeerConnectionBackend.h (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/RTCPeerConnection.h (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/RTCPeerConnection.idl (modified) (2 diffs)
-
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp (modified) (1 diff)
-
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r281296 r281298 1 2021-08-20 Youenn Fablet <youenn@apple.com> 2 3 Add support for RTCPeerConnection.canTrickleIceCandidates 4 https://bugs.webkit.org/show_bug.cgi?id=229287 5 6 Reviewed by Eric Carlson. 7 8 * webrtc/rtcpeerconnection-error-messages-expected.txt: 9 1 10 2021-08-19 Tim Nguyen <ntim@apple.com> 2 11 -
trunk/LayoutTests/imported/w3c/ChangeLog
r281295 r281298 1 2021-08-20 Youenn Fablet <youenn@apple.com> 2 3 Add support for RTCPeerConnection.canTrickleIceCandidates 4 https://bugs.webkit.org/show_bug.cgi?id=229287 5 6 Reviewed by Eric Carlson. 7 8 * web-platform-tests/webrtc/RTCPeerConnection-canTrickleIceCandidates-expected.txt: 9 * web-platform-tests/webrtc/RTCPeerConnection-constructor-expected.txt: 10 * web-platform-tests/webrtc/idlharness.https.window-expected.txt: 11 1 12 2021-08-19 Antti Koivisto <antti@apple.com> 2 13 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-canTrickleIceCandidates-expected.txt
r216537 r281298 1 1 2 FAIL canTrickleIceCandidates property is null prior to setRemoteDescription assert_equals: canTrickleIceCandidates property is null expected (object) null but got (undefined) undefined 3 FAIL canTrickleIceCandidates property is true after setRemoteDescription with a=ice-options:trickle assert_true: canTrickleIceCandidates property is true after setRemoteDescription expected true got undefined 4 FAIL canTrickleIceCandidates property is false after setRemoteDescription without a=ice-options:trickle assert_false: canTrickleIceCandidates property is false after setRemoteDescription expected false got undefined 2 PASS canTrickleIceCandidates property is null prior to setRemoteDescription 3 PASS canTrickleIceCandidates property is true after setRemoteDescription with a=ice-options:trickle 4 PASS canTrickleIceCandidates property is false after setRemoteDescription without a=ice-options:trickle 5 5 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-constructor-expected.txt
r267649 r281298 21 21 PASS iceConnectionState initial value 22 22 PASS connectionState initial value 23 FAIL canTrickleIceCandidates initial value assert_equals: expected (object) null but got (undefined) undefined 23 PASS canTrickleIceCandidates initial value 24 24 -
trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/idlharness.https.window-expected.txt
r281225 r281298 38 38 PASS RTCPeerConnection interface: attribute iceConnectionState 39 39 PASS RTCPeerConnection interface: attribute connectionState 40 FAIL RTCPeerConnection interface: attribute canTrickleIceCandidates assert_true: The prototype object must have a property "canTrickleIceCandidates" expected true got false 40 PASS RTCPeerConnection interface: attribute canTrickleIceCandidates 41 41 PASS RTCPeerConnection interface: operation restartIce() 42 42 PASS RTCPeerConnection interface: operation getConfiguration() … … 89 89 PASS RTCPeerConnection interface: new RTCPeerConnection() must inherit property "iceConnectionState" with the proper type 90 90 PASS RTCPeerConnection interface: new RTCPeerConnection() must inherit property "connectionState" with the proper type 91 FAIL RTCPeerConnection interface: new RTCPeerConnection() must inherit property "canTrickleIceCandidates" with the proper type assert_inherits: property "canTrickleIceCandidates" not found in prototype chain 91 PASS RTCPeerConnection interface: new RTCPeerConnection() must inherit property "canTrickleIceCandidates" with the proper type 92 92 PASS RTCPeerConnection interface: new RTCPeerConnection() must inherit property "restartIce()" with the proper type 93 93 PASS RTCPeerConnection interface: new RTCPeerConnection() must inherit property "getConfiguration()" with the proper type -
trunk/LayoutTests/webrtc/rtcpeerconnection-error-messages-expected.txt
r270101 r281298 9 9 TypeError: The RTCPeerConnection.iceConnectionState getter can only be used on instances of RTCPeerConnection 10 10 TypeError: The RTCPeerConnection.connectionState getter can only be used on instances of RTCPeerConnection 11 [object RTCPeerConnection] has no property named canTrickleIceCandidates 11 TypeError: The RTCPeerConnection.canTrickleIceCandidates getter can only be used on instances of RTCPeerConnection 12 12 [object RTCPeerConnection] has no property named defaultIceServers 13 13 TypeError: Can only call RTCPeerConnection.getConfiguration on instances of RTCPeerConnection -
trunk/Source/WebCore/ChangeLog
r281296 r281298 1 2021-08-20 Youenn Fablet <youenn@apple.com> 2 3 Add support for RTCPeerConnection.canTrickleIceCandidates 4 https://bugs.webkit.org/show_bug.cgi?id=229287 5 6 Reviewed by Eric Carlson. 7 8 Add support for https://w3c.github.io/webrtc-pc/#dom-rtcpeerconnection-cantrickleicecandidates. 9 Return null in case connection is closed or setRemoteDescription was never called successfully. 10 Add binding code to get the value from webrtc backend. 11 Covered by rebased tests. 12 13 * Modules/mediastream/PeerConnectionBackend.h: 14 * Modules/mediastream/RTCPeerConnection.cpp: 15 (WebCore::RTCPeerConnection::canTrickleIceCandidates const): 16 * Modules/mediastream/RTCPeerConnection.h: 17 * Modules/mediastream/RTCPeerConnection.idl: 18 * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp: 19 (WebCore::LibWebRTCMediaEndpoint::canTrickleIceCandidates const): 20 * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h: 21 * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp: 22 (WebCore::LibWebRTCPeerConnectionBackend::canTrickleIceCandidates const): 23 * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h: 24 1 25 2021-08-19 Tim Nguyen <ntim@apple.com> 2 26 -
trunk/Source/WebCore/Modules/mediastream/PeerConnectionBackend.h
r281225 r281298 135 135 void enableICECandidateFiltering(); 136 136 137 virtual std::optional<bool> canTrickleIceCandidates() const = 0; 138 137 139 virtual void applyRotationForOutgoingVideoSources() { } 138 140 -
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp
r281231 r281298 335 335 } 336 336 337 std::optional<bool> RTCPeerConnection::canTrickleIceCandidates() const 338 { 339 if (isClosed() || !remoteDescription()) 340 return { }; 341 return m_backend-> canTrickleIceCandidates(); 342 } 343 337 344 // Implementation of https://w3c.github.io/webrtc-pc/#set-pc-configuration 338 345 ExceptionOr<Vector<MediaEndpointConfiguration::IceServerInfo>> RTCPeerConnection::iceServersFromConfiguration(RTCConfiguration& newConfiguration, const RTCConfiguration* existingConfiguration, bool isLocalDescriptionSet) -
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.h
r281231 r281298 127 127 RTCIceConnectionState iceConnectionState() const { return m_iceConnectionState; } 128 128 RTCPeerConnectionState connectionState() const { return m_connectionState; } 129 std::optional<bool> canTrickleIceCandidates() const; 129 130 130 131 void restartIce() { m_backend->restartIce(); } -
trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl
r276204 r281298 100 100 readonly attribute RTCIceConnectionState iceConnectionState; 101 101 readonly attribute RTCPeerConnectionState connectionState; 102 // FIXME 169644: missing canTrickleIceCandidates 103 // FIXME 169644: missing defaultIceServers 102 readonly attribute boolean? canTrickleIceCandidates; 104 103 105 104 undefined restartIce(); … … 141 140 // 8.2 Statistics API 142 141 Promise<RTCStatsReport> getStats(optional MediaStreamTrack? selector = null); 143 144 145 // 9.6 Identity Provider API146 // FIXME 169644: missing IdP147 142 }; -
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
r279483 r281298 403 403 } 404 404 405 std::optional<bool> LibWebRTCMediaEndpoint::canTrickleIceCandidates() const 406 { 407 if (!m_backend) 408 return { }; 409 return m_backend->can_trickle_ice_candidates(); 410 } 411 405 412 void LibWebRTCMediaEndpoint::newTransceiver(rtc::scoped_refptr<webrtc::RtpTransceiverInterface>&& rtcTransceiver) 406 413 { -
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h
r279483 r281298 118 118 void collectTransceivers(); 119 119 120 std::optional<bool> canTrickleIceCandidates() const; 121 120 122 void suspend(); 121 123 void resume(); -
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp
r279483 r281298 465 465 } 466 466 467 std::optional<bool> LibWebRTCPeerConnectionBackend::canTrickleIceCandidates() const 468 { 469 return m_endpoint->canTrickleIceCandidates(); 470 } 471 467 472 } // namespace WebCore 468 473 -
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h
r279483 r281298 80 80 RefPtr<RTCSessionDescription> pendingRemoteDescription() const final; 81 81 82 std::optional<bool> canTrickleIceCandidates() const final; 83 82 84 void emulatePlatformEvent(const String&) final { } 83 85 void applyRotationForOutgoingVideoSources() final;
Note: See TracChangeset
for help on using the changeset viewer.