diff options
author | Rahul Sharma <rsconceptx@gmail.com> | 2016-05-01 01:11:15 +0530 |
---|---|---|
committer | Rahul Sharma <rsconceptx@gmail.com> | 2016-05-20 12:11:56 +0530 |
commit | 3766cd167365187bfabbb00f5dc41ba923fe23d4 (patch) | |
tree | eab0537f67250ec1d07814263c8a83e85bdc6411 /components/script/document_loader.rs | |
parent | bcea0ada27de694cd0c465d04fd35eba70503d62 (diff) | |
download | servo-3766cd167365187bfabbb00f5dc41ba923fe23d4.tar.gz servo-3766cd167365187bfabbb00f5dc41ba923fe23d4.zip |
adding interface for custom responses
Diffstat (limited to 'components/script/document_loader.rs')
-rw-r--r-- | components/script/document_loader.rs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/components/script/document_loader.rs b/components/script/document_loader.rs index 7282e23c322..4d5df6c74e5 100644 --- a/components/script/document_loader.rs +++ b/components/script/document_loader.rs @@ -8,8 +8,8 @@ use dom::bindings::js::JS; use dom::document::Document; use msg::constellation_msg::PipelineId; -use net_traits::AsyncResponseTarget; use net_traits::{PendingAsyncLoad, CoreResourceThread, LoadContext}; +use net_traits::{RequestSource, AsyncResponseTarget}; use std::sync::Arc; use std::thread; use url::Url; @@ -130,20 +130,27 @@ impl DocumentLoader { /// Create a new pending network request, which can be initiated at some point in /// the future. - pub fn prepare_async_load(&mut self, load: LoadType, referrer: &Document) -> PendingAsyncLoad { + pub fn prepare_async_load(&mut self, + load: LoadType, + referrer: &Document) -> PendingAsyncLoad { let context = load.to_load_context(); let url = load.url().clone(); self.add_blocking_load(load); + let client_chan = referrer.window().custom_message_chan(); PendingAsyncLoad::new(context, (*self.resource_thread).clone(), url, self.pipeline, referrer.get_referrer_policy(), - Some(referrer.url().clone())) + Some(referrer.url().clone()), + RequestSource::Window(client_chan)) } /// Create and initiate a new network request. - pub fn load_async(&mut self, load: LoadType, listener: AsyncResponseTarget, referrer: &Document) { + pub fn load_async(&mut self, + load: LoadType, + listener: AsyncResponseTarget, + referrer: &Document) { let pending = self.prepare_async_load(load, referrer); pending.load_async(listener) } |