diff options
Diffstat (limited to 'ext/fg/js')
| -rw-r--r-- | ext/fg/js/popup-proxy.js | 20 | 
1 files changed, 15 insertions, 5 deletions
| diff --git a/ext/fg/js/popup-proxy.js b/ext/fg/js/popup-proxy.js index 0cd5bbad..fd07ee46 100644 --- a/ext/fg/js/popup-proxy.js +++ b/ext/fg/js/popup-proxy.js @@ -129,19 +129,29 @@ class PopupProxy {          if (this._frameOffsetPromise === null && !expired) { return; }          if (this._frameOffsetPromise !== null) { -            await this._frameOffsetPromise; +            if (firstRun) { +                await this._frameOffsetPromise; +            }              return;          } +        this._frameOffsetPromise = this._getFrameOffset();          if (firstRun) { -            this._frameOffsetPromise = this._getFrameOffset(); -            this._frameOffset = await this._frameOffsetPromise; +            try { +                this._frameOffset = await this._frameOffsetPromise; +                this._frameOffsetUpdatedAt = Date.now(); +            } catch (e) { +                console.error(e); +            }              this._frameOffsetPromise = null; -            this._frameOffsetUpdatedAt = Date.now();          } else { -            this._getFrameOffset().then((offset) => { +            this._frameOffsetPromise.then((offset) => {                  this._frameOffset = offset;                  this._frameOffsetUpdatedAt = Date.now(); +                this._frameOffsetPromise = null; +            }, (e) => { +                console.error(e); +                this._frameOffsetPromise = null;              });          }      } |