aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom
diff options
context:
space:
mode:
authorStephen (Ziyun) Li <stephen.liziyun@gmail.com>2016-04-25 21:28:17 -0400
committerStephen (Ziyun) Li <stephen.liziyun@gmail.com>2016-04-26 00:32:50 -0400
commit889579c6ded1e019576a9203fd933466a2bced1c (patch)
treef3a102339fbadbafe6338fb4c2d4836adca4e305 /components/script/dom
parent81f6e70a623a6f11535322ed2ef954eafaf8c70c (diff)
downloadservo-889579c6ded1e019576a9203fd933466a2bced1c.tar.gz
servo-889579c6ded1e019576a9203fd933466a2bced1c.zip
Implement the "progressevent" argument to Document::createEvent
Diffstat (limited to 'components/script/dom')
-rw-r--r--components/script/dom/document.rs3
-rw-r--r--components/script/dom/progressevent.rs6
2 files changed, 9 insertions, 0 deletions
diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs
index 9488c0bdc41..7d25e484aa3 100644
--- a/components/script/dom/document.rs
+++ b/components/script/dom/document.rs
@@ -68,6 +68,7 @@ use dom::node::{self, CloneChildrenFlag, Node, NodeDamage, window_from_node};
use dom::nodeiterator::NodeIterator;
use dom::nodelist::NodeList;
use dom::processinginstruction::ProcessingInstruction;
+use dom::progressevent::ProgressEvent;
use dom::range::Range;
use dom::servohtmlparser::{ParserRoot, ParserRef, MutNullableParserField};
use dom::storageevent::StorageEvent;
@@ -2183,6 +2184,8 @@ impl DocumentMethods for Document {
Ok(Root::upcast(WebGLContextEvent::new_uninitialized(GlobalRef::Window(&self.window)))),
"storageevent" =>
Ok(Root::upcast(StorageEvent::new_uninitialized(&self.window, self.URL()))),
+ "progressevent" =>
+ Ok(Root::upcast(ProgressEvent::new_uninitialized(&self.window))),
_ =>
Err(Error::NotSupported),
}
diff --git a/components/script/dom/progressevent.rs b/components/script/dom/progressevent.rs
index 215bcdd3db4..4a3d3f3da7d 100644
--- a/components/script/dom/progressevent.rs
+++ b/components/script/dom/progressevent.rs
@@ -11,6 +11,7 @@ use dom::bindings::inheritance::Castable;
use dom::bindings::js::Root;
use dom::bindings::reflector::reflect_dom_object;
use dom::event::{Event, EventBubbles, EventCancelable};
+use dom::window::Window;
use string_cache::Atom;
use util::str::DOMString;
@@ -31,6 +32,11 @@ impl ProgressEvent {
total: total
}
}
+ pub fn new_uninitialized(window: &Window) -> Root<ProgressEvent> {
+ reflect_dom_object(box ProgressEvent::new_inherited(false, 0, 0),
+ GlobalRef::Window(window),
+ ProgressEventBinding::Wrap)
+ }
pub fn new(global: GlobalRef, type_: Atom,
can_bubble: EventBubbles, cancelable: EventCancelable,
length_computable: bool, loaded: u64, total: u64) -> Root<ProgressEvent> {