[Pkg-javascript-commits] [pdf.js] 96/207: Refactor fake worker loading (issue 3862)
David Prévot
taffit at moszumanska.debian.org
Mon Jul 28 15:36:35 UTC 2014
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository pdf.js.
commit 3c78c7b8bce680dae2fed5063e73fa73252b3e8d
Author: Jonas Jenwald <jonas.jenwald at gmail.com>
Date: Sun Jun 15 15:52:05 2014 +0200
Refactor fake worker loading (issue 3862)
---
src/display/api.js | 49 ++++++++++++++++++++++---------------------------
1 file changed, 22 insertions(+), 27 deletions(-)
diff --git a/src/display/api.js b/src/display/api.js
index b5e9039..8ca1b8e 100644
--- a/src/display/api.js
+++ b/src/display/api.js
@@ -640,6 +640,7 @@ var WorkerTransport = (function WorkerTransportClosure() {
pdfDataRangeTransport, progressCallback) {
this.pdfDataRangeTransport = pdfDataRangeTransport;
+ this.workerInitializedCapability = workerInitializedCapability;
this.workerReadyCapability = workerReadyCapability;
this.progressCallback = progressCallback;
this.commonObjs = new PDFObjects();
@@ -678,11 +679,7 @@ var WorkerTransport = (function WorkerTransportClosure() {
this.setupMessageHandler(messageHandler);
workerInitializedCapability.resolve();
} else {
- globalScope.PDFJS.disableWorker = true;
- this.loadFakeWorkerFiles().then(function() {
- this.setupFakeWorker();
- workerInitializedCapability.resolve();
- }.bind(this));
+ this.setupFakeWorker();
}
}.bind(this));
@@ -704,11 +701,7 @@ var WorkerTransport = (function WorkerTransportClosure() {
//#endif
// Either workers are disabled, not supported or have thrown an exception.
// Thus, we fallback to a faked worker.
- globalScope.PDFJS.disableWorker = true;
- this.loadFakeWorkerFiles().then(function() {
- this.setupFakeWorker();
- workerInitializedCapability.resolve();
- }.bind(this));
+ this.setupFakeWorker();
}
WorkerTransport.prototype = {
destroy: function WorkerTransport_destroy() {
@@ -723,7 +716,9 @@ var WorkerTransport = (function WorkerTransportClosure() {
});
},
- loadFakeWorkerFiles: function WorkerTransport_loadFakeWorkerFiles() {
+ setupFakeWorker: function WorkerTransport_setupFakeWorker() {
+ globalScope.PDFJS.disableWorker = true;
+
if (!PDFJS.fakeWorkerFilesLoadedCapability) {
PDFJS.fakeWorkerFilesLoadedCapability = createPromiseCapability();
// In the developer build load worker_loader which in turn loads all the
@@ -741,25 +736,25 @@ var WorkerTransport = (function WorkerTransportClosure() {
// });
//#endif
}
- return PDFJS.fakeWorkerFilesLoadedCapability.promise;
- },
+ PDFJS.fakeWorkerFilesLoadedCapability.promise.then(function () {
+ warn('Setting up fake worker.');
+ // If we don't use a worker, just post/sendMessage to the main thread.
+ var fakeWorker = {
+ postMessage: function WorkerTransport_postMessage(obj) {
+ fakeWorker.onmessage({data: obj});
+ },
+ terminate: function WorkerTransport_terminate() {}
+ };
- setupFakeWorker: function WorkerTransport_setupFakeWorker() {
- warn('Setting up fake worker.');
- // If we don't use a worker, just post/sendMessage to the main thread.
- var fakeWorker = {
- postMessage: function WorkerTransport_postMessage(obj) {
- fakeWorker.onmessage({data: obj});
- },
- terminate: function WorkerTransport_terminate() {}
- };
+ var messageHandler = new MessageHandler('main', fakeWorker);
+ this.setupMessageHandler(messageHandler);
- var messageHandler = new MessageHandler('main', fakeWorker);
- this.setupMessageHandler(messageHandler);
+ // If the main thread is our worker, setup the handling for the messages
+ // the main thread sends to it self.
+ PDFJS.WorkerMessageHandler.setup(messageHandler);
- // If the main thread is our worker, setup the handling for the messages
- // the main thread sends to it self.
- PDFJS.WorkerMessageHandler.setup(messageHandler);
+ this.workerInitializedCapability.resolve();
+ }.bind(this));
},
setupMessageHandler:
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/pdf.js.git
More information about the Pkg-javascript-commits
mailing list