diff options
4 files changed, 15 insertions, 17 deletions
diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs index 74c7c7ade62..066c53484e6 100644 --- a/components/script/dom/htmlmediaelement.rs +++ b/components/script/dom/htmlmediaelement.rs @@ -1548,17 +1548,11 @@ enum PlaybackDirection { // XXX Placeholder implementations for: // // - https://github.com/servo/servo/issues/22293 -// - https://github.com/servo/servo/issues/22321 impl HTMLMediaElement { // https://github.com/servo/servo/issues/22293 fn direction_of_playback(&self) -> PlaybackDirection { PlaybackDirection::Forwards } - - // https://github.com/servo/servo/pull/22321 - fn Loop(&self) -> bool { - false - } } impl Drop for HTMLMediaElement { @@ -1587,6 +1581,11 @@ impl HTMLMediaElementMethods for HTMLMediaElement { // https://html.spec.whatwg.org/multipage/#dom-media-autoplay make_bool_setter!(SetAutoplay, "autoplay"); + // https://html.spec.whatwg.org/multipage/#attr-media-loop + make_bool_getter!(Loop, "loop"); + // https://html.spec.whatwg.org/multipage/#attr-media-loop + make_bool_setter!(SetLoop, "loop"); + // https://html.spec.whatwg.org/multipage/#dom-media-defaultmuted make_bool_getter!(DefaultMuted, "muted"); // https://html.spec.whatwg.org/multipage/#dom-media-defaultmuted diff --git a/components/script/dom/webidls/HTMLMediaElement.webidl b/components/script/dom/webidls/HTMLMediaElement.webidl index ee15d4b0dc3..71f6120abaf 100644 --- a/components/script/dom/webidls/HTMLMediaElement.webidl +++ b/components/script/dom/webidls/HTMLMediaElement.webidl @@ -48,7 +48,7 @@ interface HTMLMediaElement : HTMLElement { // readonly attribute TimeRanges seekable; readonly attribute boolean ended; [CEReactions] attribute boolean autoplay; - // [CEReactions] attribute boolean loop; + [CEReactions] attribute boolean loop; Promise<void> play(); void pause(); diff --git a/tests/wpt/metadata/html/dom/interfaces.https.html.ini b/tests/wpt/metadata/html/dom/interfaces.https.html.ini index 0b822e364fb..6d07d591f9b 100644 --- a/tests/wpt/metadata/html/dom/interfaces.https.html.ini +++ b/tests/wpt/metadata/html/dom/interfaces.https.html.ini @@ -1053,7 +1053,7 @@ expected: FAIL [HTMLMediaElement interface: document.createElement("video") must inherit property "loop" with the proper type] - expected: FAIL + expected: PASS [HTMLMediaElement interface: document.createElement("video") must inherit property "controls" with the proper type] expected: FAIL @@ -1122,7 +1122,7 @@ expected: FAIL [HTMLMediaElement interface: document.createElement("audio") must inherit property "loop" with the proper type] - expected: FAIL + expected: PASS [HTMLMediaElement interface: document.createElement("audio") must inherit property "controls" with the proper type] expected: FAIL @@ -1257,7 +1257,7 @@ expected: FAIL [HTMLMediaElement interface: new Audio() must inherit property "loop" with the proper type] - expected: FAIL + expected: PASS [HTMLMediaElement interface: new Audio() must inherit property "play()" with the proper type] expected: FAIL @@ -1404,7 +1404,7 @@ expected: FAIL [HTMLMediaElement interface: attribute loop] - expected: FAIL + expected: PASS [HTMLMediaElement interface: operation play()] expected: FAIL @@ -6778,7 +6778,7 @@ expected: FAIL [HTMLMediaElement interface: document.createElement("video") must inherit property "loop" with the proper type] - expected: FAIL + expected: PASS [HTMLMediaElement interface: document.createElement("video") must inherit property "controls" with the proper type] expected: FAIL @@ -6796,7 +6796,7 @@ expected: FAIL [HTMLMediaElement interface: document.createElement("audio") must inherit property "loop" with the proper type] - expected: FAIL + expected: PASS [HTMLMediaElement interface: document.createElement("audio") must inherit property "controls" with the proper type] expected: FAIL @@ -6814,7 +6814,7 @@ expected: FAIL [HTMLMediaElement interface: new Audio() must inherit property "loop" with the proper type] - expected: FAIL + expected: PASS [HTMLMediaElement interface: new Audio() must inherit property "controls" with the proper type] expected: FAIL @@ -6829,7 +6829,7 @@ expected: FAIL [HTMLMediaElement interface: attribute loop] - expected: FAIL + expected: PASS [HTMLMediaElement interface: operation play()] expected: FAIL diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/video_loop_base.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/video_loop_base.html.ini index 9d801529171..22ae205ea3a 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/video_loop_base.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/video_loop_base.html.ini @@ -1,5 +1,4 @@ [video_loop_base.html] - expected: TIMEOUT [Check if video.loop is set to true that expecting the seeking event is fired more than once] - expected: NOTRUN + expected: PASS |