Browse Source

PDF.js version 1.8.271 - See mozilla/pdf.js@7fd208479659b4ce9599bfcc7234d3928b08f567

master v1.8.271
pdfjsbot 8 years ago
parent
commit
6158fcdafd
  1. 2
      bower.json
  2. 47
      build/pdf.combined.js
  3. 47
      build/pdf.js
  4. 6
      build/pdf.min.js
  5. 20
      build/pdf.worker.js
  6. 4
      build/pdf.worker.min.js
  7. 14
      lib/display/api.js
  8. 5
      lib/display/canvas.js
  9. 2
      lib/display/font_loader.js
  10. 6
      lib/display/global.js
  11. 4
      lib/pdf.js
  12. 4
      lib/pdf.worker.js
  13. 8
      lib/shared/compatibility.js
  14. 8
      lib/shared/util.js
  15. 4
      lib/test/unit/ui_utils_spec.js
  16. 90
      lib/web/annotation_layer_builder.js
  17. 114
      lib/web/app.js
  18. 23
      lib/web/interfaces.js
  19. 233
      lib/web/pdf_presentation_mode.js
  20. 67
      lib/web/pdf_rendering_queue.js
  21. 2
      lib/web/pdfjs.js
  22. 4
      lib/web/ui_utils.js
  23. 124
      lib/web/view_history.js
  24. 2
      package.json
  25. 8
      web/compatibility.js
  26. 161
      web/pdf_viewer.js

2
bower.json

