aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/components/script/dom/attr.rs8
-rw-r--r--src/components/script/dom/bindings/codegen/Bindings.conf5
-rw-r--r--src/components/script/dom/console.rs4
-rw-r--r--src/components/script/dom/domexception.rs4
-rw-r--r--src/components/script/dom/element.rs2
-rw-r--r--src/components/script/dom/location.rs4
-rw-r--r--src/components/script/dom/navigator.rs4
-rw-r--r--src/components/script/dom/nodelist.rs6
-rw-r--r--src/components/script/dom/window.rs12
-rw-r--r--src/components/script/dom/windowproxy.rs2
-rw-r--r--src/components/script/script_task.rs2
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);