diff options
Diffstat (limited to 'ext')
| -rw-r--r-- | ext/fg/js/frontend-initialize.js | 3 | ||||
| -rw-r--r-- | ext/fg/js/popup.js | 13 | ||||
| -rw-r--r-- | ext/mixed/js/dom.js | 10 | 
3 files changed, 14 insertions, 12 deletions
| diff --git a/ext/fg/js/frontend-initialize.js b/ext/fg/js/frontend-initialize.js index 2e63c29f..2df59e20 100644 --- a/ext/fg/js/frontend-initialize.js +++ b/ext/fg/js/frontend-initialize.js @@ -16,6 +16,7 @@   */  /* global + * DOM   * FrameOffsetForwarder   * Frontend   * PopupProxy @@ -95,7 +96,7 @@ async function main() {          }          let popup; -        if (isIframe && options.general.showIframePopupsInRootFrame && !document.fullscreen && iframePopupsInRootFrameAvailable) { +        if (isIframe && options.general.showIframePopupsInRootFrame && DOM.getFullscreenElement() === null && iframePopupsInRootFrameAvailable) {              popup = popups.iframe || await createIframePopupProxy(url, frameOffsetForwarder, disableIframePopupsInRootFrame);              popups.iframe = popup;          } else if (proxy) { diff --git a/ext/fg/js/popup.js b/ext/fg/js/popup.js index 99610e17..ae158263 100644 --- a/ext/fg/js/popup.js +++ b/ext/fg/js/popup.js @@ -16,6 +16,7 @@   */  /* global + * DOM   * apiGetMessageToken   * apiInjectStylesheet   */ @@ -271,7 +272,7 @@ class Popup {      }      _onFullscreenChanged() { -        const parent = (Popup._getFullscreenElement() || document.body || null); +        const parent = (DOM.getFullscreenElement() || document.body || null);          if (parent !== null && this._container.parentNode !== parent) {              parent.appendChild(this._container);          } @@ -365,16 +366,6 @@ class Popup {          contentWindow.postMessage({action, params, token}, this._targetOrigin);      } -    static _getFullscreenElement() { -        return ( -            document.fullscreenElement || -            document.msFullscreenElement || -            document.mozFullScreenElement || -            document.webkitFullscreenElement || -            null -        ); -    } -      static _getPositionForHorizontalText(elementRect, width, height, viewport, offsetScale, optionsGeneral) {          const preferBelow = (optionsGeneral.popupHorizontalTextPosition === 'below');          const horizontalOffset = optionsGeneral.popupHorizontalOffset * offsetScale; diff --git a/ext/mixed/js/dom.js b/ext/mixed/js/dom.js index 03acbb80..31ba33d6 100644 --- a/ext/mixed/js/dom.js +++ b/ext/mixed/js/dom.js @@ -62,4 +62,14 @@ class DOM {              default: return false;          }      } + +    static getFullscreenElement() { +        return ( +            document.fullscreenElement || +            document.msFullscreenElement || +            document.mozFullScreenElement || +            document.webkitFullscreenElement || +            null +        ); +    }  } |