Merge pull request #9587 from Snuffleupagus/cursorToolOnLoad

Move the `cursorToolOnLoad` preference handling into `AppOptions` (PR 9493 follow-up)
This commit is contained in:
Tim van der Meij 2018-03-19 23:51:42 +01:00 committed by GitHub
commit 3bfc797bc7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 19 deletions

View File

@ -179,6 +179,9 @@ let PDFViewerApplication = {
preferences.get('sidebarViewOnLoad').then(function resolved(value) {
AppOptions.set('sidebarViewOnLoad', value);
}),
preferences.get('cursorToolOnLoad').then(function resolved(value) {
AppOptions.set('cursorToolOnLoad', value);
}),
preferences.get('pdfBugEnabled').then(function resolved(value) {
AppOptions.set('pdfBugEnabled', value);
}),
@ -434,7 +437,7 @@ let PDFViewerApplication = {
this.pdfCursorTools = new PDFCursorTools({
container,
eventBus,
preferences: this.preferences,
cursorToolOnLoad: AppOptions.get('cursorToolOnLoad'),
});
this.toolbar = new Toolbar(appConfig.toolbar, container, eventBus,

View File

@ -28,6 +28,11 @@ const OptionKind = {
* compare with the format of `default_preferences.json`.
*/
const defaultOptions = {
cursorToolOnLoad: {
/** @type {number} */
value: 0,
kind: OptionKind.VIEWER,
},
defaultUrl: {
/** @type {string} */
value: 'compressed.tracemonkey-pldi-09.pdf',

View File

@ -25,15 +25,16 @@ const CursorTool = {
* @typedef {Object} PDFCursorToolsOptions
* @property {HTMLDivElement} container - The document container.
* @property {EventBus} eventBus - The application event bus.
* @property {BasePreferences} preferences - Object for reading/writing
* persistent settings.
* @property {number} cursorToolOnLoad - (optional) The cursor tool that will be
* enabled on load; the constants from {CursorTool} should be used.
* The default value is `CursorTool.SELECT`.
*/
class PDFCursorTools {
/**
* @param {PDFCursorToolsOptions} options
*/
constructor({ container, eventBus, preferences, }) {
constructor({ container, eventBus, cursorToolOnLoad = CursorTool.SELECT, }) {
this.container = container;
this.eventBus = eventBus;
@ -46,9 +47,9 @@ class PDFCursorTools {
this._addEventListeners();
preferences.get('cursorToolOnLoad').then((value) => {
this.switchTool(value);
}).catch(() => { });
Promise.resolve().then(() => {
this.switchTool(cursorToolOnLoad);
});
}
/**

View File

@ -491,16 +491,6 @@ let animationStarted = new Promise(function (resolve) {
window.requestAnimationFrame(resolve);
});
/**
* (deprecated) External localization service.
*/
let mozL10n;
/**
* (deprecated) Promise that is resolved when UI localization is finished.
*/
let localized = Promise.resolve();
/**
* Simple event bus for an application. Listeners are attached using the
* `on` and `off` methods. To raise an event, the `dispatch` method shall be
@ -636,7 +626,6 @@ export {
PresentationModeState,
RendererType,
TextLayerMode,
mozL10n,
NullL10n,
EventBus,
ProgressBar,
@ -652,7 +641,6 @@ export {
binarySearchFirstItem,
normalizeWheelEventDelta,
animationStarted,
localized,
WaitOnType,
waitOnEventOrTimeout,
};