aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/worker.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/worker.rs')
-rw-r--r--components/script/dom/worker.rs57
1 files changed, 36 insertions, 21 deletions
diff --git a/components/script/dom/worker.rs b/components/script/dom/worker.rs
index e5a1bfed223..8b6a96d8489 100644
--- a/components/script/dom/worker.rs
+++ b/components/script/dom/worker.rs
@@ -47,8 +47,7 @@ pub struct Worker {
}
impl Worker {
- fn new_inherited(sender: Sender<DedicatedWorkerScriptMsg>,
- closing: Arc<AtomicBool>) -> Worker {
+ fn new_inherited(sender: Sender<DedicatedWorkerScriptMsg>, closing: Arc<AtomicBool>) -> Worker {
Worker {
eventtarget: EventTarget::new_inherited(),
sender: sender,
@@ -57,12 +56,16 @@ impl Worker {
}
}
- pub fn new(global: &GlobalScope,
- sender: Sender<DedicatedWorkerScriptMsg>,
- closing: Arc<AtomicBool>) -> DomRoot<Worker> {
- reflect_dom_object(Box::new(Worker::new_inherited(sender, closing)),
- global,
- WorkerBinding::Wrap)
+ pub fn new(
+ global: &GlobalScope,
+ sender: Sender<DedicatedWorkerScriptMsg>,
+ closing: Arc<AtomicBool>,
+ ) -> DomRoot<Worker> {
+ reflect_dom_object(
+ Box::new(Worker::new_inherited(sender, closing)),
+ global,
+ WorkerBinding::Wrap,
+ )
}
// https://html.spec.whatwg.org/multipage/#dom-worker
@@ -90,21 +93,31 @@ impl Worker {
let worker_id = global.get_next_worker_id();
if let Some(ref chan) = global.devtools_chan() {
let pipeline_id = global.pipeline_id();
- let title = format!("Worker for {}", worker_url);
- let page_info = DevtoolsPageInfo {
- title: title,
- url: worker_url.clone(),
- };
- let _ = chan.send(ScriptToDevtoolsControlMsg::NewGlobal((pipeline_id, Some(worker_id)),
- devtools_sender.clone(),
- page_info));
+ let title = format!("Worker for {}", worker_url);
+ let page_info = DevtoolsPageInfo {
+ title: title,
+ url: worker_url.clone(),
+ };
+ let _ = chan.send(ScriptToDevtoolsControlMsg::NewGlobal(
+ (pipeline_id, Some(worker_id)),
+ devtools_sender.clone(),
+ page_info,
+ ));
}
let init = prepare_workerscope_init(global, Some(devtools_sender));
DedicatedWorkerGlobalScope::run_worker_scope(
- init, worker_url, devtools_receiver, worker_ref,
- global.script_chan(), sender, receiver, worker_load_origin, closing);
+ init,
+ worker_url,
+ devtools_receiver,
+ worker_ref,
+ global.script_chan(),
+ sender,
+ receiver,
+ worker_load_origin,
+ closing,
+ );
Ok(worker)
}
@@ -117,8 +130,7 @@ impl Worker {
self.terminated.get()
}
- pub fn handle_message(address: TrustedWorkerAddress,
- data: StructuredCloneData) {
+ pub fn handle_message(address: TrustedWorkerAddress, data: StructuredCloneData) {
let worker = address.root();
if worker.is_terminated() {
@@ -148,7 +160,10 @@ impl WorkerMethods for Worker {
// NOTE: step 9 of https://html.spec.whatwg.org/multipage/#dom-messageport-postmessage
// indicates that a nonexistent communication channel should result in a silent error.
- let _ = self.sender.send(DedicatedWorkerScriptMsg::CommonWorker(address, WorkerScriptMsg::DOMMessage(data)));
+ let _ = self.sender.send(DedicatedWorkerScriptMsg::CommonWorker(
+ address,
+ WorkerScriptMsg::DOMMessage(data),
+ ));
Ok(())
}