This commit is contained in:
Bogdan Cuza 2015-07-21 17:05:49 +03:00
parent 681b11c08b
commit 68d574bc32
2 changed files with 8 additions and 5 deletions

View file

@ -10,7 +10,7 @@ use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
use dom::bindings::js::Root; use dom::bindings::js::Root;
use dom::bindings::utils::reflect_dom_object; use dom::bindings::utils::reflect_dom_object;
use dom::event::{Event, EventTypeId}; use dom::event::{Event, EventTypeId, EventBubbles, EventCancelable};
use util::str::DOMString; use util::str::DOMString;
#[dom_struct] #[dom_struct]
@ -37,14 +37,14 @@ impl ProgressEvent {
} }
} }
pub fn new(global: GlobalRef, type_: DOMString, pub fn new(global: GlobalRef, type_: DOMString,
can_bubble: bool, cancelable: bool, can_bubble: EventBubbles, cancelable: EventCancelable,
length_computable: bool, loaded: u64, total: u64) -> Root<ProgressEvent> { length_computable: bool, loaded: u64, total: u64) -> Root<ProgressEvent> {
let ev = reflect_dom_object(box ProgressEvent::new_inherited(length_computable, loaded, total), let ev = reflect_dom_object(box ProgressEvent::new_inherited(length_computable, loaded, total),
global, global,
ProgressEventBinding::Wrap); ProgressEventBinding::Wrap);
{ {
let event = EventCast::from_ref(ev.r()); let event = EventCast::from_ref(ev.r());
event.InitEvent(type_, can_bubble, cancelable); event.InitEvent(type_, can_bubble == EventBubbles::Bubbles, cancelable == EventCancelable::Cancelable);
} }
ev ev
} }
@ -52,7 +52,10 @@ impl ProgressEvent {
type_: DOMString, type_: DOMString,
init: &ProgressEventBinding::ProgressEventInit) init: &ProgressEventBinding::ProgressEventInit)
-> Fallible<Root<ProgressEvent>> { -> Fallible<Root<ProgressEvent>> {
let ev = ProgressEvent::new(global, type_, init.parent.bubbles, init.parent.cancelable, let bubbles = if init.parent.bubbles {EventBubbles::Bubbles} else {EventBubbles::DoesNotBubble};
let cancelable = if init.parent.cancelable {EventCancelable::Cancelable}
else {EventCancelable::NotCancelable};
let ev = ProgressEvent::new(global, type_, bubbles, cancelable,
init.lengthComputable, init.loaded, init.total); init.lengthComputable, init.loaded, init.total);
Ok(ev) Ok(ev)
} }

View file

@ -942,7 +942,7 @@ impl<'a> PrivateXMLHttpRequestHelpers for &'a XMLHttpRequest {
let global = self.global.root(); let global = self.global.root();
let upload_target = self.upload.root(); let upload_target = self.upload.root();
let progressevent = ProgressEvent::new(global.r(), let progressevent = ProgressEvent::new(global.r(),
type_, false, false, type_, EventBubbles::DoesNotBubble, EventCancelable::NotCancelable,
total.is_some(), loaded, total.is_some(), loaded,
total.unwrap_or(0)); total.unwrap_or(0));
let target = if upload { let target = if upload {