diff options
| author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2020-12-18 15:54:05 -0500 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-18 15:54:05 -0500 | 
| commit | 51223abfa696c5917828fdb5a6d7b1816d76c5c6 (patch) | |
| tree | 1c64ad6b15b0773908669cdce14e6d1f319e428e /ext/mixed/js | |
| parent | fd91a5b383addb1b420fba0450a89ceb50cdd3e8 (diff) | |
Set up initial manifest v3 support (#605)
Diffstat (limited to 'ext/mixed/js')
| -rw-r--r-- | ext/mixed/js/core.js | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/ext/mixed/js/core.js b/ext/mixed/js/core.js index 72ab7474..aa894e01 100644 --- a/ext/mixed/js/core.js +++ b/ext/mixed/js/core.js @@ -304,7 +304,12 @@ function promiseTimeout(delay, resolveValue) {  }  function promiseAnimationFrame(timeout=null) { -    return new Promise((resolve) => { +    return new Promise((resolve, reject) => { +        if (typeof cancelAnimationFrame !== 'function' || typeof requestAnimationFrame !== 'function') { +            reject(new Error('Animation not supported in this context')); +            return; +        } +          let timer = null;          let frameRequest = null;          const onFrame = (time) => { @@ -318,12 +323,14 @@ function promiseAnimationFrame(timeout=null) {          const onTimeout = () => {              timer = null;              if (frameRequest !== null) { +                // eslint-disable-next-line no-undef                  cancelAnimationFrame(frameRequest);                  frameRequest = null;              }              resolve({time: timeout, timeout: true});          }; +        // eslint-disable-next-line no-undef          frameRequest = requestAnimationFrame(onFrame);          if (typeof timeout === 'number') {              timer = setTimeout(onTimeout, timeout); |