diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2016-04-05 17:41:11 +0530 |
---|---|---|
committer | bors-servo <lbergstrom+bors@mozilla.com> | 2016-04-05 17:41:11 +0530 |
commit | d1e8b79583a6d9ff5a0860307d55b72b7177f77a (patch) | |
tree | 37381f215d3252183cf29c58bb537a2533c9ffb7 /components/script/dom/htmliframeelement.rs | |
parent | 17ffc6cf71278813885474b0135e268ac0eda081 (diff) | |
parent | af64a888e6e1f1b1aacf03dc44cec773f9e2c05d (diff) | |
download | servo-d1e8b79583a6d9ff5a0860307d55b72b7177f77a.tar.gz servo-d1e8b79583a6d9ff5a0860307d55b72b7177f77a.zip |
Auto merge of #10399 - jdm:pb, r=jdm
Private browsing - Initial steps
Rebase of #10160.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10399)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/htmliframeelement.rs')
-rw-r--r-- | components/script/dom/htmliframeelement.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs index 4e7e6108785..beb3134698f 100644 --- a/components/script/dom/htmliframeelement.rs +++ b/components/script/dom/htmliframeelement.rs @@ -124,6 +124,7 @@ impl HTMLIFrameElement { let window = window.r(); let (new_subpage_id, old_subpage_id) = self.generate_new_subpage_id(); let new_pipeline_id = self.pipeline_id.get().unwrap(); + let private_iframe = self.privatebrowsing(); self.containing_page_pipeline_id.set(Some(window.pipeline())); @@ -135,6 +136,7 @@ impl HTMLIFrameElement { old_subpage_id: old_subpage_id, new_pipeline_id: new_pipeline_id, sandbox: sandboxed, + is_private: private_iframe, }; chan.send(ConstellationMsg::ScriptLoadedURLInIFrame(load_info)).unwrap(); @@ -248,6 +250,17 @@ impl HTMLIFrameElement { ReflowQueryType::NoQuery, ReflowReason::IFrameLoadEvent); } + + /// Check whether the iframe has the mozprivatebrowsing attribute set + pub fn privatebrowsing(&self) -> bool { + if self.Mozbrowser() { + let element = self.upcast::<Element>(); + element.has_attribute(&Atom::from("mozprivatebrowsing")) + } else { + false + } + } + } pub trait HTMLIFrameElementLayoutMethods { |