diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs index 7d976a9d899..0d66f1d63aa 100644 --- a/components/script/dom/htmlmediaelement.rs +++ b/components/script/dom/htmlmediaelement.rs @@ -79,9 +79,6 @@ pub struct HTMLMediaElement { /// Play promises which are soon to be fulfilled by a queued task. #[ignore_heap_size_of = "promises are hard"] in_flight_play_promises_queue: DomRefCell]>, ErrorResult)>>, - /// The details of the video currently related to this media element. - // FIXME(nox): Why isn't this in HTMLVideoElement? - video: DomRefCell>, } /// https://html.spec.whatwg.org/multipage/#dom-media-networkstate @@ -105,17 +102,6 @@ enum ReadyState { HaveEnoughData = HTMLMediaElementConstants::HAVE_ENOUGH_DATA as u8, } -#[derive(HeapSizeOf, JSTraceable)] -pub struct VideoMedia { - format: String, - #[ignore_heap_size_of = "defined in time"] - duration: Duration, - width: u32, - height: u32, - video: String, - audio: Option, -} - impl HTMLMediaElement { pub fn new_inherited( tag_name: LocalName, @@ -136,7 +122,6 @@ impl HTMLMediaElement { delaying_the_load_event_flag: Default::default(), pending_play_promises: Default::default(), in_flight_play_promises_queue: Default::default(), - video: DomRefCell::new(None), } } @@ -1111,23 +1096,10 @@ impl HTMLMediaElementContext { } fn check_metadata(&mut self, elem: &HTMLMediaElement) { - match audio_video_metadata::get_format_from_slice(&self.data) { - Ok(audio_video_metadata::Metadata::Video(meta)) => { - let dur = meta.audio.duration.unwrap_or(::std::time::Duration::new(0, 0)); - *elem.video.borrow_mut() = Some(VideoMedia { - format: format!("{:?}", meta.format), - duration: Duration::seconds(dur.as_secs() as i64) + - Duration::nanoseconds(dur.subsec_nanos() as i64), - width: meta.dimensions.width, - height: meta.dimensions.height, - video: meta.video.unwrap_or("".to_owned()), - audio: meta.audio.audio, - }); - // Step 6 - elem.change_ready_state(ReadyState::HaveMetadata); - self.have_metadata = true; - } - _ => {} + if audio_video_metadata::get_format_from_slice(&self.data).is_ok() { + // Step 6. + elem.change_ready_state(ReadyState::HaveMetadata); + self.have_metadata = true; } } } diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini index 8da86942ad5..7d57f0e066e 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/audio_loop_base.html.ini @@ -1,5 +1,6 @@ [audio_loop_base.html] type: testharness + disabled: extreme timeout [Check if audio.loop is set to true that expecting the seeking event is fired more than once] expected: FAIL diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/error-codes/error.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/error-codes/error.html.ini index 28828fd7918..ee39e04f81a 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/error-codes/error.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/error-codes/error.html.ini @@ -1,8 +1,5 @@ [error.html] type: testharness - [audio.error after successful load] - expected: FAIL - [audio.error after setting src to the empty string] expected: FAIL diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplay.html.ini deleted file mode 100644 index 68c911f9d10..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_canplay.html] - type: testharness - [setting src attribute on autoplay audio should trigger canplay event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html.ini deleted file mode 100644 index 2284a7f5d4a..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_canplay_noautoplay.html] - type: testharness - [setting src attribute on non-autoplay audio should trigger canplay event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplaythrough.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplaythrough.html.ini deleted file mode 100644 index afa93073b03..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplaythrough.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_canplaythrough.html] - type: testharness - [setting src attribute on autoplay audio should trigger canplaythrough event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html.ini deleted file mode 100644 index ce06cfe5a5d..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_canplaythrough_noautoplay.html] - type: testharness - [setting src attribute on non-autoplay audio should trigger canplaythrough event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadeddata.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadeddata.html.ini deleted file mode 100644 index f38a452d0b2..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadeddata.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_loadeddata.html] - type: testharness - [setting src attribute on autoplay audio should trigger loadeddata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html.ini deleted file mode 100644 index 85c747ceabb..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_loadeddata_noautoplay.html] - type: testharness - [setting src attribute on non-autoplay audio should trigger loadeddata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadedmetadata.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadedmetadata.html.ini deleted file mode 100644 index 1111573d7d5..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadedmetadata.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_loadedmetadata.html] - type: testharness - [setting src attribute on autoplay audio should trigger loadedmetadata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html.ini deleted file mode 100644 index bb2d284c99c..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_loadedmetadata_noautoplay.html] - type: testharness - [setting src attribute on non-autoplay audio should trigger loadedmetadata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html.ini deleted file mode 100644 index 349cfd0463e..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_order_canplay_canplaythrough.html] - type: testharness - [setting src attribute on autoplay audio should trigger canplay then canplaythrough event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html.ini deleted file mode 100644 index 134dda1fdf6..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_order_canplay_playing.html] - type: testharness - [setting src attribute on autoplay audio should trigger canplay then playing event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html.ini deleted file mode 100644 index 767a2a5bf71..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_order_loadedmetadata_loadeddata.html] - type: testharness - [setting src attribute on autoplay audio should trigger loadedmetadata then loadeddata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html.ini deleted file mode 100644 index cc248913c3d..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_order_loadstart_progress.html] - type: testharness - [setting src attribute on autoplay audio should trigger loadstart then progress event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_pause.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_pause.html.ini deleted file mode 100644 index b0c318fc3e8..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_pause.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_pause.html] - type: testharness - [calling pause() on autoplay audio should trigger pause event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_play.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_play.html.ini deleted file mode 100644 index 225a5d169ba..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_play.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_play.html] - type: testharness - [setting src attribute on autoplay audio should trigger play event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_playing.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_playing.html.ini deleted file mode 100644 index 636f37793fe..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_playing.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_playing.html] - type: testharness - [setting src attribute on autoplay audio should trigger playing event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html.ini deleted file mode 100644 index 0ac49b31962..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html.ini +++ /dev/null @@ -1,6 +0,0 @@ -[event_playing_noautoplay.html] - type: testharness - expected: TIMEOUT - [calling play() on audio should trigger playing event] - expected: NOTRUN - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_progress.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_progress.html.ini deleted file mode 100644 index 05705d8e0a5..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_progress.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_progress.html] - type: testharness - [setting src attribute on autoplay audio should trigger progress event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html.ini deleted file mode 100644 index 29866c58999..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[event_progress_noautoplay.html] - type: testharness - [setting src attribute on non-autoplay audio should trigger progress event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini index e310be391d9..22d1f1d6900 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html.ini @@ -2,7 +2,7 @@ type: testharness expected: TIMEOUT [calling play() on a sufficiently long audio should trigger timeupdate event] - expected: FAIL + expected: NOTRUN [calling play() on a sufficiently long video should trigger timeupdate event] expected: NOTRUN diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html.ini deleted file mode 100644 index 566ab27894d..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html.ini +++ /dev/null @@ -1,14 +0,0 @@ -[autoplay-overrides-preload.html] - type: testharness - [autoplay (set first) overrides preload "none"] - expected: FAIL - - [autoplay (set last) overrides preload "none"] - expected: FAIL - - [autoplay (set first) overrides preload "metadata"] - expected: FAIL - - [autoplay (set last) overrides preload "metadata"] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html.ini deleted file mode 100644 index 0afc8a5b5fc..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[load-events-networkState.html] - type: testharness - [NETWORK_IDLE] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/networkState_during_progress.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/networkState_during_progress.html.ini deleted file mode 100644 index 0e4c506ece7..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/networkState_during_progress.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[networkState_during_progress.html] - type: testharness - [audioElement.networkState should be NETWORK_LOADING during progress event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/paused_false_during_play.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/paused_false_during_play.html.ini deleted file mode 100644 index 0897ac3cc12..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/paused_false_during_play.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[paused_false_during_play.html] - type: testharness - [audio.paused should be false during play event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/ready-states/autoplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/ready-states/autoplay.html.ini deleted file mode 100644 index 3b7851d22d4..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/ready-states/autoplay.html.ini +++ /dev/null @@ -1,17 +0,0 @@ -[autoplay.html] - type: testharness - [audio.autoplay] - expected: FAIL - - [audio.autoplay and load()] - expected: FAIL - - [audio.autoplay and play()] - expected: FAIL - - [audio.autoplay and pause()] - expected: FAIL - - [audio.autoplay and internal pause steps] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_canplay.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_canplay.html.ini deleted file mode 100644 index 189ef226dc8..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_canplay.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[readyState_during_canplay.html] - type: testharness - [audio.readyState should be >= HAVE_FUTURE_DATA during canplay event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html.ini deleted file mode 100644 index 1fee36962cd..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[readyState_during_canplaythrough.html] - type: testharness - [audio.readyState should be HAVE_ENOUGH_DATA during canplaythrough event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html.ini deleted file mode 100644 index e7f11ac599a..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[readyState_during_loadeddata.html] - type: testharness - [audio.readyState should be >= HAVE_CURRENT_DATA during loadeddata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html.ini deleted file mode 100644 index 2780c82a9ba..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[readyState_during_loadedmetadata.html] - type: testharness - [audio.readyState should be >= HAVE_METADATA during loadedmetadata event] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_playing.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_playing.html.ini deleted file mode 100644 index 21176eb3c40..00000000000 --- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/readyState_during_playing.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[readyState_during_playing.html] - type: testharness - [audio.readyState should be >= HAVE_FUTURE_DATA during playing event] - expected: FAIL -