Pass a Document to Range::new.

This commit is contained in:
Ms2ger 2014-08-09 11:41:58 +02:00
parent 22d85424e8
commit 6501dad9e9

View file

@ -4,10 +4,12 @@
use dom::bindings::codegen::Bindings::RangeBinding;
use dom::bindings::codegen::Bindings::RangeBinding::RangeMethods;
use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
use dom::bindings::global::{GlobalRef, Window};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::document::Document;
#[deriving(Encodable)]
pub struct Range {
@ -21,12 +23,16 @@ impl Range {
}
}
pub fn new(global: &GlobalRef) -> Temporary<Range> {
reflect_dom_object(box Range::new_inherited(), global, RangeBinding::Wrap)
pub fn new(document: &JSRef<Document>) -> Temporary<Range> {
let window = document.window.root();
reflect_dom_object(box Range::new_inherited(),
&Window(*window),
RangeBinding::Wrap)
}
pub fn Constructor(global: &GlobalRef) -> Fallible<Temporary<Range>> {
Ok(Range::new(global))
let document = global.as_window().Document().root();
Ok(Range::new(&*document))
}
}