@ -1,6 +1,6 @@
{ {
"name": "pdfjs-dist", "name": "pdfjs-dist",
"version": "1.8.254", "version": "1.8.271",
"main": [ "main": [
"build/pdf.js", "build/pdf.js",
"build/pdf.worker.js" "build/pdf.worker.js"

47
build/pdf.combined.js

@ -970,7 +970,7 @@ var createObjectURL = function createObjectURLClosure() {
return function createObjectURL(data, contentType) { return function createObjectURL(data, contentType) {
var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
if (!forceDataSchema) { if (!forceDataSchema && URL.createObjectURL) {
var blob = createBlob(data, contentType); var blob = createBlob(data, contentType);
return URL.createObjectURL(blob); return URL.createObjectURL(blob);
} }
@ -1051,14 +1051,14 @@ function MessageHandler(sourceName, targetName, comObj) {
comObj.addEventListener('message', this._onComObjOnMessage); comObj.addEventListener('message', this._onComObjOnMessage);
} }
MessageHandler.prototype = { MessageHandler.prototype = {
on: function messageHandlerOn(actionName, handler, scope) { on: function on(actionName, handler, scope) {
var ah = this.actionHandler; var ah = this.actionHandler;
if (ah[actionName]) { if (ah[actionName]) {
error('There is already an actionName called "' + actionName + '"'); error('There is already an actionName called "' + actionName + '"');
} }
ah[actionName] = [handler, scope]; ah[actionName] = [handler, scope];
}, },
send: function messageHandlerSend(actionName, data, transfers) { send: function send(actionName, data, transfers) {
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
targetName: this.targetName, targetName: this.targetName,
@ -1067,7 +1067,7 @@ MessageHandler.prototype = {
}; };
this.postMessage(message, transfers); this.postMessage(message, transfers);
}, },
sendWithPromise: function messageHandlerSendWithPromise(actionName, data, transfers) { sendWithPromise: function sendWithPromise(actionName, data, transfers) {
var callbackId = this.callbackIndex++; var callbackId = this.callbackIndex++;
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
@ -11651,6 +11651,7 @@ var PDFDocumentLoadingTask = function PDFDocumentLoadingTaskClosure() {
} }
}.bind(this)); }.bind(this));
}, },
then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) { then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) {
return this.promise.then.apply(this.promise, arguments); return this.promise.then.apply(this.promise, arguments);
} }
@ -11944,6 +11945,7 @@ var PDFPageProxy = function PDFPageProxyClosure() {
(0, _util.deprecated)('page destroy method, use cleanup() instead'); (0, _util.deprecated)('page destroy method, use cleanup() instead');
this.cleanup(); this.cleanup();
}, },
cleanup: function PDFPageProxy_cleanup() { cleanup: function PDFPageProxy_cleanup() {
this.pendingCleanup = true; this.pendingCleanup = true;
this._tryCleanup(); this._tryCleanup();
@ -12238,11 +12240,13 @@ var WorkerTransport = function WorkerTransportClosure() {
loadingTask._capability.resolve(pdfDocument); loadingTask._capability.resolve(pdfDocument);
}, this); }, this);
messageHandler.on('PasswordRequest', function transportPasswordRequest(exception) { messageHandler.on('PasswordRequest', function transportPasswordRequest(exception) {
var _this = this;
this._passwordCapability = (0, _util.createPromiseCapability)(); this._passwordCapability = (0, _util.createPromiseCapability)();
if (loadingTask.onPassword) { if (loadingTask.onPassword) {
var updatePassword = function (password) { var updatePassword = function updatePassword(password) {
this._passwordCapability.resolve({ password: password }); _this._passwordCapability.resolve({ password: password });
}.bind(this); };
loadingTask.onPassword(updatePassword, exception.code); loadingTask.onPassword(updatePassword, exception.code);
} else { } else {
this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code)); this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));
@ -12722,8 +12726,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() {
}(); }();
var version, build; var version, build;
{ {
exports.version = version = '1.8.254'; exports.version = version = '1.8.271';
exports.build = build = '366277d1'; exports.build = build = '7fd20847';
} }
exports.getDocument = getDocument; exports.getDocument = getDocument;
exports.PDFDataRangeTransport = PDFDataRangeTransport; exports.PDFDataRangeTransport = PDFDataRangeTransport;
@ -28016,8 +28020,8 @@ if (!_util.globalScope.PDFJS) {
} }
var PDFJS = _util.globalScope.PDFJS; var PDFJS = _util.globalScope.PDFJS;
{ {
PDFJS.version = '1.8.254'; PDFJS.version = '1.8.271';
PDFJS.build = '366277d1'; PDFJS.build = '7fd20847';
} }
PDFJS.pdfBug = false; PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) { if (PDFJS.verbosity !== undefined) {
@ -28031,6 +28035,7 @@ Object.defineProperty(PDFJS, 'verbosity', {
set: function set(level) { set: function set(level) {
(0, _util.setVerbosityLevel)(level); (0, _util.setVerbosityLevel)(level);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -28095,6 +28100,7 @@ PDFJS.pdfjsNext = PDFJS.pdfjsNext === undefined ? false : PDFJS.pdfjsNext;
} }
PDFJS.externalLinkTarget = value ? _dom_utils.LinkTarget.BLANK : _dom_utils.LinkTarget.NONE; PDFJS.externalLinkTarget = value ? _dom_utils.LinkTarget.BLANK : _dom_utils.LinkTarget.NONE;
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -42412,14 +42418,15 @@ var CanvasGraphics = function CanvasGraphicsClosure() {
this.endPath(); this.endPath();
}, },
getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) { getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) {
var _this = this;
var pattern; var pattern;
if (IR[0] === 'TilingPattern') { if (IR[0] === 'TilingPattern') {
var color = IR[1]; var color = IR[1];
var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice(); var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice();
var self = this;
var canvasGraphicsFactory = { var canvasGraphicsFactory = {
createCanvasGraphics: function createCanvasGraphics(ctx) { createCanvasGraphics: function createCanvasGraphics(ctx) {
return new CanvasGraphics(ctx, self.commonObjs, self.objs, self.canvasFactory); return new CanvasGraphics(ctx, _this.commonObjs, _this.objs, _this.canvasFactory);
} }
}; };
pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform); pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);
@ -42913,6 +42920,7 @@ FontLoader.prototype = {
get: function get() { get: function get() {
return (0, _util.shadow)(this, 'loadTestFont', getLoadTestFont()); return (0, _util.shadow)(this, 'loadTestFont', getLoadTestFont());
}, },
configurable: true configurable: true
}); });
FontLoader.prototype.addNativeFontFace = function fontLoader_addNativeFontFace(nativeFontFace) { FontLoader.prototype.addNativeFontFace = function fontLoader_addNativeFontFace(nativeFontFace) {
@ -43068,6 +43076,7 @@ FontLoader.prototype = {
get: function get() { get: function get() {
return (0, _util.shadow)(FontLoader, 'isSyncFontLoadingSupported', isSyncFontLoadingSupported()); return (0, _util.shadow)(FontLoader, 'isSyncFontLoadingSupported', isSyncFontLoadingSupported());
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -43534,8 +43543,8 @@ exports.TilingPattern = TilingPattern;
"use strict"; "use strict";
var pdfjsVersion = '1.8.254'; var pdfjsVersion = '1.8.271';
var pdfjsBuild = '366277d1'; var pdfjsBuild = '7fd20847';
var pdfjsSharedUtil = __w_pdfjs_require__(0); var pdfjsSharedUtil = __w_pdfjs_require__(0);
var pdfjsDisplayGlobal = __w_pdfjs_require__(26); var pdfjsDisplayGlobal = __w_pdfjs_require__(26);
var pdfjsDisplayAPI = __w_pdfjs_require__(10); var pdfjsDisplayAPI = __w_pdfjs_require__(10);
@ -43706,6 +43715,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this; return this;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -43713,6 +43723,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this.length; return this.length;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -43901,6 +43912,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return dataset; return dataset;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -43961,6 +43973,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return classList; return classList;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -44161,6 +44174,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
var scripts = document.getElementsByTagName('script'); var scripts = document.getElementsByTagName('script');
return scripts[scripts.length - 1]; return scripts[scripts.length - 1];
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -44182,6 +44196,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
typeProperty.set.call(this, value === 'number' ? 'text' : value); typeProperty.set.call(this, value === 'number' ? 'text' : value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -44204,6 +44219,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
readyStateProto.set.call(this, value); readyStateProto.set.call(this, value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -44937,6 +44953,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
toString: function toString() { toString: function toString() {
return this.href; return this.href;
}, },
get href() { get href() {
if (this._isInvalid) { if (this._isInvalid) {
return this._url; return this._url;

47
build/pdf.js

@ -970,7 +970,7 @@ var createObjectURL = function createObjectURLClosure() {
return function createObjectURL(data, contentType) { return function createObjectURL(data, contentType) {
var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
if (!forceDataSchema) { if (!forceDataSchema && URL.createObjectURL) {
var blob = createBlob(data, contentType); var blob = createBlob(data, contentType);
return URL.createObjectURL(blob); return URL.createObjectURL(blob);
} }
@ -1051,14 +1051,14 @@ function MessageHandler(sourceName, targetName, comObj) {
comObj.addEventListener('message', this._onComObjOnMessage); comObj.addEventListener('message', this._onComObjOnMessage);
} }
MessageHandler.prototype = { MessageHandler.prototype = {
on: function messageHandlerOn(actionName, handler, scope) { on: function on(actionName, handler, scope) {
var ah = this.actionHandler; var ah = this.actionHandler;
if (ah[actionName]) { if (ah[actionName]) {
error('There is already an actionName called "' + actionName + '"'); error('There is already an actionName called "' + actionName + '"');
} }
ah[actionName] = [handler, scope]; ah[actionName] = [handler, scope];
}, },
send: function messageHandlerSend(actionName, data, transfers) { send: function send(actionName, data, transfers) {
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
targetName: this.targetName, targetName: this.targetName,
@ -1067,7 +1067,7 @@ MessageHandler.prototype = {
}; };
this.postMessage(message, transfers); this.postMessage(message, transfers);
}, },
sendWithPromise: function messageHandlerSendWithPromise(actionName, data, transfers) { sendWithPromise: function sendWithPromise(actionName, data, transfers) {
var callbackId = this.callbackIndex++; var callbackId = this.callbackIndex++;
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
@ -2277,6 +2277,7 @@ var PDFDocumentLoadingTask = function PDFDocumentLoadingTaskClosure() {
} }
}.bind(this)); }.bind(this));
}, },
then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) { then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) {
return this.promise.then.apply(this.promise, arguments); return this.promise.then.apply(this.promise, arguments);
} }
@ -2570,6 +2571,7 @@ var PDFPageProxy = function PDFPageProxyClosure() {
(0, _util.deprecated)('page destroy method, use cleanup() instead'); (0, _util.deprecated)('page destroy method, use cleanup() instead');
this.cleanup(); this.cleanup();
}, },
cleanup: function PDFPageProxy_cleanup() { cleanup: function PDFPageProxy_cleanup() {
this.pendingCleanup = true; this.pendingCleanup = true;
this._tryCleanup(); this._tryCleanup();
@ -2947,11 +2949,13 @@ var WorkerTransport = function WorkerTransportClosure() {
loadingTask._capability.resolve(pdfDocument); loadingTask._capability.resolve(pdfDocument);
}, this); }, this);
messageHandler.on('PasswordRequest', function transportPasswordRequest(exception) { messageHandler.on('PasswordRequest', function transportPasswordRequest(exception) {
var _this = this;
this._passwordCapability = (0, _util.createPromiseCapability)(); this._passwordCapability = (0, _util.createPromiseCapability)();
if (loadingTask.onPassword) { if (loadingTask.onPassword) {
var updatePassword = function (password) { var updatePassword = function updatePassword(password) {
this._passwordCapability.resolve({ password: password }); _this._passwordCapability.resolve({ password: password });
}.bind(this); };
loadingTask.onPassword(updatePassword, exception.code); loadingTask.onPassword(updatePassword, exception.code);
} else { } else {
this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code)); this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));
@ -3431,8 +3435,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() {
}(); }();
var version, build; var version, build;
{ {
exports.version = version = '1.8.254'; exports.version = version = '1.8.271';
exports.build = build = '366277d1'; exports.build = build = '7fd20847';
} }
exports.getDocument = getDocument; exports.getDocument = getDocument;
exports.PDFDataRangeTransport = PDFDataRangeTransport; exports.PDFDataRangeTransport = PDFDataRangeTransport;
@ -5399,8 +5403,8 @@ if (!_util.globalScope.PDFJS) {
} }
var PDFJS = _util.globalScope.PDFJS; var PDFJS = _util.globalScope.PDFJS;
{ {
PDFJS.version = '1.8.254'; PDFJS.version = '1.8.271';
PDFJS.build = '366277d1'; PDFJS.build = '7fd20847';
} }
PDFJS.pdfBug = false; PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) { if (PDFJS.verbosity !== undefined) {
@ -5414,6 +5418,7 @@ Object.defineProperty(PDFJS, 'verbosity', {
set: function set(level) { set: function set(level) {
(0, _util.setVerbosityLevel)(level); (0, _util.setVerbosityLevel)(level);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -5478,6 +5483,7 @@ PDFJS.pdfjsNext = PDFJS.pdfjsNext === undefined ? false : PDFJS.pdfjsNext;
} }
PDFJS.externalLinkTarget = value ? _dom_utils.LinkTarget.BLANK : _dom_utils.LinkTarget.NONE; PDFJS.externalLinkTarget = value ? _dom_utils.LinkTarget.BLANK : _dom_utils.LinkTarget.NONE;
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -6767,14 +6773,15 @@ var CanvasGraphics = function CanvasGraphicsClosure() {
this.endPath(); this.endPath();
}, },
getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) { getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) {
var _this = this;
var pattern; var pattern;
if (IR[0] === 'TilingPattern') { if (IR[0] === 'TilingPattern') {
var color = IR[1]; var color = IR[1];
var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice(); var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice();
var self = this;
var canvasGraphicsFactory = { var canvasGraphicsFactory = {
createCanvasGraphics: function createCanvasGraphics(ctx) { createCanvasGraphics: function createCanvasGraphics(ctx) {
return new CanvasGraphics(ctx, self.commonObjs, self.objs, self.canvasFactory); return new CanvasGraphics(ctx, _this.commonObjs, _this.objs, _this.canvasFactory);
} }
}; };
pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform); pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);
@ -7268,6 +7275,7 @@ FontLoader.prototype = {
get: function get() { get: function get() {
return (0, _util.shadow)(this, 'loadTestFont', getLoadTestFont()); return (0, _util.shadow)(this, 'loadTestFont', getLoadTestFont());
}, },
configurable: true configurable: true
}); });
FontLoader.prototype.addNativeFontFace = function fontLoader_addNativeFontFace(nativeFontFace) { FontLoader.prototype.addNativeFontFace = function fontLoader_addNativeFontFace(nativeFontFace) {
@ -7423,6 +7431,7 @@ FontLoader.prototype = {
get: function get() { get: function get() {
return (0, _util.shadow)(FontLoader, 'isSyncFontLoadingSupported', isSyncFontLoadingSupported()); return (0, _util.shadow)(FontLoader, 'isSyncFontLoadingSupported', isSyncFontLoadingSupported());
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -7889,8 +7898,8 @@ exports.TilingPattern = TilingPattern;
"use strict"; "use strict";
var pdfjsVersion = '1.8.254'; var pdfjsVersion = '1.8.271';
var pdfjsBuild = '366277d1'; var pdfjsBuild = '7fd20847';
var pdfjsSharedUtil = __w_pdfjs_require__(0); var pdfjsSharedUtil = __w_pdfjs_require__(0);
var pdfjsDisplayGlobal = __w_pdfjs_require__(9); var pdfjsDisplayGlobal = __w_pdfjs_require__(9);
var pdfjsDisplayAPI = __w_pdfjs_require__(3); var pdfjsDisplayAPI = __w_pdfjs_require__(3);
@ -8061,6 +8070,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this; return this;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -8068,6 +8078,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this.length; return this.length;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -8256,6 +8267,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return dataset; return dataset;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -8316,6 +8328,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return classList; return classList;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -8516,6 +8529,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
var scripts = document.getElementsByTagName('script'); var scripts = document.getElementsByTagName('script');
return scripts[scripts.length - 1]; return scripts[scripts.length - 1];
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -8537,6 +8551,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
typeProperty.set.call(this, value === 'number' ? 'text' : value); typeProperty.set.call(this, value === 'number' ? 'text' : value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -8559,6 +8574,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
readyStateProto.set.call(this, value); readyStateProto.set.call(this, value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -9292,6 +9308,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
toString: function toString() { toString: function toString() {
return this.href; return this.href;
}, },
get href() { get href() {
if (this._isInvalid) { if (this._isInvalid) {
return this._url; return this._url;

6
build/pdf.min.js vendored

File diff suppressed because one or more lines are too long

20
build/pdf.worker.js vendored

@ -970,7 +970,7 @@ var createObjectURL = function createObjectURLClosure() {
return function createObjectURL(data, contentType) { return function createObjectURL(data, contentType) {
var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
if (!forceDataSchema) { if (!forceDataSchema && URL.createObjectURL) {
var blob = createBlob(data, contentType); var blob = createBlob(data, contentType);
return URL.createObjectURL(blob); return URL.createObjectURL(blob);
} }
@ -1051,14 +1051,14 @@ function MessageHandler(sourceName, targetName, comObj) {
comObj.addEventListener('message', this._onComObjOnMessage); comObj.addEventListener('message', this._onComObjOnMessage);
} }
MessageHandler.prototype = { MessageHandler.prototype = {
on: function messageHandlerOn(actionName, handler, scope) { on: function on(actionName, handler, scope) {
var ah = this.actionHandler; var ah = this.actionHandler;
if (ah[actionName]) { if (ah[actionName]) {
error('There is already an actionName called "' + actionName + '"'); error('There is already an actionName called "' + actionName + '"');
} }
ah[actionName] = [handler, scope]; ah[actionName] = [handler, scope];
}, },
send: function messageHandlerSend(actionName, data, transfers) { send: function send(actionName, data, transfers) {
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
targetName: this.targetName, targetName: this.targetName,
@ -1067,7 +1067,7 @@ MessageHandler.prototype = {
}; };
this.postMessage(message, transfers); this.postMessage(message, transfers);
}, },
sendWithPromise: function messageHandlerSendWithPromise(actionName, data, transfers) { sendWithPromise: function sendWithPromise(actionName, data, transfers) {
var callbackId = this.callbackIndex++; var callbackId = this.callbackIndex++;
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
@ -36956,8 +36956,8 @@ exports.Type1Parser = Type1Parser;
"use strict"; "use strict";
var pdfjsVersion = '1.8.254'; var pdfjsVersion = '1.8.271';
var pdfjsBuild = '366277d1'; var pdfjsBuild = '7fd20847';
var pdfjsCoreWorker = __w_pdfjs_require__(8); var pdfjsCoreWorker = __w_pdfjs_require__(8);
{ {
__w_pdfjs_require__(19); __w_pdfjs_require__(19);
@ -37100,6 +37100,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this; return this;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -37107,6 +37108,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this.length; return this.length;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -37295,6 +37297,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return dataset; return dataset;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -37355,6 +37358,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return classList; return classList;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -37555,6 +37559,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
var scripts = document.getElementsByTagName('script'); var scripts = document.getElementsByTagName('script');
return scripts[scripts.length - 1]; return scripts[scripts.length - 1];
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -37576,6 +37581,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
typeProperty.set.call(this, value === 'number' ? 'text' : value); typeProperty.set.call(this, value === 'number' ? 'text' : value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -37598,6 +37604,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
readyStateProto.set.call(this, value); readyStateProto.set.call(this, value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -38331,6 +38338,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
toString: function toString() { toString: function toString() {
return this.href; return this.href;
}, },
get href() { get href() {
if (this._isInvalid) { if (this._isInvalid) {
return this._url; return this._url;

4
build/pdf.worker.min.js vendored

File diff suppressed because one or more lines are too long

14
lib/display/api.js

@ -208,6 +208,7 @@ var PDFDocumentLoadingTask = function PDFDocumentLoadingTaskClosure() {
} }
}.bind(this)); }.bind(this));
}, },
then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) { then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) {
return this.promise.then.apply(this.promise, arguments); return this.promise.then.apply(this.promise, arguments);
} }
@ -501,6 +502,7 @@ var PDFPageProxy = function PDFPageProxyClosure() {
(0, _util.deprecated)('page destroy method, use cleanup() instead'); (0, _util.deprecated)('page destroy method, use cleanup() instead');
this.cleanup(); this.cleanup();
}, },
cleanup: function PDFPageProxy_cleanup() { cleanup: function PDFPageProxy_cleanup() {
this.pendingCleanup = true; this.pendingCleanup = true;
this._tryCleanup(); this._tryCleanup();
@ -878,11 +880,13 @@ var WorkerTransport = function WorkerTransportClosure() {
loadingTask._capability.resolve(pdfDocument); loadingTask._capability.resolve(pdfDocument);
}, this); }, this);
messageHandler.on('PasswordRequest', function transportPasswordRequest(exception) { messageHandler.on('PasswordRequest', function transportPasswordRequest(exception) {
var _this = this;
this._passwordCapability = (0, _util.createPromiseCapability)(); this._passwordCapability = (0, _util.createPromiseCapability)();
if (loadingTask.onPassword) { if (loadingTask.onPassword) {
var updatePassword = function (password) { var updatePassword = function updatePassword(password) {
this._passwordCapability.resolve({ password: password }); _this._passwordCapability.resolve({ password: password });
}.bind(this); };
loadingTask.onPassword(updatePassword, exception.code); loadingTask.onPassword(updatePassword, exception.code);
} else { } else {
this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code)); this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));
@ -1362,8 +1366,8 @@ var _UnsupportedManager = function UnsupportedManagerClosure() {
}(); }();
var version, build; var version, build;
{ {
exports.version = version = '1.8.254'; exports.version = version = '1.8.271';
exports.build = build = '366277d1'; exports.build = build = '7fd20847';
} }
exports.getDocument = getDocument; exports.getDocument = getDocument;
exports.PDFDataRangeTransport = PDFDataRangeTransport; exports.PDFDataRangeTransport = PDFDataRangeTransport;

5
lib/display/canvas.js

@ -1271,14 +1271,15 @@ var CanvasGraphics = function CanvasGraphicsClosure() {
this.endPath(); this.endPath();
}, },
getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) { getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) {
var _this = this;
var pattern; var pattern;
if (IR[0] === 'TilingPattern') { if (IR[0] === 'TilingPattern') {
var color = IR[1]; var color = IR[1];
var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice(); var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice();
var self = this;
var canvasGraphicsFactory = { var canvasGraphicsFactory = {
createCanvasGraphics: function createCanvasGraphics(ctx) { createCanvasGraphics: function createCanvasGraphics(ctx) {
return new CanvasGraphics(ctx, self.commonObjs, self.objs, self.canvasFactory); return new CanvasGraphics(ctx, _this.commonObjs, _this.objs, _this.canvasFactory);
} }
}; };
pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform); pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);

2
lib/display/font_loader.js

@ -61,6 +61,7 @@ FontLoader.prototype = {
get: function get() { get: function get() {
return (0, _util.shadow)(this, 'loadTestFont', getLoadTestFont()); return (0, _util.shadow)(this, 'loadTestFont', getLoadTestFont());
}, },
configurable: true configurable: true
}); });
FontLoader.prototype.addNativeFontFace = function fontLoader_addNativeFontFace(nativeFontFace) { FontLoader.prototype.addNativeFontFace = function fontLoader_addNativeFontFace(nativeFontFace) {
@ -216,6 +217,7 @@ FontLoader.prototype = {
get: function get() { get: function get() {
return (0, _util.shadow)(FontLoader, 'isSyncFontLoadingSupported', isSyncFontLoadingSupported()); return (0, _util.shadow)(FontLoader, 'isSyncFontLoadingSupported', isSyncFontLoadingSupported());
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });

6
lib/display/global.js

@ -39,8 +39,8 @@ if (!_util.globalScope.PDFJS) {
} }
var PDFJS = _util.globalScope.PDFJS; var PDFJS = _util.globalScope.PDFJS;
{ {
PDFJS.version = '1.8.254'; PDFJS.version = '1.8.271';
PDFJS.build = '366277d1'; PDFJS.build = '7fd20847';
} }
PDFJS.pdfBug = false; PDFJS.pdfBug = false;
if (PDFJS.verbosity !== undefined) { if (PDFJS.verbosity !== undefined) {
@ -54,6 +54,7 @@ Object.defineProperty(PDFJS, 'verbosity', {
set: function set(level) { set: function set(level) {
(0, _util.setVerbosityLevel)(level); (0, _util.setVerbosityLevel)(level);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -118,6 +119,7 @@ PDFJS.pdfjsNext = PDFJS.pdfjsNext === undefined ? false : PDFJS.pdfjsNext;
} }
PDFJS.externalLinkTarget = value ? _dom_utils.LinkTarget.BLANK : _dom_utils.LinkTarget.NONE; PDFJS.externalLinkTarget = value ? _dom_utils.LinkTarget.BLANK : _dom_utils.LinkTarget.NONE;
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });

4
lib/pdf.js

@ -14,8 +14,8 @@
*/ */
'use strict'; 'use strict';
var pdfjsVersion = '1.8.254'; var pdfjsVersion = '1.8.271';
var pdfjsBuild = '366277d1'; var pdfjsBuild = '7fd20847';
var pdfjsSharedUtil = require('./shared/util.js'); var pdfjsSharedUtil = require('./shared/util.js');
var pdfjsDisplayGlobal = require('./display/global.js'); var pdfjsDisplayGlobal = require('./display/global.js');
var pdfjsDisplayAPI = require('./display/api.js'); var pdfjsDisplayAPI = require('./display/api.js');

4
lib/pdf.worker.js vendored

@ -14,8 +14,8 @@
*/ */
'use strict'; 'use strict';
var pdfjsVersion = '1.8.254'; var pdfjsVersion = '1.8.271';
var pdfjsBuild = '366277d1'; var pdfjsBuild = '7fd20847';
var pdfjsCoreWorker = require('./core/worker.js'); var pdfjsCoreWorker = require('./core/worker.js');
{ {
require('./core/network.js'); require('./core/network.js');

8
lib/shared/compatibility.js

@ -143,6 +143,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this; return this;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -150,6 +151,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this.length; return this.length;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -338,6 +340,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return dataset; return dataset;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -398,6 +401,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return classList; return classList;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -598,6 +602,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
var scripts = document.getElementsByTagName('script'); var scripts = document.getElementsByTagName('script');
return scripts[scripts.length - 1]; return scripts[scripts.length - 1];
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -619,6 +624,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
typeProperty.set.call(this, value === 'number' ? 'text' : value); typeProperty.set.call(this, value === 'number' ? 'text' : value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -641,6 +647,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
readyStateProto.set.call(this, value); readyStateProto.set.call(this, value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -1374,6 +1381,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
toString: function toString() { toString: function toString() {
return this.href; return this.href;
}, },
get href() { get href() {
if (this._isInvalid) { if (this._isInvalid) {
return this._url; return this._url;

8
lib/shared/util.js

@ -886,7 +886,7 @@ var createObjectURL = function createObjectURLClosure() {
return function createObjectURL(data, contentType) { return function createObjectURL(data, contentType) {
var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
if (!forceDataSchema) { if (!forceDataSchema && URL.createObjectURL) {
var blob = createBlob(data, contentType); var blob = createBlob(data, contentType);
return URL.createObjectURL(blob); return URL.createObjectURL(blob);
} }
@ -967,14 +967,14 @@ function MessageHandler(sourceName, targetName, comObj) {
comObj.addEventListener('message', this._onComObjOnMessage); comObj.addEventListener('message', this._onComObjOnMessage);
} }
MessageHandler.prototype = { MessageHandler.prototype = {
on: function messageHandlerOn(actionName, handler, scope) { on: function on(actionName, handler, scope) {
var ah = this.actionHandler; var ah = this.actionHandler;
if (ah[actionName]) { if (ah[actionName]) {
error('There is already an actionName called "' + actionName + '"'); error('There is already an actionName called "' + actionName + '"');
} }
ah[actionName] = [handler, scope]; ah[actionName] = [handler, scope];
}, },
send: function messageHandlerSend(actionName, data, transfers) { send: function send(actionName, data, transfers) {
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,
targetName: this.targetName, targetName: this.targetName,
@ -983,7 +983,7 @@ MessageHandler.prototype = {
}; };
this.postMessage(message, transfers); this.postMessage(message, transfers);
}, },
sendWithPromise: function messageHandlerSendWithPromise(actionName, data, transfers) { sendWithPromise: function sendWithPromise(actionName, data, transfers) {
var callbackId = this.callbackIndex++; var callbackId = this.callbackIndex++;
var message = { var message = {
sourceName: this.sourceName, sourceName: this.sourceName,

4
lib/test/unit/ui_utils_spec.js

@ -20,6 +20,7 @@ var binarySearchFirstItem = webUiUtils.binarySearchFirstItem;
var getPDFFileNameFromURL = webUiUtils.getPDFFileNameFromURL; var getPDFFileNameFromURL = webUiUtils.getPDFFileNameFromURL;
var EventBus = webUiUtils.EventBus; var EventBus = webUiUtils.EventBus;
var createObjectURL = sharedUtil.createObjectURL; var createObjectURL = sharedUtil.createObjectURL;
var isNodeJS = sharedUtil.isNodeJS;
describe('ui_utils', function () { describe('ui_utils', function () {
describe('binary search', function () { describe('binary search', function () {
function isTrue(boolean) { function isTrue(boolean) {
@ -94,6 +95,9 @@ describe('ui_utils', function () {
expect(getPDFFileNameFromURL('ftp://www.example.com/file4.pdf')).toEqual('file4.pdf'); expect(getPDFFileNameFromURL('ftp://www.example.com/file4.pdf')).toEqual('file4.pdf');
}); });
it('gets PDF filename from query string appended to "blob:" URL', function () { it('gets PDF filename from query string appended to "blob:" URL', function () {
if (isNodeJS()) {
pending('Blob in not supported in Node.js.');
}
var typedArray = new Uint8Array([1, 2, 3, 4, 5]); var typedArray = new Uint8Array([1, 2, 3, 4, 5]);
var blobUrl = createObjectURL(typedArray, 'application/pdf'); var blobUrl = createObjectURL(typedArray, 'application/pdf');
expect(blobUrl.indexOf('blob:') === 0).toEqual(true); expect(blobUrl.indexOf('blob:') === 0).toEqual(true);

90
lib/web/annotation_layer_builder.js

@ -19,14 +19,20 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.DefaultAnnotationLayerFactory = exports.AnnotationLayerBuilder = undefined; exports.DefaultAnnotationLayerFactory = exports.AnnotationLayerBuilder = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _pdfjs = require('./pdfjs'); var _pdfjs = require('./pdfjs');
var _ui_utils = require('./ui_utils'); var _ui_utils = require('./ui_utils');
var _pdf_link_service = require('./pdf_link_service'); var _pdf_link_service = require('./pdf_link_service');
var AnnotationLayerBuilder = function AnnotationLayerBuilderClosure() { function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var AnnotationLayerBuilder = function () {
function AnnotationLayerBuilder(options) { function AnnotationLayerBuilder(options) {
_classCallCheck(this, AnnotationLayerBuilder);
this.pageDiv = options.pageDiv; this.pageDiv = options.pageDiv;
this.pdfPage = options.pdfPage; this.pdfPage = options.pdfPage;
this.renderInteractiveForms = options.renderInteractiveForms; this.renderInteractiveForms = options.renderInteractiveForms;
@ -34,57 +40,75 @@ var AnnotationLayerBuilder = function AnnotationLayerBuilderClosure() {
this.downloadManager = options.downloadManager; this.downloadManager = options.downloadManager;
this.div = null; this.div = null;
} }
AnnotationLayerBuilder.prototype = {
render: function AnnotationLayerBuilder_render(viewport, intent) { _createClass(AnnotationLayerBuilder, [{
var self = this; key: 'render',
var parameters = { intent: intent === undefined ? 'display' : intent }; value: function render(viewport) {
this.pdfPage.getAnnotations(parameters).then(function (annotations) { var _this = this;
viewport = viewport.clone({ dontFlip: true });
parameters = { var intent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'display';
viewport: viewport,
div: self.div, this.pdfPage.getAnnotations({ intent: intent }).then(function (annotations) {
var parameters = {
viewport: viewport.clone({ dontFlip: true }),
div: _this.div,
annotations: annotations, annotations: annotations,
page: self.pdfPage, page: _this.pdfPage,
renderInteractiveForms: self.renderInteractiveForms, renderInteractiveForms: _this.renderInteractiveForms,
linkService: self.linkService, linkService: _this.linkService,
downloadManager: self.downloadManager downloadManager: _this.downloadManager
}; };
if (self.div) { if (_this.div) {
_pdfjs.AnnotationLayer.update(parameters); _pdfjs.AnnotationLayer.update(parameters);
} else { } else {
if (annotations.length === 0) { if (annotations.length === 0) {
return; return;
} }
self.div = document.createElement('div'); _this.div = document.createElement('div');
self.div.className = 'annotationLayer'; _this.div.className = 'annotationLayer';
self.pageDiv.appendChild(self.div); _this.pageDiv.appendChild(_this.div);
parameters.div = self.div; parameters.div = _this.div;
_pdfjs.AnnotationLayer.render(parameters); _pdfjs.AnnotationLayer.render(parameters);
if (typeof _ui_utils.mozL10n !== 'undefined') { if (typeof _ui_utils.mozL10n !== 'undefined') {
_ui_utils.mozL10n.translate(self.div); _ui_utils.mozL10n.translate(_this.div);
} }
} }
}); });
}, }
hide: function AnnotationLayerBuilder_hide() { }, {
key: 'hide',
value: function hide() {
if (!this.div) { if (!this.div) {
return; return;
} }
this.div.setAttribute('hidden', 'true'); this.div.setAttribute('hidden', 'true');
} }
}; }]);
return AnnotationLayerBuilder; return AnnotationLayerBuilder;
}(); }();
function DefaultAnnotationLayerFactory() {}
DefaultAnnotationLayerFactory.prototype = { var DefaultAnnotationLayerFactory = function () {
createAnnotationLayerBuilder: function createAnnotationLayerBuilder(pageDiv, pdfPage, renderInteractiveForms) { function DefaultAnnotationLayerFactory() {
return new AnnotationLayerBuilder({ _classCallCheck(this, DefaultAnnotationLayerFactory);
pageDiv: pageDiv,
pdfPage: pdfPage,
renderInteractiveForms: renderInteractiveForms,
linkService: new _pdf_link_service.SimpleLinkService()
});
} }
};
_createClass(DefaultAnnotationLayerFactory, [{
key: 'createAnnotationLayerBuilder',
value: function createAnnotationLayerBuilder(pageDiv, pdfPage) {
var renderInteractiveForms = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
return new AnnotationLayerBuilder({
pageDiv: pageDiv,
pdfPage: pdfPage,
renderInteractiveForms: renderInteractiveForms,
linkService: new _pdf_link_service.SimpleLinkService()
});
}
}]);
return DefaultAnnotationLayerFactory;
}();
exports.AnnotationLayerBuilder = AnnotationLayerBuilder; exports.AnnotationLayerBuilder = AnnotationLayerBuilder;
exports.DefaultAnnotationLayerFactory = DefaultAnnotationLayerFactory; exports.DefaultAnnotationLayerFactory = DefaultAnnotationLayerFactory;

114
lib/web/app.js

@ -577,6 +577,8 @@ var PDFViewerApplication = {
} }
}, },
load: function pdfViewLoad(pdfDocument, scale) { load: function pdfViewLoad(pdfDocument, scale) {
var _this4 = this;
var self = this; var self = this;
scale = scale || _ui_utils.UNKNOWN_SCALE; scale = scale || _ui_utils.UNKNOWN_SCALE;
this.pdfDocument = pdfDocument; this.pdfDocument = pdfDocument;
@ -618,46 +620,56 @@ var PDFViewerApplication = {
} }
} }
var initialParams = { var initialParams = {
destination: self.initialDestination, destination: _this4.initialDestination,
bookmark: self.initialBookmark, bookmark: _this4.initialBookmark,
hash: null hash: null
}; };
store.initializedPromise.then(function resolved() { var storedHash = _this4.viewerPrefs['defaultZoomValue'] ? 'zoom=' + _this4.viewerPrefs['defaultZoomValue'] : null;
var storedHash = null, var sidebarView = _this4.viewerPrefs['sidebarViewOnLoad'];
sidebarView = null; new Promise(function (resolve, reject) {
if (self.viewerPrefs['showPreviousViewOnLoad'] && store.get('exists', false)) { if (!_this4.viewerPrefs['showPreviousViewOnLoad']) {
var pageNum = store.get('page', '1'); resolve();
var zoom = self.viewerPrefs['defaultZoomValue'] || store.get('zoom', _ui_utils.DEFAULT_SCALE_VALUE); return;
var left = store.get('scrollLeft', '0');
var top = store.get('scrollTop', '0');
storedHash = 'page=' + pageNum + '&zoom=' + zoom + ',' + left + ',' + top;
sidebarView = store.get('sidebarView', _pdf_sidebar.SidebarView.NONE);
} else if (self.viewerPrefs['defaultZoomValue']) {
storedHash = 'page=1&zoom=' + self.viewerPrefs['defaultZoomValue'];
} }
self.setInitialView(storedHash, { store.getMultiple({
scale: scale, exists: false,
sidebarView: sidebarView page: '1',
zoom: _ui_utils.DEFAULT_SCALE_VALUE,
scrollLeft: '0',
scrollTop: '0',
sidebarView: _pdf_sidebar.SidebarView.NONE
}).then(function (values) {
if (!values.exists) {
resolve();
return;
}
storedHash = 'page=' + values.page + '&zoom=' + (_this4.viewerPrefs['defaultZoomValue'] || values.zoom) + ',' + values.scrollLeft + ',' + values.scrollTop;
sidebarView = _this4.viewerPrefs['sidebarViewOnLoad'] || values.sidebarView | 0;
resolve();
}).catch(function () {
resolve();
});
}).then(function () {
_this4.setInitialView(storedHash, {
sidebarView: sidebarView,
scale: scale
}); });
initialParams.hash = storedHash; initialParams.hash = storedHash;
if (!self.isViewerEmbedded) { if (!_this4.isViewerEmbedded) {
self.pdfViewer.focus(); _this4.pdfViewer.focus();
} }
}, function rejected(reason) { return pagesPromise;
console.error(reason); }).then(function () {
self.setInitialView(null, { scale: scale });
});
pagesPromise.then(function resolved() {
if (!initialParams.destination && !initialParams.bookmark && !initialParams.hash) { if (!initialParams.destination && !initialParams.bookmark && !initialParams.hash) {
return; return;
} }
if (self.hasEqualPageSizes) { if (_this4.hasEqualPageSizes) {
return; return;
} }
self.initialDestination = initialParams.destination; _this4.initialDestination = initialParams.destination;
self.initialBookmark = initialParams.bookmark; _this4.initialBookmark = initialParams.bookmark;
self.pdfViewer.currentScaleValue = self.pdfViewer.currentScaleValue; _this4.pdfViewer.currentScaleValue = _this4.pdfViewer.currentScaleValue;
self.setInitialView(initialParams.hash); _this4.setInitialView(initialParams.hash);
}); });
}); });
pdfDocument.getPageLabels().then(function (labels) { pdfDocument.getPageLabels().then(function (labels) {
@ -734,11 +746,15 @@ var PDFViewerApplication = {
} }
}); });
}, },
setInitialView: function pdfViewSetInitialView(storedHash, options) { setInitialView: function setInitialView(storedHash) {
var scale = options && options.scale; var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var sidebarView = options && options.sidebarView; var _options$scale = options.scale,
scale = _options$scale === undefined ? 0 : _options$scale,
_options$sidebarView = options.sidebarView,
sidebarView = _options$sidebarView === undefined ? _pdf_sidebar.SidebarView.NONE : _options$sidebarView;
this.isInitialViewSet = true; this.isInitialViewSet = true;
this.pdfSidebar.setInitialView(this.viewerPrefs['sidebarViewOnLoad'] || sidebarView | 0); this.pdfSidebar.setInitialView(sidebarView);
if (this.initialDestination) { if (this.initialDestination) {
this.pdfLinkService.navigateTo(this.initialDestination); this.pdfLinkService.navigateTo(this.initialDestination);
this.initialDestination = null; this.initialDestination = null;
@ -758,6 +774,7 @@ var PDFViewerApplication = {
this.pdfViewer.currentScaleValue = _ui_utils.DEFAULT_SCALE_VALUE; this.pdfViewer.currentScaleValue = _ui_utils.DEFAULT_SCALE_VALUE;
} }
}, },
cleanup: function pdfViewCleanup() { cleanup: function pdfViewCleanup() {
if (!this.pdfDocument) { if (!this.pdfDocument) {
return; return;
@ -1114,29 +1131,24 @@ function webViewerPresentationModeChanged(e) {
var switchInProgress = e.switchInProgress; var switchInProgress = e.switchInProgress;
PDFViewerApplication.pdfViewer.presentationModeState = switchInProgress ? _pdf_viewer.PresentationModeState.CHANGING : active ? _pdf_viewer.PresentationModeState.FULLSCREEN : _pdf_viewer.PresentationModeState.NORMAL; PDFViewerApplication.pdfViewer.presentationModeState = switchInProgress ? _pdf_viewer.PresentationModeState.CHANGING : active ? _pdf_viewer.PresentationModeState.FULLSCREEN : _pdf_viewer.PresentationModeState.NORMAL;
} }
function webViewerSidebarViewChanged(e) { function webViewerSidebarViewChanged(evt) {
PDFViewerApplication.pdfRenderingQueue.isThumbnailViewEnabled = PDFViewerApplication.pdfSidebar.isThumbnailViewVisible; PDFViewerApplication.pdfRenderingQueue.isThumbnailViewEnabled = PDFViewerApplication.pdfSidebar.isThumbnailViewVisible;
var store = PDFViewerApplication.store; var store = PDFViewerApplication.store;
if (!store || !PDFViewerApplication.isInitialViewSet) { if (store && PDFViewerApplication.isInitialViewSet) {
return; store.set('sidebarView', evt.view).catch(function () {});
} }
store.initializedPromise.then(function () {
store.set('sidebarView', e.view).catch(function () {});
});
} }
function webViewerUpdateViewarea(e) { function webViewerUpdateViewarea(evt) {
var location = e.location, var location = evt.location,
store = PDFViewerApplication.store; store = PDFViewerApplication.store;
if (store) { if (store && PDFViewerApplication.isInitialViewSet) {
store.initializedPromise.then(function () { store.setMultiple({
store.setMultiple({ 'exists': true,
'exists': true, 'page': location.pageNumber,
'page': location.pageNumber, 'zoom': location.scale,
'zoom': location.scale, 'scrollLeft': location.left,
'scrollLeft': location.left, 'scrollTop': location.top
'scrollTop': location.top }).catch(function () {});
}).catch(function () {});
});
} }
var href = PDFViewerApplication.pdfLinkService.getAnchorUrl(location.pdfOpenParams); var href = PDFViewerApplication.pdfLinkService.getAnchorUrl(location.pdfOpenParams);
PDFViewerApplication.appConfig.toolbar.viewBookmark.href = href; PDFViewerApplication.appConfig.toolbar.viewBookmark.href = href;

23
lib/web/interfaces.js

@ -14,6 +14,10 @@
*/ */
'use strict'; 'use strict';
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function IPDFLinkService() {} function IPDFLinkService() {}
IPDFLinkService.prototype = { IPDFLinkService.prototype = {
get page() {}, get page() {},
@ -43,7 +47,18 @@ function IPDFTextLayerFactory() {}
IPDFTextLayerFactory.prototype = { IPDFTextLayerFactory.prototype = {
createTextLayerBuilder: function createTextLayerBuilder(textLayerDiv, pageIndex, viewport, enhanceTextSelection) {} createTextLayerBuilder: function createTextLayerBuilder(textLayerDiv, pageIndex, viewport, enhanceTextSelection) {}
}; };
function IPDFAnnotationLayerFactory() {}
IPDFAnnotationLayerFactory.prototype = { var IPDFAnnotationLayerFactory = function () {
createAnnotationLayerBuilder: function createAnnotationLayerBuilder(pageDiv, pdfPage, renderInteractiveForms) {} function IPDFAnnotationLayerFactory() {
}; _classCallCheck(this, IPDFAnnotationLayerFactory);
}
_createClass(IPDFAnnotationLayerFactory, [{
key: 'createAnnotationLayerBuilder',
value: function createAnnotationLayerBuilder(pageDiv, pdfPage) {
var renderInteractiveForms = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
}
}]);
return IPDFAnnotationLayerFactory;
}();

233
lib/web/pdf_presentation_mode.js

@ -19,14 +19,27 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.PDFPresentationMode = undefined; exports.PDFPresentationMode = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _ui_utils = require('./ui_utils'); var _ui_utils = require('./ui_utils');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS = 1500; var DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS = 1500;
var DELAY_BEFORE_HIDING_CONTROLS = 3000; var DELAY_BEFORE_HIDING_CONTROLS = 3000;
var ACTIVE_SELECTOR = 'pdfPresentationMode'; var ACTIVE_SELECTOR = 'pdfPresentationMode';
var CONTROLS_SELECTOR = 'pdfPresentationModeControls'; var CONTROLS_SELECTOR = 'pdfPresentationModeControls';
var PDFPresentationMode = function PDFPresentationModeClosure() { var MOUSE_SCROLL_COOLDOWN_TIME = 50;
var PAGE_SWITCH_THRESHOLD = 0.1;
var SWIPE_MIN_DISTANCE_THRESHOLD = 50;
var SWIPE_ANGLE_THRESHOLD = Math.PI / 6;
var PDFPresentationMode = function () {
function PDFPresentationMode(options) { function PDFPresentationMode(options) {
var _this = this;
_classCallCheck(this, PDFPresentationMode);
this.container = options.container; this.container = options.container;
this.viewer = options.viewer || options.container.firstElementChild; this.viewer = options.viewer || options.container.firstElementChild;
this.pdfViewer = options.pdfViewer; this.pdfViewer = options.pdfViewer;
@ -39,26 +52,28 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
this.mouseScrollDelta = 0; this.mouseScrollDelta = 0;
this.touchSwipeState = null; this.touchSwipeState = null;
if (contextMenuItems) { if (contextMenuItems) {
contextMenuItems.contextFirstPage.addEventListener('click', function PDFPresentationMode_contextFirstPageClick(e) { contextMenuItems.contextFirstPage.addEventListener('click', function () {
this.contextMenuOpen = false; _this.contextMenuOpen = false;
this.eventBus.dispatch('firstpage'); _this.eventBus.dispatch('firstpage');
}.bind(this)); });
contextMenuItems.contextLastPage.addEventListener('click', function PDFPresentationMode_contextLastPageClick(e) { contextMenuItems.contextLastPage.addEventListener('click', function () {
this.contextMenuOpen = false; _this.contextMenuOpen = false;
this.eventBus.dispatch('lastpage'); _this.eventBus.dispatch('lastpage');
}.bind(this)); });
contextMenuItems.contextPageRotateCw.addEventListener('click', function PDFPresentationMode_contextPageRotateCwClick(e) { contextMenuItems.contextPageRotateCw.addEventListener('click', function () {
this.contextMenuOpen = false; _this.contextMenuOpen = false;
this.eventBus.dispatch('rotatecw'); _this.eventBus.dispatch('rotatecw');
}.bind(this)); });
contextMenuItems.contextPageRotateCcw.addEventListener('click', function PDFPresentationMode_contextPageRotateCcwClick(e) { contextMenuItems.contextPageRotateCcw.addEventListener('click', function () {
this.contextMenuOpen = false; _this.contextMenuOpen = false;
this.eventBus.dispatch('rotateccw'); _this.eventBus.dispatch('rotateccw');
}.bind(this)); });
} }
} }
PDFPresentationMode.prototype = {
request: function PDFPresentationMode_request() { _createClass(PDFPresentationMode, [{
key: 'request',
value: function request() {
if (this.switchInProgress || this.active || !this.viewer.hasChildNodes()) { if (this.switchInProgress || this.active || !this.viewer.hasChildNodes()) {
return false; return false;
} }
@ -81,15 +96,15 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
previousScale: this.pdfViewer.currentScaleValue previousScale: this.pdfViewer.currentScaleValue
}; };
return true; return true;
}, }
_mouseWheel: function PDFPresentationMode_mouseWheel(evt) { }, {
key: '_mouseWheel',
value: function _mouseWheel(evt) {
if (!this.active) { if (!this.active) {
return; return;
} }
evt.preventDefault(); evt.preventDefault();
var delta = (0, _ui_utils.normalizeWheelEventDelta)(evt); var delta = (0, _ui_utils.normalizeWheelEventDelta)(evt);
var MOUSE_SCROLL_COOLDOWN_TIME = 50;
var PAGE_SWITCH_THRESHOLD = 0.1;
var currentTime = new Date().getTime(); var currentTime = new Date().getTime();
var storedTime = this.mouseScrollTimeStamp; var storedTime = this.mouseScrollTimeStamp;
if (currentTime > storedTime && currentTime - storedTime < MOUSE_SCROLL_COOLDOWN_TIME) { if (currentTime > storedTime && currentTime - storedTime < MOUSE_SCROLL_COOLDOWN_TIME) {
@ -107,82 +122,101 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
this.mouseScrollTimeStamp = currentTime; this.mouseScrollTimeStamp = currentTime;
} }
} }
}, }
get isFullscreen() { }, {
return !!(document.fullscreenElement || document.mozFullScreen || document.webkitIsFullScreen || document.msFullscreenElement); key: '_goToPreviousPage',
}, value: function _goToPreviousPage() {
_goToPreviousPage: function PDFPresentationMode_goToPreviousPage() {
var page = this.pdfViewer.currentPageNumber; var page = this.pdfViewer.currentPageNumber;
if (page <= 1) { if (page <= 1) {
return false; return false;
} }
this.pdfViewer.currentPageNumber = page - 1; this.pdfViewer.currentPageNumber = page - 1;
return true; return true;
}, }
_goToNextPage: function PDFPresentationMode_goToNextPage() { }, {
key: '_goToNextPage',
value: function _goToNextPage() {
var page = this.pdfViewer.currentPageNumber; var page = this.pdfViewer.currentPageNumber;
if (page >= this.pdfViewer.pagesCount) { if (page >= this.pdfViewer.pagesCount) {
return false; return false;
} }
this.pdfViewer.currentPageNumber = page + 1; this.pdfViewer.currentPageNumber = page + 1;
return true; return true;
}, }
_notifyStateChange: function PDFPresentationMode_notifyStateChange() { }, {
key: '_notifyStateChange',
value: function _notifyStateChange() {
this.eventBus.dispatch('presentationmodechanged', { this.eventBus.dispatch('presentationmodechanged', {
source: this, source: this,
active: this.active, active: this.active,
switchInProgress: !!this.switchInProgress switchInProgress: !!this.switchInProgress
}); });
}, }
_setSwitchInProgress: function PDFPresentationMode_setSwitchInProgress() { }, {
key: '_setSwitchInProgress',
value: function _setSwitchInProgress() {
var _this2 = this;
if (this.switchInProgress) { if (this.switchInProgress) {
clearTimeout(this.switchInProgress); clearTimeout(this.switchInProgress);
} }
this.switchInProgress = setTimeout(function switchInProgressTimeout() { this.switchInProgress = setTimeout(function () {
this._removeFullscreenChangeListeners(); _this2._removeFullscreenChangeListeners();
delete this.switchInProgress; delete _this2.switchInProgress;
this._notifyStateChange(); _this2._notifyStateChange();
}.bind(this), DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS); }, DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS);
}, }
_resetSwitchInProgress: function PDFPresentationMode_resetSwitchInProgress() { }, {
key: '_resetSwitchInProgress',
value: function _resetSwitchInProgress() {
if (this.switchInProgress) { if (this.switchInProgress) {
clearTimeout(this.switchInProgress); clearTimeout(this.switchInProgress);
delete this.switchInProgress; delete this.switchInProgress;
} }
}, }
_enter: function PDFPresentationMode_enter() { }, {
key: '_enter',
value: function _enter() {
var _this3 = this;
this.active = true; this.active = true;
this._resetSwitchInProgress(); this._resetSwitchInProgress();
this._notifyStateChange(); this._notifyStateChange();
this.container.classList.add(ACTIVE_SELECTOR); this.container.classList.add(ACTIVE_SELECTOR);
setTimeout(function enterPresentationModeTimeout() { setTimeout(function () {
this.pdfViewer.currentPageNumber = this.args.page; _this3.pdfViewer.currentPageNumber = _this3.args.page;
this.pdfViewer.currentScaleValue = 'page-fit'; _this3.pdfViewer.currentScaleValue = 'page-fit';
}.bind(this), 0); }, 0);
this._addWindowListeners(); this._addWindowListeners();
this._showControls(); this._showControls();
this.contextMenuOpen = false; this.contextMenuOpen = false;
this.container.setAttribute('contextmenu', 'viewerContextMenu'); this.container.setAttribute('contextmenu', 'viewerContextMenu');
window.getSelection().removeAllRanges(); window.getSelection().removeAllRanges();
}, }
_exit: function PDFPresentationMode_exit() { }, {
key: '_exit',
value: function _exit() {
var _this4 = this;
var page = this.pdfViewer.currentPageNumber; var page = this.pdfViewer.currentPageNumber;
this.container.classList.remove(ACTIVE_SELECTOR); this.container.classList.remove(ACTIVE_SELECTOR);
setTimeout(function exitPresentationModeTimeout() { setTimeout(function () {
this.active = false; _this4.active = false;
this._removeFullscreenChangeListeners(); _this4._removeFullscreenChangeListeners();
this._notifyStateChange(); _this4._notifyStateChange();
this.pdfViewer.currentScaleValue = this.args.previousScale; _this4.pdfViewer.currentScaleValue = _this4.args.previousScale;
this.pdfViewer.currentPageNumber = page; _this4.pdfViewer.currentPageNumber = page;
this.args = null; _this4.args = null;
}.bind(this), 0); }, 0);
this._removeWindowListeners(); this._removeWindowListeners();
this._hideControls(); this._hideControls();
this._resetMouseScrollState(); this._resetMouseScrollState();
this.container.removeAttribute('contextmenu'); this.container.removeAttribute('contextmenu');
this.contextMenuOpen = false; this.contextMenuOpen = false;
}, }
_mouseDown: function PDFPresentationMode_mouseDown(evt) { }, {
key: '_mouseDown',
value: function _mouseDown(evt) {
if (this.contextMenuOpen) { if (this.contextMenuOpen) {
this.contextMenuOpen = false; this.contextMenuOpen = false;
evt.preventDefault(); evt.preventDefault();
@ -195,39 +229,49 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
this.pdfViewer.currentPageNumber += evt.shiftKey ? -1 : 1; this.pdfViewer.currentPageNumber += evt.shiftKey ? -1 : 1;
} }
} }
}, }
_contextMenu: function PDFPresentationMode_contextMenu() { }, {
key: '_contextMenu',
value: function _contextMenu() {
this.contextMenuOpen = true; this.contextMenuOpen = true;
}, }
_showControls: function PDFPresentationMode_showControls() { }, {
key: '_showControls',
value: function _showControls() {
var _this5 = this;
if (this.controlsTimeout) { if (this.controlsTimeout) {
clearTimeout(this.controlsTimeout); clearTimeout(this.controlsTimeout);
} else { } else {
this.container.classList.add(CONTROLS_SELECTOR); this.container.classList.add(CONTROLS_SELECTOR);
} }
this.controlsTimeout = setTimeout(function showControlsTimeout() { this.controlsTimeout = setTimeout(function () {
this.container.classList.remove(CONTROLS_SELECTOR); _this5.container.classList.remove(CONTROLS_SELECTOR);
delete this.controlsTimeout; delete _this5.controlsTimeout;
}.bind(this), DELAY_BEFORE_HIDING_CONTROLS); }, DELAY_BEFORE_HIDING_CONTROLS);
}, }
_hideControls: function PDFPresentationMode_hideControls() { }, {
key: '_hideControls',
value: function _hideControls() {
if (!this.controlsTimeout) { if (!this.controlsTimeout) {
return; return;
} }
clearTimeout(this.controlsTimeout); clearTimeout(this.controlsTimeout);
this.container.classList.remove(CONTROLS_SELECTOR); this.container.classList.remove(CONTROLS_SELECTOR);
delete this.controlsTimeout; delete this.controlsTimeout;
}, }
_resetMouseScrollState: function PDFPresentationMode_resetMouseScrollState() { }, {
key: '_resetMouseScrollState',
value: function _resetMouseScrollState() {
this.mouseScrollTimeStamp = 0; this.mouseScrollTimeStamp = 0;
this.mouseScrollDelta = 0; this.mouseScrollDelta = 0;
}, }
_touchSwipe: function PDFPresentationMode_touchSwipe(evt) { }, {
key: '_touchSwipe',
value: function _touchSwipe(evt) {
if (!this.active) { if (!this.active) {
return; return;
} }
var SWIPE_MIN_DISTANCE_THRESHOLD = 50;
var SWIPE_ANGLE_THRESHOLD = Math.PI / 6;
if (evt.touches.length > 1) { if (evt.touches.length > 1) {
this.touchSwipeState = null; this.touchSwipeState = null;
return; return;
@ -269,8 +313,10 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
} }
break; break;
} }
}, }
_addWindowListeners: function PDFPresentationMode_addWindowListeners() { }, {
key: '_addWindowListeners',
value: function _addWindowListeners() {
this.showControlsBind = this._showControls.bind(this); this.showControlsBind = this._showControls.bind(this);
this.mouseDownBind = this._mouseDown.bind(this); this.mouseDownBind = this._mouseDown.bind(this);
this.mouseWheelBind = this._mouseWheel.bind(this); this.mouseWheelBind = this._mouseWheel.bind(this);
@ -285,8 +331,10 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
window.addEventListener('touchstart', this.touchSwipeBind); window.addEventListener('touchstart', this.touchSwipeBind);
window.addEventListener('touchmove', this.touchSwipeBind); window.addEventListener('touchmove', this.touchSwipeBind);
window.addEventListener('touchend', this.touchSwipeBind); window.addEventListener('touchend', this.touchSwipeBind);
}, }
_removeWindowListeners: function PDFPresentationMode_removeWindowListeners() { }, {
key: '_removeWindowListeners',
value: function _removeWindowListeners() {
window.removeEventListener('mousemove', this.showControlsBind); window.removeEventListener('mousemove', this.showControlsBind);
window.removeEventListener('mousedown', this.mouseDownBind); window.removeEventListener('mousedown', this.mouseDownBind);
window.removeEventListener('wheel', this.mouseWheelBind); window.removeEventListener('wheel', this.mouseWheelBind);
@ -301,29 +349,42 @@ var PDFPresentationMode = function PDFPresentationModeClosure() {
delete this.resetMouseScrollStateBind; delete this.resetMouseScrollStateBind;
delete this.contextMenuBind; delete this.contextMenuBind;
delete this.touchSwipeBind; delete this.touchSwipeBind;
}, }
_fullscreenChange: function PDFPresentationMode_fullscreenChange() { }, {
key: '_fullscreenChange',
value: function _fullscreenChange() {
if (this.isFullscreen) { if (this.isFullscreen) {
this._enter(); this._enter();
} else { } else {
this._exit(); this._exit();
} }
}, }
_addFullscreenChangeListeners: function PDFPresentationMode_addFullscreenChangeListeners() { }, {
key: '_addFullscreenChangeListeners',
value: function _addFullscreenChangeListeners() {
this.fullscreenChangeBind = this._fullscreenChange.bind(this); this.fullscreenChangeBind = this._fullscreenChange.bind(this);
window.addEventListener('fullscreenchange', this.fullscreenChangeBind); window.addEventListener('fullscreenchange', this.fullscreenChangeBind);
window.addEventListener('mozfullscreenchange', this.fullscreenChangeBind); window.addEventListener('mozfullscreenchange', this.fullscreenChangeBind);
window.addEventListener('webkitfullscreenchange', this.fullscreenChangeBind); window.addEventListener('webkitfullscreenchange', this.fullscreenChangeBind);
window.addEventListener('MSFullscreenChange', this.fullscreenChangeBind); window.addEventListener('MSFullscreenChange', this.fullscreenChangeBind);
}, }
_removeFullscreenChangeListeners: function PDFPresentationMode_removeFullscreenChangeListeners() { }, {
key: '_removeFullscreenChangeListeners',
value: function _removeFullscreenChangeListeners() {
window.removeEventListener('fullscreenchange', this.fullscreenChangeBind); window.removeEventListener('fullscreenchange', this.fullscreenChangeBind);
window.removeEventListener('mozfullscreenchange', this.fullscreenChangeBind); window.removeEventListener('mozfullscreenchange', this.fullscreenChangeBind);
window.removeEventListener('webkitfullscreenchange', this.fullscreenChangeBind); window.removeEventListener('webkitfullscreenchange', this.fullscreenChangeBind);
window.removeEventListener('MSFullscreenChange', this.fullscreenChangeBind); window.removeEventListener('MSFullscreenChange', this.fullscreenChangeBind);
delete this.fullscreenChangeBind; delete this.fullscreenChangeBind;
} }
}; }, {
key: 'isFullscreen',
get: function get() {
return !!(document.fullscreenElement || document.mozFullScreen || document.webkitIsFullScreen || document.msFullscreenElement);
}
}]);
return PDFPresentationMode; return PDFPresentationMode;
}(); }();
exports.PDFPresentationMode = PDFPresentationMode; exports.PDFPresentationMode = PDFPresentationMode;

67
lib/web/pdf_rendering_queue.js

@ -17,6 +17,11 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CLEANUP_TIMEOUT = 30000; var CLEANUP_TIMEOUT = 30000;
var RenderingStates = { var RenderingStates = {
INITIAL: 0, INITIAL: 0,
@ -24,8 +29,11 @@ var RenderingStates = {
PAUSED: 2, PAUSED: 2,
FINISHED: 3 FINISHED: 3
}; };
var PDFRenderingQueue = function PDFRenderingQueueClosure() {
var PDFRenderingQueue = function () {
function PDFRenderingQueue() { function PDFRenderingQueue() {
_classCallCheck(this, PDFRenderingQueue);
this.pdfViewer = null; this.pdfViewer = null;
this.pdfThumbnailViewer = null; this.pdfThumbnailViewer = null;
this.onIdle = null; this.onIdle = null;
@ -34,17 +42,25 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
this.printing = false; this.printing = false;
this.isThumbnailViewEnabled = false; this.isThumbnailViewEnabled = false;
} }
PDFRenderingQueue.prototype = {
setViewer: function PDFRenderingQueue_setViewer(pdfViewer) { _createClass(PDFRenderingQueue, [{
key: "setViewer",
value: function setViewer(pdfViewer) {
this.pdfViewer = pdfViewer; this.pdfViewer = pdfViewer;
}, }
setThumbnailViewer: function PDFRenderingQueue_setThumbnailViewer(pdfThumbnailViewer) { }, {
key: "setThumbnailViewer",
value: function setThumbnailViewer(pdfThumbnailViewer) {
this.pdfThumbnailViewer = pdfThumbnailViewer; this.pdfThumbnailViewer = pdfThumbnailViewer;
}, }
isHighestPriority: function PDFRenderingQueue_isHighestPriority(view) { }, {
key: "isHighestPriority",
value: function isHighestPriority(view) {
return this.highestPriorityPage === view.renderingId; return this.highestPriorityPage === view.renderingId;
}, }
renderHighestPriority: function PDFRenderingQueue_renderHighestPriority(currentlyVisiblePages) { }, {
key: "renderHighestPriority",
value: function renderHighestPriority(currentlyVisiblePages) {
if (this.idleTimeout) { if (this.idleTimeout) {
clearTimeout(this.idleTimeout); clearTimeout(this.idleTimeout);
this.idleTimeout = null; this.idleTimeout = null;
@ -63,8 +79,10 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
if (this.onIdle) { if (this.onIdle) {
this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT); this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT);
} }
}, }
getHighestPriority: function PDFRenderingQueue_getHighestPriority(visible, views, scrolledDown) { }, {
key: "getHighestPriority",
value: function getHighestPriority(visible, views, scrolledDown) {
var visibleViews = visible.views; var visibleViews = visible.views;
var numVisible = visibleViews.length; var numVisible = visibleViews.length;
if (numVisible === 0) { if (numVisible === 0) {
@ -88,13 +106,18 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
} }
} }
return null; return null;
}, }
isViewFinished: function PDFRenderingQueue_isViewFinished(view) { }, {
key: "isViewFinished",
value: function isViewFinished(view) {
return view.renderingState === RenderingStates.FINISHED; return view.renderingState === RenderingStates.FINISHED;
}, }
renderView: function PDFRenderingQueue_renderView(view) { }, {
var state = view.renderingState; key: "renderView",
switch (state) { value: function renderView(view) {
var _this = this;
switch (view.renderingState) {
case RenderingStates.FINISHED: case RenderingStates.FINISHED:
return false; return false;
case RenderingStates.PAUSED: case RenderingStates.PAUSED:
@ -106,16 +129,18 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
break; break;
case RenderingStates.INITIAL: case RenderingStates.INITIAL:
this.highestPriorityPage = view.renderingId; this.highestPriorityPage = view.renderingId;
var continueRendering = function () { var continueRendering = function continueRendering() {
this.renderHighestPriority(); _this.renderHighestPriority();
}.bind(this); };
view.draw().then(continueRendering, continueRendering); view.draw().then(continueRendering, continueRendering);
break; break;
} }
return true; return true;
} }
}; }]);
return PDFRenderingQueue; return PDFRenderingQueue;
}(); }();
exports.RenderingStates = RenderingStates; exports.RenderingStates = RenderingStates;
exports.PDFRenderingQueue = PDFRenderingQueue; exports.PDFRenderingQueue = PDFRenderingQueue;

2
lib/web/pdfjs.js

@ -20,7 +20,7 @@
if (typeof window !== 'undefined' && window['pdfjs-dist/build/pdf']) { if (typeof window !== 'undefined' && window['pdfjs-dist/build/pdf']) {
pdfjsLib = window['pdfjs-dist/build/pdf']; pdfjsLib = window['pdfjs-dist/build/pdf'];
} else if (typeof require === 'function') { } else if (typeof require === 'function') {
pdfjsLib = require('../build/pdf.js'); pdfjsLib = require('../pdf.js');
} else { } else {
throw new Error('Neither `require` nor `window` found'); throw new Error('Neither `require` nor `window` found');
} }

4
lib/web/ui_utils.js

@ -34,7 +34,7 @@ var RendererType = {
CANVAS: 'canvas', CANVAS: 'canvas',
SVG: 'svg' SVG: 'svg'
}; };
var mozL10n = document.mozL10n || document.webL10n; var mozL10n = typeof document !== 'undefined' ? document.mozL10n || document.webL10n : undefined;
_pdfjs.PDFJS.disableFullscreen = _pdfjs.PDFJS.disableFullscreen === undefined ? false : _pdfjs.PDFJS.disableFullscreen; _pdfjs.PDFJS.disableFullscreen = _pdfjs.PDFJS.disableFullscreen === undefined ? false : _pdfjs.PDFJS.disableFullscreen;
_pdfjs.PDFJS.useOnlyCssZoom = _pdfjs.PDFJS.useOnlyCssZoom === undefined ? false : _pdfjs.PDFJS.useOnlyCssZoom; _pdfjs.PDFJS.useOnlyCssZoom = _pdfjs.PDFJS.useOnlyCssZoom === undefined ? false : _pdfjs.PDFJS.useOnlyCssZoom;
_pdfjs.PDFJS.maxCanvasPixels = _pdfjs.PDFJS.maxCanvasPixels === undefined ? 16777216 : _pdfjs.PDFJS.maxCanvasPixels; _pdfjs.PDFJS.maxCanvasPixels = _pdfjs.PDFJS.maxCanvasPixels === undefined ? 16777216 : _pdfjs.PDFJS.maxCanvasPixels;
@ -42,7 +42,7 @@ _pdfjs.PDFJS.disableHistory = _pdfjs.PDFJS.disableHistory === undefined ? false
_pdfjs.PDFJS.disableTextLayer = _pdfjs.PDFJS.disableTextLayer === undefined ? false : _pdfjs.PDFJS.disableTextLayer; _pdfjs.PDFJS.disableTextLayer = _pdfjs.PDFJS.disableTextLayer === undefined ? false : _pdfjs.PDFJS.disableTextLayer;
_pdfjs.PDFJS.ignoreCurrentPositionOnZoom = _pdfjs.PDFJS.ignoreCurrentPositionOnZoom === undefined ? false : _pdfjs.PDFJS.ignoreCurrentPositionOnZoom; _pdfjs.PDFJS.ignoreCurrentPositionOnZoom = _pdfjs.PDFJS.ignoreCurrentPositionOnZoom === undefined ? false : _pdfjs.PDFJS.ignoreCurrentPositionOnZoom;
{ {
_pdfjs.PDFJS.locale = _pdfjs.PDFJS.locale === undefined ? navigator.language : _pdfjs.PDFJS.locale; _pdfjs.PDFJS.locale = _pdfjs.PDFJS.locale === undefined && typeof navigator !== 'undefined' ? navigator.language : _pdfjs.PDFJS.locale;
} }
function getOutputScale(ctx) { function getOutputScale(ctx) {
var devicePixelRatio = window.devicePixelRatio || 1; var devicePixelRatio = window.devicePixelRatio || 1;

124
lib/web/view_history.js

@ -17,45 +17,61 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var DEFAULT_VIEW_HISTORY_CACHE_SIZE = 20; var DEFAULT_VIEW_HISTORY_CACHE_SIZE = 20;
var ViewHistory = function ViewHistoryClosure() {
function ViewHistory(fingerprint, cacheSize) { var ViewHistory = function () {
function ViewHistory(fingerprint) {
var _this = this;
var cacheSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_VIEW_HISTORY_CACHE_SIZE;
_classCallCheck(this, ViewHistory);
this.fingerprint = fingerprint; this.fingerprint = fingerprint;
this.cacheSize = cacheSize || DEFAULT_VIEW_HISTORY_CACHE_SIZE; this.cacheSize = cacheSize;
this.isInitializedPromiseResolved = false; this._initializedPromise = this._readFromStorage().then(function (databaseStr) {
this.initializedPromise = this._readFromStorage().then(function (databaseStr) {
this.isInitializedPromiseResolved = true;
var database = JSON.parse(databaseStr || '{}'); var database = JSON.parse(databaseStr || '{}');
if (!('files' in database)) { if (!('files' in database)) {
database.files = []; database.files = [];
} }
if (database.files.length >= this.cacheSize) { if (database.files.length >= _this.cacheSize) {
database.files.shift(); database.files.shift();
} }
var index; var index;
for (var i = 0, length = database.files.length; i < length; i++) { for (var i = 0, length = database.files.length; i < length; i++) {
var branch = database.files[i]; var branch = database.files[i];
if (branch.fingerprint === this.fingerprint) { if (branch.fingerprint === _this.fingerprint) {
index = i; index = i;
break; break;
} }
} }
if (typeof index !== 'number') { if (typeof index !== 'number') {
index = database.files.push({ fingerprint: this.fingerprint }) - 1; index = database.files.push({ fingerprint: _this.fingerprint }) - 1;
} }
this.file = database.files[index]; _this.file = database.files[index];
this.database = database; _this.database = database;
}.bind(this)); });
} }
ViewHistory.prototype = {
_writeToStorage: function ViewHistory_writeToStorage() { _createClass(ViewHistory, [{
key: '_writeToStorage',
value: function _writeToStorage() {
var _this2 = this;
return new Promise(function (resolve) { return new Promise(function (resolve) {
var databaseStr = JSON.stringify(this.database); var databaseStr = JSON.stringify(_this2.database);
localStorage.setItem('pdfjs.history', databaseStr); localStorage.setItem('pdfjs.history', databaseStr);
resolve(); resolve();
}.bind(this)); });
}, }
_readFromStorage: function ViewHistory_readFromStorage() { }, {
key: '_readFromStorage',
value: function _readFromStorage() {
return new Promise(function (resolve) { return new Promise(function (resolve) {
var value = localStorage.getItem('pdfjs.history'); var value = localStorage.getItem('pdfjs.history');
if (!value) { if (!value) {
@ -73,30 +89,56 @@ var ViewHistory = function ViewHistoryClosure() {
} }
resolve(value); resolve(value);
}); });
},
set: function ViewHistory_set(name, val) {
if (!this.isInitializedPromiseResolved) {
return;
}
this.file[name] = val;
return this._writeToStorage();
},
setMultiple: function ViewHistory_setMultiple(properties) {
if (!this.isInitializedPromiseResolved) {
return;
}
for (var name in properties) {
this.file[name] = properties[name];
}
return this._writeToStorage();
},
get: function ViewHistory_get(name, defaultValue) {
if (!this.isInitializedPromiseResolved) {
return defaultValue;
}
return this.file[name] || defaultValue;
} }
}; }, {
key: 'set',
value: function set(name, val) {
var _this3 = this;
return this._initializedPromise.then(function () {
_this3.file[name] = val;
return _this3._writeToStorage();
});
}
}, {
key: 'setMultiple',
value: function setMultiple(properties) {
var _this4 = this;
return this._initializedPromise.then(function () {
for (var name in properties) {
_this4.file[name] = properties[name];
}
return _this4._writeToStorage();
});
}
}, {
key: 'get',
value: function get(name, defaultValue) {
var _this5 = this;
return this._initializedPromise.then(function () {
var val = _this5.file[name];
return val !== undefined ? val : defaultValue;
});
}
}, {
key: 'getMultiple',
value: function getMultiple(properties) {
var _this6 = this;
return this._initializedPromise.then(function () {
var values = Object.create(null);
for (var name in properties) {
var val = _this6.file[name];
values[name] = val !== undefined ? val : properties[name];
}
return values;
});
}
}]);
return ViewHistory; return ViewHistory;
}(); }();
exports.ViewHistory = ViewHistory; exports.ViewHistory = ViewHistory;

2
package.json

@ -1,6 +1,6 @@
{ {
"name": "pdfjs-dist", "name": "pdfjs-dist",
"version": "1.8.254", "version": "1.8.271",
"main": "build/pdf.js", "main": "build/pdf.js",
"description": "Generic build of Mozilla's PDF.js library.", "description": "Generic build of Mozilla's PDF.js library.",
"keywords": [ "keywords": [

8
web/compatibility.js

@ -227,6 +227,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this; return this;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -234,6 +235,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
get: function get() { get: function get() {
return this.length; return this.length;
}, },
enumerable: false, enumerable: false,
configurable: true configurable: true
}); });
@ -422,6 +424,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return dataset; return dataset;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -482,6 +485,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
}); });
return classList; return classList;
}, },
enumerable: true enumerable: true
}); });
})(); })();
@ -682,6 +686,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
var scripts = document.getElementsByTagName('script'); var scripts = document.getElementsByTagName('script');
return scripts[scripts.length - 1]; return scripts[scripts.length - 1];
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -703,6 +708,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
typeProperty.set.call(this, value === 'number' ? 'text' : value); typeProperty.set.call(this, value === 'number' ? 'text' : value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -725,6 +731,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
set: function set(value) { set: function set(value) {
readyStateProto.set.call(this, value); readyStateProto.set.call(this, value);
}, },
enumerable: true, enumerable: true,
configurable: true configurable: true
}); });
@ -1458,6 +1465,7 @@ if (typeof PDFJS === 'undefined' || !PDFJS.compatibilityChecked) {
toString: function toString() { toString: function toString() {
return this.href; return this.href;
}, },
get href() { get href() {
if (this._isInvalid) { if (this._isInvalid) {
return this._url; return this._url;

161
web/pdf_viewer.js

@ -139,7 +139,7 @@ var RendererType = {
CANVAS: 'canvas', CANVAS: 'canvas',
SVG: 'svg' SVG: 'svg'
}; };
var mozL10n = document.mozL10n || document.webL10n; var mozL10n = typeof document !== 'undefined' ? document.mozL10n || document.webL10n : undefined;
_pdfjs.PDFJS.disableFullscreen = _pdfjs.PDFJS.disableFullscreen === undefined ? false : _pdfjs.PDFJS.disableFullscreen; _pdfjs.PDFJS.disableFullscreen = _pdfjs.PDFJS.disableFullscreen === undefined ? false : _pdfjs.PDFJS.disableFullscreen;
_pdfjs.PDFJS.useOnlyCssZoom = _pdfjs.PDFJS.useOnlyCssZoom === undefined ? false : _pdfjs.PDFJS.useOnlyCssZoom; _pdfjs.PDFJS.useOnlyCssZoom = _pdfjs.PDFJS.useOnlyCssZoom === undefined ? false : _pdfjs.PDFJS.useOnlyCssZoom;
_pdfjs.PDFJS.maxCanvasPixels = _pdfjs.PDFJS.maxCanvasPixels === undefined ? 16777216 : _pdfjs.PDFJS.maxCanvasPixels; _pdfjs.PDFJS.maxCanvasPixels = _pdfjs.PDFJS.maxCanvasPixels === undefined ? 16777216 : _pdfjs.PDFJS.maxCanvasPixels;
@ -147,7 +147,7 @@ _pdfjs.PDFJS.disableHistory = _pdfjs.PDFJS.disableHistory === undefined ? false
_pdfjs.PDFJS.disableTextLayer = _pdfjs.PDFJS.disableTextLayer === undefined ? false : _pdfjs.PDFJS.disableTextLayer; _pdfjs.PDFJS.disableTextLayer = _pdfjs.PDFJS.disableTextLayer === undefined ? false : _pdfjs.PDFJS.disableTextLayer;
_pdfjs.PDFJS.ignoreCurrentPositionOnZoom = _pdfjs.PDFJS.ignoreCurrentPositionOnZoom === undefined ? false : _pdfjs.PDFJS.ignoreCurrentPositionOnZoom; _pdfjs.PDFJS.ignoreCurrentPositionOnZoom = _pdfjs.PDFJS.ignoreCurrentPositionOnZoom === undefined ? false : _pdfjs.PDFJS.ignoreCurrentPositionOnZoom;
{ {
_pdfjs.PDFJS.locale = _pdfjs.PDFJS.locale === undefined ? navigator.language : _pdfjs.PDFJS.locale; _pdfjs.PDFJS.locale = _pdfjs.PDFJS.locale === undefined && typeof navigator !== 'undefined' ? navigator.language : _pdfjs.PDFJS.locale;
} }
function getOutputScale(ctx) { function getOutputScale(ctx) {
var devicePixelRatio = window.devicePixelRatio || 1; var devicePixelRatio = window.devicePixelRatio || 1;
@ -996,14 +996,20 @@ Object.defineProperty(exports, "__esModule", {
}); });
exports.DefaultAnnotationLayerFactory = exports.AnnotationLayerBuilder = undefined; exports.DefaultAnnotationLayerFactory = exports.AnnotationLayerBuilder = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _pdfjs = __w_pdfjs_require__(0); var _pdfjs = __w_pdfjs_require__(0);
var _ui_utils = __w_pdfjs_require__(1); var _ui_utils = __w_pdfjs_require__(1);
var _pdf_link_service = __w_pdfjs_require__(3); var _pdf_link_service = __w_pdfjs_require__(3);
var AnnotationLayerBuilder = function AnnotationLayerBuilderClosure() { function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var AnnotationLayerBuilder = function () {
function AnnotationLayerBuilder(options) { function AnnotationLayerBuilder(options) {
_classCallCheck(this, AnnotationLayerBuilder);
this.pageDiv = options.pageDiv; this.pageDiv = options.pageDiv;
this.pdfPage = options.pdfPage; this.pdfPage = options.pdfPage;
this.renderInteractiveForms = options.renderInteractiveForms; this.renderInteractiveForms = options.renderInteractiveForms;
@ -1011,58 +1017,76 @@ var AnnotationLayerBuilder = function AnnotationLayerBuilderClosure() {
this.downloadManager = options.downloadManager; this.downloadManager = options.downloadManager;
this.div = null; this.div = null;
} }
AnnotationLayerBuilder.prototype = {
render: function AnnotationLayerBuilder_render(viewport, intent) { _createClass(AnnotationLayerBuilder, [{
var self = this; key: 'render',
var parameters = { intent: intent === undefined ? 'display' : intent }; value: function render(viewport) {
this.pdfPage.getAnnotations(parameters).then(function (annotations) { var _this = this;
viewport = viewport.clone({ dontFlip: true });
parameters = { var intent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'display';
viewport: viewport,
div: self.div, this.pdfPage.getAnnotations({ intent: intent }).then(function (annotations) {
var parameters = {
viewport: viewport.clone({ dontFlip: true }),
div: _this.div,
annotations: annotations, annotations: annotations,
page: self.pdfPage, page: _this.pdfPage,
renderInteractiveForms: self.renderInteractiveForms, renderInteractiveForms: _this.renderInteractiveForms,
linkService: self.linkService, linkService: _this.linkService,
downloadManager: self.downloadManager downloadManager: _this.downloadManager
}; };
if (self.div) { if (_this.div) {
_pdfjs.AnnotationLayer.update(parameters); _pdfjs.AnnotationLayer.update(parameters);
} else { } else {
if (annotations.length === 0) { if (annotations.length === 0) {
return; return;
} }
self.div = document.createElement('div'); _this.div = document.createElement('div');
self.div.className = 'annotationLayer'; _this.div.className = 'annotationLayer';
self.pageDiv.appendChild(self.div); _this.pageDiv.appendChild(_this.div);
parameters.div = self.div; parameters.div = _this.div;
_pdfjs.AnnotationLayer.render(parameters); _pdfjs.AnnotationLayer.render(parameters);
if (typeof _ui_utils.mozL10n !== 'undefined') { if (typeof _ui_utils.mozL10n !== 'undefined') {
_ui_utils.mozL10n.translate(self.div); _ui_utils.mozL10n.translate(_this.div);
} }
} }
}); });
}, }
hide: function AnnotationLayerBuilder_hide() { }, {
key: 'hide',
value: function hide() {
if (!this.div) { if (!this.div) {
return; return;
} }
this.div.setAttribute('hidden', 'true'); this.div.setAttribute('hidden', 'true');
} }
}; }]);
return AnnotationLayerBuilder; return AnnotationLayerBuilder;
}(); }();
function DefaultAnnotationLayerFactory() {}
DefaultAnnotationLayerFactory.prototype = { var DefaultAnnotationLayerFactory = function () {
createAnnotationLayerBuilder: function createAnnotationLayerBuilder(pageDiv, pdfPage, renderInteractiveForms) { function DefaultAnnotationLayerFactory() {
return new AnnotationLayerBuilder({ _classCallCheck(this, DefaultAnnotationLayerFactory);
pageDiv: pageDiv,
pdfPage: pdfPage,
renderInteractiveForms: renderInteractiveForms,
linkService: new _pdf_link_service.SimpleLinkService()
});
} }
};
_createClass(DefaultAnnotationLayerFactory, [{
key: 'createAnnotationLayerBuilder',
value: function createAnnotationLayerBuilder(pageDiv, pdfPage) {
var renderInteractiveForms = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
return new AnnotationLayerBuilder({
pageDiv: pageDiv,
pdfPage: pdfPage,
renderInteractiveForms: renderInteractiveForms,
linkService: new _pdf_link_service.SimpleLinkService()
});
}
}]);
return DefaultAnnotationLayerFactory;
}();
exports.AnnotationLayerBuilder = AnnotationLayerBuilder; exports.AnnotationLayerBuilder = AnnotationLayerBuilder;
exports.DefaultAnnotationLayerFactory = DefaultAnnotationLayerFactory; exports.DefaultAnnotationLayerFactory = DefaultAnnotationLayerFactory;
@ -1846,6 +1870,11 @@ exports.DefaultTextLayerFactory = DefaultTextLayerFactory;
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var CLEANUP_TIMEOUT = 30000; var CLEANUP_TIMEOUT = 30000;
var RenderingStates = { var RenderingStates = {
INITIAL: 0, INITIAL: 0,
@ -1853,8 +1882,11 @@ var RenderingStates = {
PAUSED: 2, PAUSED: 2,
FINISHED: 3 FINISHED: 3
}; };
var PDFRenderingQueue = function PDFRenderingQueueClosure() {
var PDFRenderingQueue = function () {
function PDFRenderingQueue() { function PDFRenderingQueue() {
_classCallCheck(this, PDFRenderingQueue);
this.pdfViewer = null; this.pdfViewer = null;
this.pdfThumbnailViewer = null; this.pdfThumbnailViewer = null;
this.onIdle = null; this.onIdle = null;
@ -1863,17 +1895,25 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
this.printing = false; this.printing = false;
this.isThumbnailViewEnabled = false; this.isThumbnailViewEnabled = false;
} }
PDFRenderingQueue.prototype = {
setViewer: function PDFRenderingQueue_setViewer(pdfViewer) { _createClass(PDFRenderingQueue, [{
key: "setViewer",
value: function setViewer(pdfViewer) {
this.pdfViewer = pdfViewer; this.pdfViewer = pdfViewer;
}, }
setThumbnailViewer: function PDFRenderingQueue_setThumbnailViewer(pdfThumbnailViewer) { }, {
key: "setThumbnailViewer",
value: function setThumbnailViewer(pdfThumbnailViewer) {
this.pdfThumbnailViewer = pdfThumbnailViewer; this.pdfThumbnailViewer = pdfThumbnailViewer;
}, }
isHighestPriority: function PDFRenderingQueue_isHighestPriority(view) { }, {
key: "isHighestPriority",
value: function isHighestPriority(view) {
return this.highestPriorityPage === view.renderingId; return this.highestPriorityPage === view.renderingId;
}, }
renderHighestPriority: function PDFRenderingQueue_renderHighestPriority(currentlyVisiblePages) { }, {
key: "renderHighestPriority",
value: function renderHighestPriority(currentlyVisiblePages) {
if (this.idleTimeout) { if (this.idleTimeout) {
clearTimeout(this.idleTimeout); clearTimeout(this.idleTimeout);
this.idleTimeout = null; this.idleTimeout = null;
@ -1892,8 +1932,10 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
if (this.onIdle) { if (this.onIdle) {
this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT); this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT);
} }
}, }
getHighestPriority: function PDFRenderingQueue_getHighestPriority(visible, views, scrolledDown) { }, {
key: "getHighestPriority",
value: function getHighestPriority(visible, views, scrolledDown) {
var visibleViews = visible.views; var visibleViews = visible.views;
var numVisible = visibleViews.length; var numVisible = visibleViews.length;
if (numVisible === 0) { if (numVisible === 0) {
@ -1917,13 +1959,18 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
} }
} }
return null; return null;
}, }
isViewFinished: function PDFRenderingQueue_isViewFinished(view) { }, {
key: "isViewFinished",
value: function isViewFinished(view) {
return view.renderingState === RenderingStates.FINISHED; return view.renderingState === RenderingStates.FINISHED;
}, }
renderView: function PDFRenderingQueue_renderView(view) { }, {
var state = view.renderingState; key: "renderView",
switch (state) { value: function renderView(view) {
var _this = this;
switch (view.renderingState) {
case RenderingStates.FINISHED: case RenderingStates.FINISHED:
return false; return false;
case RenderingStates.PAUSED: case RenderingStates.PAUSED:
@ -1935,17 +1982,19 @@ var PDFRenderingQueue = function PDFRenderingQueueClosure() {
break; break;
case RenderingStates.INITIAL: case RenderingStates.INITIAL:
this.highestPriorityPage = view.renderingId; this.highestPriorityPage = view.renderingId;
var continueRendering = function () { var continueRendering = function continueRendering() {
this.renderHighestPriority(); _this.renderHighestPriority();
}.bind(this); };
view.draw().then(continueRendering, continueRendering); view.draw().then(continueRendering, continueRendering);
break; break;
} }
return true; return true;
} }
}; }]);
return PDFRenderingQueue; return PDFRenderingQueue;
}(); }();
exports.RenderingStates = RenderingStates; exports.RenderingStates = RenderingStates;
exports.PDFRenderingQueue = PDFRenderingQueue; exports.PDFRenderingQueue = PDFRenderingQueue;

Loading…
Cancel
Save