aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmliframeelement.rs
diff options
context:
space:
mode:
authorpaavininanda <paavininanda@gmail.com>2018-02-13 14:51:20 +0530
committerpaavininanda <paavininanda@gmail.com>2018-02-26 07:38:41 +0530
commitb9f7aa468610b7091eb7e3cdc34a085f7931302d (patch)
tree0555680f09fe5fbb2a6522e1207c013e5196c91a /components/script/dom/htmliframeelement.rs
parentb1d3d6f6324394f0e9f17b027fef24420d829b5c (diff)
downloadservo-b9f7aa468610b7091eb7e3cdc34a085f7931302d.tar.gz
servo-b9f7aa468610b7091eb7e3cdc34a085f7931302d.zip
Adding Name and SetName functions for window
Diffstat (limited to 'components/script/dom/htmliframeelement.rs')
-rw-r--r--components/script/dom/htmliframeelement.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs
index b03cfdce07e..41bb2a23e6a 100644
--- a/components/script/dom/htmliframeelement.rs
+++ b/components/script/dom/htmliframeelement.rs
@@ -457,6 +457,22 @@ impl HTMLIFrameElementMethods for HTMLIFrameElement {
make_getter!(FrameBorder, "frameborder");
// https://html.spec.whatwg.org/multipage/#other-elements,-attributes-and-apis:attr-iframe-frameborder
make_setter!(SetFrameBorder, "frameborder");
+
+ // https://html.spec.whatwg.org/multipage/#dom-iframe-name
+ fn SetName(&self, name: DOMString) {
+ if let Some(window) = self.GetContentWindow() {
+ window.set_name(name)
+ }
+ }
+
+ // https://html.spec.whatwg.org/multipage/#dom-iframe-name
+ fn Name(&self) -> DOMString {
+ if let Some(window) = self.GetContentWindow() {
+ window.get_name()
+ } else {
+ DOMString::new()
+ }
+ }
}
impl VirtualMethods for HTMLIFrameElement {
@@ -498,6 +514,11 @@ impl VirtualMethods for HTMLIFrameElement {
self.process_the_iframe_attributes(ProcessingMode::NotFirstTime);
}
},
+ &local_name!("name") => {
+ let new_value = mutation.new_value(attr);
+ let value = new_value.as_ref().map_or("", |v| &v);
+ self.SetName(DOMString::from(value.to_owned()));
+ },
_ => {},
}
}