From 647fa74793211737680c4c5d111b92efaafac42f Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Mon, 16 Jul 2018 13:40:51 +0200 Subject: [PATCH] Change `waitOnEventOrTimeout`, in web/ui_utils.js, to return a regular `Promise` and remove the `createPromiseCapability` import *Another small piece of clean-up of code I've previously written; follow-up to PR 8775.* Importing `createPromiseCapability`, and then using it in just *one* spot, seems unnecessary since the `waitOnEventOrTimeout` function may just as well return a regular `Promise` directly. --- web/ui_utils.js | 52 +++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 28 deletions(-) diff --git a/web/ui_utils.js b/web/ui_utils.js index c067dd420..7c615f2f8 100644 --- a/web/ui_utils.js +++ b/web/ui_utils.js @@ -13,8 +13,6 @@ * limitations under the License. */ -import { createPromiseCapability } from 'pdfjs-lib'; - const CSS_UNITS = 96.0 / 72.0; const DEFAULT_SCALE_VALUE = 'auto'; const DEFAULT_SCALE = 1.0; @@ -634,37 +632,35 @@ const WaitOnType = { * @returns {Promise} A promise that is resolved with a {WaitOnType} value. */ function waitOnEventOrTimeout({ target, name, delay = 0, }) { - if (typeof target !== 'object' || !(name && typeof name === 'string') || - !(Number.isInteger(delay) && delay >= 0)) { - return Promise.reject( - new Error('waitOnEventOrTimeout - invalid parameters.')); - } - let capability = createPromiseCapability(); + return new Promise(function(resolve, reject) { + if (typeof target !== 'object' || !(name && typeof name === 'string') || + !(Number.isInteger(delay) && delay >= 0)) { + throw new Error('waitOnEventOrTimeout - invalid parameters.'); + } - function handler(type) { + function handler(type) { + if (target instanceof EventBus) { + target.off(name, eventHandler); + } else { + target.removeEventListener(name, eventHandler); + } + + if (timeout) { + clearTimeout(timeout); + } + resolve(type); + } + + const eventHandler = handler.bind(null, WaitOnType.EVENT); if (target instanceof EventBus) { - target.off(name, eventHandler); + target.on(name, eventHandler); } else { - target.removeEventListener(name, eventHandler); + target.addEventListener(name, eventHandler); } - if (timeout) { - clearTimeout(timeout); - } - capability.resolve(type); - } - - let eventHandler = handler.bind(null, WaitOnType.EVENT); - if (target instanceof EventBus) { - target.on(name, eventHandler); - } else { - target.addEventListener(name, eventHandler); - } - - let timeoutHandler = handler.bind(null, WaitOnType.TIMEOUT); - let timeout = setTimeout(timeoutHandler, delay); - - return capability.promise; + const timeoutHandler = handler.bind(null, WaitOnType.TIMEOUT); + let timeout = setTimeout(timeoutHandler, delay); + }); } /**