diff options
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/htmlelement.rs | 18 | ||||
-rw-r--r-- | components/script/dom/macros.rs | 1 | ||||
-rw-r--r-- | components/script/dom/webidls/EventHandler.webidl | 1 |
3 files changed, 20 insertions, 0 deletions
diff --git a/components/script/dom/htmlelement.rs b/components/script/dom/htmlelement.rs index 8c718c5ab29..f0348c27b76 100644 --- a/components/script/dom/htmlelement.rs +++ b/components/script/dom/htmlelement.rs @@ -162,6 +162,24 @@ impl HTMLElementMethods for HTMLElement { } } + // https://html.spec.whatwg.org/multipage/#handler-onresize + fn GetOnresize(&self) -> Option<Rc<EventHandlerNonNull>> { + if self.is_body_or_frameset() { + window_from_node(self).GetOnload() + } else { + self.upcast::<EventTarget>().get_event_handler_common("resize") + } + } + + // https://html.spec.whatwg.org/multipage/#handler-onresize + fn SetOnresize(&self, listener: Option<Rc<EventHandlerNonNull>>) { + if self.is_body_or_frameset() { + window_from_node(self).SetOnresize(listener); + } else { + self.upcast::<EventTarget>().set_event_handler_common("resize", listener) + } + } + // https://html.spec.whatwg.org/multipage/#dom-click fn Click(&self) { if let Some(i) = self.downcast::<HTMLInputElement>() { diff --git a/components/script/dom/macros.rs b/components/script/dom/macros.rs index 1bfa576a1d6..fb548266263 100644 --- a/components/script/dom/macros.rs +++ b/components/script/dom/macros.rs @@ -333,6 +333,7 @@ macro_rules! error_event_handler( macro_rules! global_event_handlers( () => ( event_handler!(load, GetOnload, SetOnload); + event_handler!(resize, GetOnresize, SetOnresize); global_event_handlers!(NoOnload); ); diff --git a/components/script/dom/webidls/EventHandler.webidl b/components/script/dom/webidls/EventHandler.webidl index 91753edf9c7..9c822ae9522 100644 --- a/components/script/dom/webidls/EventHandler.webidl +++ b/components/script/dom/webidls/EventHandler.webidl @@ -34,6 +34,7 @@ interface GlobalEventHandlers { attribute EventHandler onreset; attribute EventHandler onsubmit; attribute EventHandler ontoggle; + attribute EventHandler onresize; }; [NoInterfaceObject] |