set referrer in window.load_url

- this conforms to follow-hyperlinks spec step 13
- this conforms to window-open spec step 14.3
- replace uses of `referrer_url` with `referrer`
- in Request class, change "no-referrer" to ""
- set websocket fetch referrer to "no-referrer"
This commit is contained in:
Russell Cousineau 2019-03-24 23:04:17 -07:00
parent f9c58ccd40
commit 2440e0f98a
21 changed files with 94 additions and 58 deletions

View file

@ -87,6 +87,7 @@ use js::rust::HandleValue;
use msg::constellation_msg::PipelineId;
use net_traits::image_cache::{ImageCache, ImageResponder, ImageResponse};
use net_traits::image_cache::{PendingImageId, PendingImageResponse};
use net_traits::request::Referrer;
use net_traits::storage_thread::StorageType;
use net_traits::{ReferrerPolicy, ResourceThreads};
use num_traits::ToPrimitive;
@ -1716,6 +1717,7 @@ impl Window {
url: ServoUrl,
replace: bool,
force_reload: bool,
referrer: Referrer,
referrer_policy: Option<ReferrerPolicy>,
) {
let doc = self.Document();
@ -1781,7 +1783,7 @@ impl Window {
self.main_thread_script_chan()
.send(MainThreadScriptMsg::Navigate(
pipeline_id,
LoadData::new(url, Some(pipeline_id), referrer_policy, Some(doc.url())),
LoadData::new(url, Some(pipeline_id), Some(referrer), referrer_policy),
replace,
))
.unwrap();