diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/components/script/dom/attr.rs | 8 | ||||
-rw-r--r-- | src/components/script/dom/bindings/codegen/Bindings.conf | 5 | ||||
-rw-r--r-- | src/components/script/dom/console.rs | 4 | ||||
-rw-r--r-- | src/components/script/dom/domexception.rs | 4 | ||||
-rw-r--r-- | src/components/script/dom/element.rs | 2 | ||||
-rw-r--r-- | src/components/script/dom/location.rs | 4 | ||||
-rw-r--r-- | src/components/script/dom/navigator.rs | 4 | ||||
-rw-r--r-- | src/components/script/dom/nodelist.rs | 6 | ||||
-rw-r--r-- | src/components/script/dom/window.rs | 12 | ||||
-rw-r--r-- | src/components/script/dom/windowproxy.rs | 2 | ||||
-rw-r--r-- | src/components/script/script_task.rs | 2 |
11 files changed, 29 insertions, 24 deletions
diff --git a/src/components/script/dom/attr.rs b/src/components/script/dom/attr.rs index 906e1b7f02c..f632d047670 100644 --- a/src/components/script/dom/attr.rs +++ b/src/components/script/dom/attr.rs @@ -43,22 +43,22 @@ impl Attr { } } - pub fn new(window: &Window, local_name: DOMString, value: DOMString) -> JS<Attr> { + pub fn new(window: &JS<Window>, local_name: DOMString, value: DOMString) -> JS<Attr> { let name = local_name.clone(); Attr::new_helper(window, local_name, value, name, Null, None) } - pub fn new_ns(window: &Window, local_name: DOMString, value: DOMString, + pub fn new_ns(window: &JS<Window>, local_name: DOMString, value: DOMString, name: DOMString, namespace: Namespace, prefix: Option<DOMString>) -> JS<Attr> { Attr::new_helper(window, local_name, value, name, namespace, prefix) } - fn new_helper(window: &Window, local_name: DOMString, value: DOMString, + fn new_helper(window: &JS<Window>, local_name: DOMString, value: DOMString, name: DOMString, namespace: Namespace, prefix: Option<DOMString>) -> JS<Attr> { let attr = Attr::new_inherited(local_name, value, name, namespace, prefix); - reflect_dom_object(~attr, window, AttrBinding::Wrap) + reflect_dom_object(~attr, window.get(), AttrBinding::Wrap) } pub fn set_value(&mut self, value: DOMString) { diff --git a/src/components/script/dom/bindings/codegen/Bindings.conf b/src/components/script/dom/bindings/codegen/Bindings.conf index aabb3511bee..f6028bdd536 100644 --- a/src/components/script/dom/bindings/codegen/Bindings.conf +++ b/src/components/script/dom/bindings/codegen/Bindings.conf @@ -85,6 +85,11 @@ DOMInterfaces = { 'ValidityState': {}, 'Window': { 'createGlobal': True, + 'needsAbstract': [ + 'console', + 'location', + 'navigator', + ], }, 'WindowProxy': {}, diff --git a/src/components/script/dom/console.rs b/src/components/script/dom/console.rs index 3c5a219b39c..e41a747e054 100644 --- a/src/components/script/dom/console.rs +++ b/src/components/script/dom/console.rs @@ -20,8 +20,8 @@ impl Console { } } - pub fn new(window: &Window) -> JS<Console> { - reflect_dom_object(~Console::new_inherited(), window, ConsoleBinding::Wrap) + pub fn new(window: &JS<Window>) -> JS<Console> { + reflect_dom_object(~Console::new_inherited(), window.get(), ConsoleBinding::Wrap) } pub fn Log(&self, message: DOMString) { diff --git a/src/components/script/dom/domexception.rs b/src/components/script/dom/domexception.rs index f6eb1751adc..f5da5021e53 100644 --- a/src/components/script/dom/domexception.rs +++ b/src/components/script/dom/domexception.rs @@ -48,8 +48,8 @@ impl DOMException { } } - pub fn new(window: &Window, code: DOMErrorName) -> JS<DOMException> { - reflect_dom_object(~DOMException::new_inherited(code), window, DOMExceptionBinding::Wrap) + pub fn new(window: &JS<Window>, code: DOMErrorName) -> JS<DOMException> { + reflect_dom_object(~DOMException::new_inherited(code), window.get(), DOMExceptionBinding::Wrap) } } diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index 2805ea8c25e..4ff7872aa80 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -220,7 +220,7 @@ impl Element { None => { let doc = self.node.owner_doc(); let doc = doc.get(); - let new_attr = Attr::new_ns(doc.window.get(), local_name.clone(), value.clone(), + let new_attr = Attr::new_ns(&doc.window, local_name.clone(), value.clone(), name.clone(), namespace.clone(), prefix); self.attrs.push(new_attr); diff --git a/src/components/script/dom/location.rs b/src/components/script/dom/location.rs index 7d0c5294711..641e0a1eb74 100644 --- a/src/components/script/dom/location.rs +++ b/src/components/script/dom/location.rs @@ -41,9 +41,9 @@ impl Location { } } - pub fn new(window: &Window, page: Rc<Page>) -> JS<Location> { + pub fn new(window: &JS<Window>, page: Rc<Page>) -> JS<Location> { reflect_dom_object(~Location::new_inherited(page), - window, + window.get(), LocationBinding::Wrap) } diff --git a/src/components/script/dom/navigator.rs b/src/components/script/dom/navigator.rs index e3c648ec4ed..245312d1840 100644 --- a/src/components/script/dom/navigator.rs +++ b/src/components/script/dom/navigator.rs @@ -21,9 +21,9 @@ impl Navigator { } } - pub fn new(window: &Window) -> JS<Navigator> { + pub fn new(window: &JS<Window>) -> JS<Navigator> { reflect_dom_object(~Navigator::new_inherited(), - window, + window.get(), NavigatorBinding::Wrap) } diff --git a/src/components/script/dom/nodelist.rs b/src/components/script/dom/nodelist.rs index 84de1a56d19..9274e4faed5 100644 --- a/src/components/script/dom/nodelist.rs +++ b/src/components/script/dom/nodelist.rs @@ -31,18 +31,18 @@ impl NodeList { } } - pub fn new(window: JS<Window>, + pub fn new(window: &JS<Window>, list_type: NodeListType) -> JS<NodeList> { reflect_dom_object(~NodeList::new_inherited(window.clone(), list_type), window.get(), NodeListBinding::Wrap) } pub fn new_simple_list(window: &JS<Window>, elements: ~[JS<Node>]) -> JS<NodeList> { - NodeList::new(window.clone(), Simple(elements)) + NodeList::new(window, Simple(elements)) } pub fn new_child_list(window: &JS<Window>, node: &JS<Node>) -> JS<NodeList> { - NodeList::new(window.clone(), Children(node.clone())) + NodeList::new(window, Children(node.clone())) } pub fn Length(&self) -> u32 { diff --git a/src/components/script/dom/window.rs b/src/components/script/dom/window.rs index 884e691fab7..a3c6c7f866e 100644 --- a/src/components/script/dom/window.rs +++ b/src/components/script/dom/window.rs @@ -175,23 +175,23 @@ impl Window { None } - pub fn Location(&mut self) -> JS<Location> { + pub fn Location(&mut self, abstract_self: &JS<Window>) -> JS<Location> { if self.location.is_none() { - self.location = Some(Location::new(self, self.extra.page.clone())); + self.location = Some(Location::new(abstract_self, self.extra.page.clone())); } self.location.get_ref().clone() } - pub fn Console(&mut self) -> JS<Console> { + pub fn Console(&mut self, abstract_self: &JS<Window>) -> JS<Console> { if self.console.is_none() { - self.console = Some(Console::new(self)); + self.console = Some(Console::new(abstract_self)); } self.console.get_ref().clone() } - pub fn Navigator(&mut self) -> JS<Navigator> { + pub fn Navigator(&mut self, abstract_self: &JS<Window>) -> JS<Navigator> { if self.navigator.is_none() { - self.navigator = Some(Navigator::new(self)); + self.navigator = Some(Navigator::new(abstract_self)); } self.navigator.get_ref().clone() } diff --git a/src/components/script/dom/windowproxy.rs b/src/components/script/dom/windowproxy.rs index 35304d25d3c..94164fb82ac 100644 --- a/src/components/script/dom/windowproxy.rs +++ b/src/components/script/dom/windowproxy.rs @@ -13,7 +13,7 @@ pub struct WindowProxy { } impl WindowProxy { - pub fn new(owner: JS<Window>) -> JS<WindowProxy> { + pub fn new(owner: &JS<Window>) -> JS<WindowProxy> { let proxy = ~WindowProxy { reflector_: Reflector::new() }; diff --git a/src/components/script/script_task.rs b/src/components/script/script_task.rs index d6f17e4801c..5bc064c77cf 100644 --- a/src/components/script/script_task.rs +++ b/src/components/script/script_task.rs @@ -984,7 +984,7 @@ impl ScriptTask { Some(ref frame) => { // http://dev.w3.org/csswg/cssom-view/#resizing-viewports // https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html#event-type-resize - let window_proxy: JS<WindowProxy> = WindowProxy::new(frame.window.clone()); + let window_proxy: JS<WindowProxy> = WindowProxy::new(&frame.window); let mut uievent = UIEvent::new(&frame.window); uievent.get_mut().InitUIEvent(~"resize", false, false, Some(window_proxy), 0i32); let event: &mut JS<Event> = &mut EventCast::from(&uievent); |