Browse Source

Merge pull request #7592 from timvandermeij/revert

Revert the commits from pull request #7586 for causing addon issues
Tim van der Meij 9 years ago committed by GitHub
parent
commit
31f6180a08
  1. 4
      extensions/chromium/preferences_schema.json
  2. 133
      web/app.js
  3. 3
      web/default_preferences.json
  4. 4
      web/text_layer_builder.js

4
extensions/chromium/preferences_schema.json

@ -94,10 +94,6 @@
"type": "boolean", "type": "boolean",
"description": "Whether to prevent the extension from reporting the extension and browser version to the extension developers.", "description": "Whether to prevent the extension from reporting the extension and browser version to the extension developers.",
"default": false "default": false
},
"enhanceTextSelection": {
"type": "boolean",
"default": false
} }
} }
} }

133
web/app.js

@ -101,6 +101,7 @@ var SCALE_SELECT_CONTAINER_PADDING = 8;
var SCALE_SELECT_PADDING = 22; var SCALE_SELECT_PADDING = 22;
var PAGE_NUMBER_LOADING_INDICATOR = 'visiblePageIsLoading'; var PAGE_NUMBER_LOADING_INDICATOR = 'visiblePageIsLoading';
var DISABLE_AUTO_FETCH_LOADING_BAR_TIMEOUT = 5000; var DISABLE_AUTO_FETCH_LOADING_BAR_TIMEOUT = 5000;
var ENHANCE_TEXT_SELECTION = false;
function configure(PDFJS) { function configure(PDFJS) {
PDFJS.imageResourcesPath = './images/'; PDFJS.imageResourcesPath = './images/';
@ -176,79 +177,12 @@ var PDFViewerApplication = {
preferencePdfBugEnabled: false, preferencePdfBugEnabled: false,
preferenceShowPreviousViewOnLoad: true, preferenceShowPreviousViewOnLoad: true,
preferenceDefaultZoomValue: '', preferenceDefaultZoomValue: '',
preferenceEnhanceTextSelection: false,
isViewerEmbedded: (window.parent !== window), isViewerEmbedded: (window.parent !== window),
url: '', url: '',
externalServices: DefaultExernalServices, externalServices: DefaultExernalServices,
// called once when the document is loaded // called once when the document is loaded
initialize: function pdfViewInitialize(appConfig) { initialize: function pdfViewInitialize(appConfig) {
var self = this;
var PDFJS = pdfjsLib.PDFJS;
Preferences.initialize();
this.preferences = Preferences;
// Fetch the `Preferences` first, so that they can be used below when the
// various viewer components are initialized.
var preferencesPromise = Promise.all([
Preferences.get('enableWebGL').then(function resolved(value) {
PDFJS.disableWebGL = !value;
}),
Preferences.get('sidebarViewOnLoad').then(function resolved(value) {
self.preferenceSidebarViewOnLoad = value;
}),
Preferences.get('pdfBugEnabled').then(function resolved(value) {
self.preferencePdfBugEnabled = value;
}),
Preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
self.preferenceShowPreviousViewOnLoad = value;
}),
Preferences.get('defaultZoomValue').then(function resolved(value) {
self.preferenceDefaultZoomValue = value;
}),
Preferences.get('enhanceTextSelection').then(function resolved(value) {
self.preferenceEnhanceTextSelection = value;
}),
Preferences.get('disableTextLayer').then(function resolved(value) {
if (PDFJS.disableTextLayer === true) {
return;
}
PDFJS.disableTextLayer = value;
}),
Preferences.get('disableRange').then(function resolved(value) {
if (PDFJS.disableRange === true) {
return;
}
PDFJS.disableRange = value;
}),
Preferences.get('disableStream').then(function resolved(value) {
if (PDFJS.disableStream === true) {
return;
}
PDFJS.disableStream = value;
}),
Preferences.get('disableAutoFetch').then(function resolved(value) {
PDFJS.disableAutoFetch = value;
}),
Preferences.get('disableFontFace').then(function resolved(value) {
if (PDFJS.disableFontFace === true) {
return;
}
PDFJS.disableFontFace = value;
}),
Preferences.get('useOnlyCssZoom').then(function resolved(value) {
PDFJS.useOnlyCssZoom = value;
}),
Preferences.get('externalLinkTarget').then(function resolved(value) {
if (PDFJS.isExternalLinkTargetSet()) {
return;
}
PDFJS.externalLinkTarget = value;
}),
// TODO move more preferences and other async stuff here
]).catch(function (reason) { });
var initializedPromise = preferencesPromise.then(function () {
configure(pdfjsLib.PDFJS); configure(pdfjsLib.PDFJS);
this.appConfig = appConfig; this.appConfig = appConfig;
@ -277,7 +211,7 @@ var PDFViewerApplication = {
renderingQueue: pdfRenderingQueue, renderingQueue: pdfRenderingQueue,
linkService: pdfLinkService, linkService: pdfLinkService,
downloadManager: downloadManager, downloadManager: downloadManager,
enhanceTextSelection: this.preferenceEnhanceTextSelection, enhanceTextSelection: ENHANCE_TEXT_SELECTION,
}); });
pdfRenderingQueue.setViewer(this.pdfViewer); pdfRenderingQueue.setViewer(this.pdfViewer);
pdfLinkService.setViewer(this.pdfViewer); pdfLinkService.setViewer(this.pdfViewer);
@ -290,6 +224,9 @@ var PDFViewerApplication = {
}); });
pdfRenderingQueue.setThumbnailViewer(this.pdfThumbnailViewer); pdfRenderingQueue.setThumbnailViewer(this.pdfThumbnailViewer);
Preferences.initialize();
this.preferences = Preferences;
this.pdfHistory = new PDFHistory({ this.pdfHistory = new PDFHistory({
linkService: pdfLinkService, linkService: pdfLinkService,
eventBus: this.eventBus eventBus: this.eventBus
@ -305,8 +242,7 @@ var PDFViewerApplication = {
} }
this.findBar.updateResultsCount(matchCount); this.findBar.updateResultsCount(matchCount);
}.bind(this); }.bind(this);
this.findController.onUpdateState = function (state, previous, this.findController.onUpdateState = function (state, previous, matchCount) {
matchCount) {
if (this.supportsIntegratedFind) { if (this.supportsIntegratedFind) {
this.externalServices.updateFindControlState( this.externalServices.updateFindControlState(
{result: state, findPrevious: previous}); {result: state, findPrevious: previous});
@ -369,7 +305,62 @@ var PDFViewerApplication = {
this.pdfSidebar = new PDFSidebar(sidebarConfig); this.pdfSidebar = new PDFSidebar(sidebarConfig);
this.pdfSidebar.onToggled = this.forceRendering.bind(this); this.pdfSidebar.onToggled = this.forceRendering.bind(this);
}.bind(this)); var self = this;
var PDFJS = pdfjsLib.PDFJS;
var initializedPromise = Promise.all([
Preferences.get('enableWebGL').then(function resolved(value) {
PDFJS.disableWebGL = !value;
}),
Preferences.get('sidebarViewOnLoad').then(function resolved(value) {
self.preferenceSidebarViewOnLoad = value;
}),
Preferences.get('pdfBugEnabled').then(function resolved(value) {
self.preferencePdfBugEnabled = value;
}),
Preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
self.preferenceShowPreviousViewOnLoad = value;
}),
Preferences.get('defaultZoomValue').then(function resolved(value) {
self.preferenceDefaultZoomValue = value;
}),
Preferences.get('disableTextLayer').then(function resolved(value) {
if (PDFJS.disableTextLayer === true) {
return;
}
PDFJS.disableTextLayer = value;
}),
Preferences.get('disableRange').then(function resolved(value) {
if (PDFJS.disableRange === true) {
return;
}
PDFJS.disableRange = value;
}),
Preferences.get('disableStream').then(function resolved(value) {
if (PDFJS.disableStream === true) {
return;
}
PDFJS.disableStream = value;
}),
Preferences.get('disableAutoFetch').then(function resolved(value) {
PDFJS.disableAutoFetch = value;
}),
Preferences.get('disableFontFace').then(function resolved(value) {
if (PDFJS.disableFontFace === true) {
return;
}
PDFJS.disableFontFace = value;
}),
Preferences.get('useOnlyCssZoom').then(function resolved(value) {
PDFJS.useOnlyCssZoom = value;
}),
Preferences.get('externalLinkTarget').then(function resolved(value) {
if (PDFJS.isExternalLinkTargetSet()) {
return;
}
PDFJS.externalLinkTarget = value;
}),
// TODO move more preferences and other async stuff here
]).catch(function (reason) { });
return initializedPromise.then(function () { return initializedPromise.then(function () {
if (self.isViewerEmbedded && !PDFJS.isExternalLinkTargetSet()) { if (self.isViewerEmbedded && !PDFJS.isExternalLinkTargetSet()) {

3
web/default_preferences.json

@ -11,6 +11,5 @@
"disableFontFace": false, "disableFontFace": false,
"disableTextLayer": false, "disableTextLayer": false,
"useOnlyCssZoom": false, "useOnlyCssZoom": false,
"externalLinkTarget": 0, "externalLinkTarget": 0
"enhanceTextSelection": false
} }

4
web/text_layer_builder.js

@ -36,7 +36,7 @@
* @property {PageViewport} viewport - The viewport of the text layer. * @property {PageViewport} viewport - The viewport of the text layer.
* @property {PDFFindController} findController * @property {PDFFindController} findController
* @property {boolean} enhanceTextSelection - Option to turn on improved * @property {boolean} enhanceTextSelection - Option to turn on improved
* text selection. The default value is `false`. * text selection.
*/ */
/** /**
@ -59,7 +59,7 @@ var TextLayerBuilder = (function TextLayerBuilderClosure() {
this.textDivs = []; this.textDivs = [];
this.findController = options.findController || null; this.findController = options.findController || null;
this.textLayerRenderTask = null; this.textLayerRenderTask = null;
this.enhanceTextSelection = options.enhanceTextSelection || false; this.enhanceTextSelection = options.enhanceTextSelection;
this._bindMouse(); this._bindMouse();
} }

Loading…
Cancel
Save