Remove Traceable from htmliframelement.rs

This commit is contained in:
Manish Goregaokar 2014-09-29 04:36:30 +05:30
parent c7bf94680f
commit dcda2cb94b
2 changed files with 10 additions and 11 deletions

View file

@ -113,7 +113,7 @@ pub trait TLayoutNode {
fail!("not an iframe element!") fail!("not an iframe element!")
} }
let iframe_element: JS<HTMLIFrameElement> = self.get_jsmanaged().transmute_copy(); let iframe_element: JS<HTMLIFrameElement> = self.get_jsmanaged().transmute_copy();
let size = (*iframe_element.unsafe_get()).size.deref().get().unwrap(); let size = (*iframe_element.unsafe_get()).size.get().unwrap();
(size.pipeline_id, size.subpage_id) (size.pipeline_id, size.subpage_id)
} }
} }

View file

@ -8,7 +8,6 @@ use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding::HTMLIFrameElemen
use dom::bindings::codegen::InheritTypes::{NodeCast, ElementCast}; use dom::bindings::codegen::InheritTypes::{NodeCast, ElementCast};
use dom::bindings::codegen::InheritTypes::{HTMLElementCast, HTMLIFrameElementDerived}; use dom::bindings::codegen::InheritTypes::{HTMLElementCast, HTMLIFrameElementDerived};
use dom::bindings::js::{JSRef, Temporary, OptionalRootable}; use dom::bindings::js::{JSRef, Temporary, OptionalRootable};
use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector}; use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::Document; use dom::document::Document;
use dom::element::{HTMLIFrameElementTypeId, Element}; use dom::element::{HTMLIFrameElementTypeId, Element};
@ -44,8 +43,8 @@ enum SandboxAllowance {
#[must_root] #[must_root]
pub struct HTMLIFrameElement { pub struct HTMLIFrameElement {
pub htmlelement: HTMLElement, pub htmlelement: HTMLElement,
pub size: Traceable<Cell<Option<IFrameSize>>>, pub size: Cell<Option<IFrameSize>>,
pub sandbox: Traceable<Cell<Option<u8>>>, pub sandbox: Cell<Option<u8>>,
} }
impl HTMLIFrameElementDerived for EventTarget { impl HTMLIFrameElementDerived for EventTarget {
@ -69,7 +68,7 @@ pub trait HTMLIFrameElementHelpers {
impl<'a> HTMLIFrameElementHelpers for JSRef<'a, HTMLIFrameElement> { impl<'a> HTMLIFrameElementHelpers for JSRef<'a, HTMLIFrameElement> {
fn is_sandboxed(self) -> bool { fn is_sandboxed(self) -> bool {
self.sandbox.deref().get().is_some() self.sandbox.get().is_some()
} }
fn get_url(self) -> Option<Url> { fn get_url(self) -> Option<Url> {
@ -103,7 +102,7 @@ impl<'a> HTMLIFrameElementHelpers for JSRef<'a, HTMLIFrameElement> {
let page = window.deref().page(); let page = window.deref().page();
let subpage_id = page.get_next_subpage_id(); let subpage_id = page.get_next_subpage_id();
self.deref().size.deref().set(Some(IFrameSize { self.deref().size.set(Some(IFrameSize {
pipeline_id: page.id, pipeline_id: page.id,
subpage_id: subpage_id, subpage_id: subpage_id,
})); }));
@ -117,8 +116,8 @@ impl HTMLIFrameElement {
fn new_inherited(localName: DOMString, document: JSRef<Document>) -> HTMLIFrameElement { fn new_inherited(localName: DOMString, document: JSRef<Document>) -> HTMLIFrameElement {
HTMLIFrameElement { HTMLIFrameElement {
htmlelement: HTMLElement::new_inherited(HTMLIFrameElementTypeId, localName, document), htmlelement: HTMLElement::new_inherited(HTMLIFrameElementTypeId, localName, document),
size: Traceable::new(Cell::new(None)), size: Cell::new(None),
sandbox: Traceable::new(Cell::new(None)), sandbox: Cell::new(None),
} }
} }
@ -151,7 +150,7 @@ impl<'a> HTMLIFrameElementMethods for JSRef<'a, HTMLIFrameElement> {
} }
fn GetContentWindow(self) -> Option<Temporary<Window>> { fn GetContentWindow(self) -> Option<Temporary<Window>> {
self.size.deref().get().and_then(|size| { self.size.get().and_then(|size| {
let window = window_from_node(self).root(); let window = window_from_node(self).root();
let children = window.deref().page.children.deref().borrow(); let children = window.deref().page.children.deref().borrow();
let child = children.iter().find(|child| { let child = children.iter().find(|child| {
@ -191,7 +190,7 @@ impl<'a> VirtualMethods for JSRef<'a, HTMLIFrameElement> {
_ => AllowNothing _ => AllowNothing
} as u8; } as u8;
} }
self.deref().sandbox.deref().set(Some(modes)); self.deref().sandbox.set(Some(modes));
} }
if "src" == name.as_slice() { if "src" == name.as_slice() {
@ -209,7 +208,7 @@ impl<'a> VirtualMethods for JSRef<'a, HTMLIFrameElement> {
} }
if "sandbox" == name.as_slice() { if "sandbox" == name.as_slice() {
self.deref().sandbox.deref().set(None); self.deref().sandbox.set(None);
} }
} }