diff options
Diffstat (limited to 'components/script/dom/bindings/global.rs')
-rw-r--r-- | components/script/dom/bindings/global.rs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/components/script/dom/bindings/global.rs b/components/script/dom/bindings/global.rs index 61b948dbf35..ff36817b660 100644 --- a/components/script/dom/bindings/global.rs +++ b/components/script/dom/bindings/global.rs @@ -18,8 +18,8 @@ use ipc_channel::ipc::IpcSender; use js::jsapi::{CurrentGlobalOrNull, GetGlobalForObjectCrossCompartment}; use js::jsapi::{JSContext, JSObject, JS_GetClass, MutableHandleValue}; use js::{JSCLASS_IS_DOMJSCLASS, JSCLASS_IS_GLOBAL}; -use msg::constellation_msg::{PanicMsg, PipelineId}; -use net_traits::CoreResourceThread; +use msg::constellation_msg::{PipelineId, PanicMsg}; +use net_traits::{CoreResourceThread, RequestSource}; use profile_traits::{mem, time}; use script_runtime::{CommonScriptMsg, ScriptChan, ScriptPort}; use script_thread::{MainThreadScriptChan, ScriptThread}; @@ -65,6 +65,14 @@ impl<'a> GlobalRef<'a> { } } + /// gets the custom message channel associated with global object + pub fn request_source(&self) -> RequestSource { + match *self { + GlobalRef::Window(ref window) => RequestSource::Window(window.custom_message_chan()), + GlobalRef::Worker(ref worker) => RequestSource::Worker(worker.custom_message_chan()), + } + } + /// Get the `PipelineId` for this global scope. pub fn pipeline(&self) -> PipelineId { match *self { |