aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlmediaelement.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/htmlmediaelement.rs')
-rw-r--r--components/script/dom/htmlmediaelement.rs20
1 files changed, 11 insertions, 9 deletions
diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs
index b38f796e57c..7a94768c13a 100644
--- a/components/script/dom/htmlmediaelement.rs
+++ b/components/script/dom/htmlmediaelement.rs
@@ -33,7 +33,6 @@ use std::cell::Cell;
use std::sync::{Arc, Mutex};
use string_cache::Atom;
use task_source::TaskSource;
-use task_source::dom_manipulation::DOMManipulationTask;
use time::{self, Timespec, Duration};
use url::Url;
@@ -238,11 +237,11 @@ impl HTMLMediaElement {
}
}
- let task = Task {
+ let task = box Task {
elem: Trusted::new(self),
};
let win = window_from_node(self);
- let _ = win.dom_manipulation_task_source().queue(DOMManipulationTask::Runnable(box task));
+ let _ = win.dom_manipulation_task_source().queue(task, GlobalRef::Window(&win));
}
// https://html.spec.whatwg.org/multipage/#internal-pause-steps step 2.2
@@ -262,17 +261,17 @@ impl HTMLMediaElement {
}
}
- let task = Task {
+ let task = box Task {
elem: Trusted::new(self),
};
let win = window_from_node(self);
- let _ = win.dom_manipulation_task_source().queue(DOMManipulationTask::Runnable(box task));
+ let _ = win.dom_manipulation_task_source().queue(task, GlobalRef::Window(&win));
}
fn queue_fire_simple_event(&self, type_: &'static str) {
let win = window_from_node(self);
- let task = FireSimpleEventTask::new(self, type_);
- let _ = win.dom_manipulation_task_source().queue(DOMManipulationTask::Runnable(box task));
+ let task = box FireSimpleEventTask::new(self, type_);
+ let _ = win.dom_manipulation_task_source().queue(task, GlobalRef::Window(&win));
}
fn fire_simple_event(&self, type_: &str) {
@@ -498,8 +497,9 @@ impl HTMLMediaElement {
}
fn queue_dedicated_media_source_failure_steps(&self) {
- let _ = window_from_node(self).dom_manipulation_task_source().queue(
- DOMManipulationTask::Runnable(box DedicatedMediaSourceFailureTask::new(self)));
+ let window = window_from_node(self);
+ let _ = window.dom_manipulation_task_source().queue(box DedicatedMediaSourceFailureTask::new(self),
+ GlobalRef::Window(&window));
}
// https://html.spec.whatwg.org/multipage/#dedicated-media-source-failure-steps
@@ -801,6 +801,8 @@ impl PauseIfNotInDocumentTask {
}
impl Runnable for PauseIfNotInDocumentTask {
+ fn name(&self) -> &'static str { "PauseIfNotInDocumentTask" }
+
fn handler(self: Box<PauseIfNotInDocumentTask>) {
let elem = self.elem.root();
if !elem.upcast::<Node>().is_in_doc() {