diff --git a/src/core.js b/src/core.js index d195d4a15..1c4f56aab 100644 --- a/src/core.js +++ b/src/core.js @@ -4,7 +4,15 @@ var ERRORS = 0, WARNINGS = 1, TODOS = 5; var verbosity = WARNINGS; -// +var useWorker = false; + +// The global PDF object exposes the API +// In production, it will be declared outside a global wrapper +// In development, it will be declared here +if (typeof PDF === 'undefined') { + var PDF = {}; +} + // getPdf() // Convenience function to perform binary Ajax GET // Usage: getPdf('http://...', callback) @@ -13,7 +21,6 @@ var verbosity = WARNINGS; // [,progress:Function, error:Function] // }, // callback) -// function getPdf(arg, callback) { var params = arg; if (typeof arg === 'string') @@ -39,6 +46,7 @@ function getPdf(arg, callback) { }; xhr.send(null); } +PDF.getPdf = getPdf; var Page = (function pagePage() { function constructor(xref, pageNumber, pageDict, ref) { @@ -460,7 +468,7 @@ var PDFDoc = (function() { this.pageCache = []; if (useWorker) { - var worker = new Worker('../build/pdf.js'); + var worker = new Worker('../src/worker_loader.js'); } else { // If we don't use a worker, just post/sendMessage to the main thread. var worker = { @@ -597,3 +605,4 @@ var PDFDoc = (function() { return constructor; })(); +PDF.PDFDoc = PDFDoc; diff --git a/src/pdf.js b/src/pdf.js index 121564af4..94ea074da 100644 --- a/src/pdf.js +++ b/src/pdf.js @@ -3,30 +3,10 @@ var PDF = {}; -(function(globalScope) { +(function() { // Use strict in our context only - users might not want it 'use strict'; - // Set this to true if you want to use workers. - var useWorker = false; - var console; - // Files are inserted below - see Makefile /* INSERT_POINT */ - - // Worker-specific - if (typeof window !== 'undefined') { - console = window.console; - } else { - var consoleTimer = {}; - console = workerConsole; - - // Listen for messages from the main thread. - var handler = new MessageHandler('worker_processor', globalScope); - WorkerProcessorHandler.setup(handler); - } - - // Expose API in global object - PDF.PDFDoc = PDFDoc; - PDF.getPdf = getPdf; -})(this); +})(); diff --git a/src/worker.js b/src/worker.js index 69b1e652c..bedb6a6f5 100644 --- a/src/worker.js +++ b/src/worker.js @@ -138,6 +138,8 @@ var WorkerProcessorHandler = { } }; +var consoleTimer = {}; + var workerConsole = { log: function log() { var args = Array.prototype.slice.call(arguments); @@ -167,3 +169,12 @@ var workerConsole = { this.log('Timer:', name, Date.now() - time); } }; + +// Worker thread? +if (typeof window === 'undefined') { + console = workerConsole; + + // Listen for messages from the main thread. + var handler = new MessageHandler('worker_processor', this); + WorkerProcessorHandler.setup(handler); +} diff --git a/web/viewer.html b/web/viewer.html index e01aab17d..6d119152d 100644 --- a/web/viewer.html +++ b/web/viewer.html @@ -3,10 +3,28 @@ Simple pdf.js page viewer + + + + + + + + + + + + + + + + + + + -