diff options
author | Anthony Ramine <n.oxyde@gmail.com> | 2016-09-27 13:16:41 +0200 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2016-10-06 20:59:09 +0200 |
commit | fcb59d305742a18daa083352a9b6e9a45896c9f6 (patch) | |
tree | d1023c24bfb5827c49d4d4653a72541b66532b95 /components/script/dom/messageevent.rs | |
parent | 093b189b4800909b17295b88aed762601f4b8482 (diff) | |
download | servo-fcb59d305742a18daa083352a9b6e9a45896c9f6.tar.gz servo-fcb59d305742a18daa083352a9b6e9a45896c9f6.zip |
Make reflect_dom_object take a &GlobalScope
Diffstat (limited to 'components/script/dom/messageevent.rs')
-rw-r--r-- | components/script/dom/messageevent.rs | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/components/script/dom/messageevent.rs b/components/script/dom/messageevent.rs index b5b46fba5d8..62c8c4c5ed4 100644 --- a/components/script/dom/messageevent.rs +++ b/components/script/dom/messageevent.rs @@ -13,6 +13,7 @@ use dom::bindings::reflector::reflect_dom_object; use dom::bindings::str::DOMString; use dom::event::Event; use dom::eventtarget::EventTarget; +use dom::globalscope::GlobalScope; use js::jsapi::{HandleValue, Heap, JSContext}; use js::jsval::JSVal; use std::default::Default; @@ -27,14 +28,14 @@ pub struct MessageEvent { } impl MessageEvent { - pub fn new_uninitialized(global: GlobalRef) -> Root<MessageEvent> { + pub fn new_uninitialized(global: &GlobalScope) -> Root<MessageEvent> { MessageEvent::new_initialized(global, HandleValue::undefined(), DOMString::new(), DOMString::new()) } - pub fn new_initialized(global: GlobalRef, + pub fn new_initialized(global: &GlobalScope, data: HandleValue, origin: DOMString, lastEventId: DOMString) -> Root<MessageEvent> { @@ -48,7 +49,7 @@ impl MessageEvent { reflect_dom_object(ev, global, MessageEventBinding::Wrap) } - pub fn new(global: GlobalRef, type_: Atom, + pub fn new(global: &GlobalScope, type_: Atom, bubbles: bool, cancelable: bool, data: HandleValue, origin: DOMString, lastEventId: DOMString) -> Root<MessageEvent> { @@ -67,9 +68,13 @@ impl MessageEvent { // Dictionaries need to be rooted // https://github.com/servo/servo/issues/6381 rooted!(in(global.get_cx()) let data = init.data); - let ev = MessageEvent::new(global, Atom::from(type_), init.parent.bubbles, init.parent.cancelable, + let ev = MessageEvent::new(global.as_global_scope(), + Atom::from(type_), + init.parent.bubbles, + init.parent.cancelable, data.handle(), - init.origin.clone(), init.lastEventId.clone()); + init.origin.clone(), + init.lastEventId.clone()); Ok(ev) } } @@ -79,8 +84,13 @@ impl MessageEvent { scope: GlobalRef, message: HandleValue) { let messageevent = MessageEvent::new( - scope, atom!("message"), false, false, message, - DOMString::new(), DOMString::new()); + scope.as_global_scope(), + atom!("message"), + false, + false, + message, + DOMString::new(), + DOMString::new()); messageevent.upcast::<Event>().fire(target); } } |