diff options
author | Paul Rouget <me@paulrouget.com> | 2016-01-22 11:07:51 +0100 |
---|---|---|
committer | Paul Rouget <me@paulrouget.com> | 2016-02-09 08:05:17 +0100 |
commit | 63519c35748477784c07eae56b00b9967546fc7a (patch) | |
tree | 8eaf6fa98f3fbfef527aaed5b48904462eab2d9c /components/script/dom/htmliframeelement.rs | |
parent | fb3fe3d784c24cdfd8040af0282e5c2182ee2051 (diff) | |
download | servo-63519c35748477784c07eae56b00b9967546fc7a.tar.gz servo-63519c35748477784c07eae56b00b9967546fc7a.zip |
mozbrowsersercuritychange event
Diffstat (limited to 'components/script/dom/htmliframeelement.rs')
-rw-r--r-- | components/script/dom/htmliframeelement.rs | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs index fd8788480a6..930c15b0e0f 100644 --- a/components/script/dom/htmliframeelement.rs +++ b/components/script/dom/htmliframeelement.rs @@ -4,6 +4,7 @@ use dom::attr::{Attr, AttrValue}; use dom::bindings::codegen::Bindings::BrowserElementBinding::BrowserElementIconChangeEventDetail; +use dom::bindings::codegen::Bindings::BrowserElementBinding::BrowserElementSecurityChangeDetail; use dom::bindings::codegen::Bindings::BrowserElementBinding::BrowserShowModalPromptEventDetail; use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding; use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding::HTMLIFrameElementMethods; @@ -29,6 +30,7 @@ use js::jsval::{UndefinedValue, NullValue}; use layout_interface::ReflowQueryType; use msg::constellation_msg::{ConstellationChan}; use msg::constellation_msg::{NavigationDirection, PipelineId, SubpageId}; +use net_traits::response::HttpsState; use page::IterablePage; use script_traits::IFrameSandboxState::{IFrameSandboxed, IFrameUnsandboxed}; use script_traits::{IFrameLoadInfo, MozBrowserEvent, ScriptMsg as ConstellationMsg}; @@ -275,10 +277,26 @@ impl MozBrowserEventDetailBuilder for HTMLIFrameElement { match event { MozBrowserEvent::AsyncScroll | MozBrowserEvent::Close | MozBrowserEvent::ContextMenu | MozBrowserEvent::Error | MozBrowserEvent::LoadEnd | MozBrowserEvent::LoadStart | - MozBrowserEvent::OpenWindow | MozBrowserEvent::SecurityChange | MozBrowserEvent::OpenSearch | + MozBrowserEvent::OpenWindow | MozBrowserEvent::OpenSearch | MozBrowserEvent::UsernameAndPasswordRequired => { rval.set(NullValue()); } + MozBrowserEvent::SecurityChange(https_state) => { + BrowserElementSecurityChangeDetail { + // https://developer.mozilla.org/en-US/docs/Web/Events/mozbrowsersecuritychange + state: Some(DOMString::from(match https_state { + HttpsState::Modern => "secure", + HttpsState::Deprecated => "broken", + HttpsState::None => "insecure", + }.to_owned())), + // FIXME - Not supported yet: + trackingContent: None, + mixedContent: None, + trackingState: None, + extendedValidation: None, + mixedState: None, + }.to_jsval(cx, rval); + } MozBrowserEvent::LocationChange(ref string) | MozBrowserEvent::TitleChange(ref string) => { string.to_jsval(cx, rval); } |