Photopea No Ads

Hide Photopea Ads

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         Photopea No Ads
// @version      0.0.3
// @description  Hide Photopea Ads
// @icon         https://www.photopea.com/promo/thumb256.png

// @author       ml98
// @namespace    http://tampermonkey.net/
// @license      MIT

// @match        https://www.photopea.com/*
// @grant        unsafeWindow
// @run-at       document-idle
// ==/UserScript==

(function() {
    'use strict';

    function resize() {
        const adWidth = document.querySelector('.app').offsetWidth -
              document.querySelector('.app > div').offsetWidth;
        Object.defineProperty(unsafeWindow, 'innerWidth', {
            get() {
                return parseInt(visualViewport.width) + adWidth;
            }
        });
        unsafeWindow.dispatchEvent(new Event('resize'));
    }

    const observer = new MutationObserver((mutations) => {
        for (const mutation of mutations) {
            for(const node of mutation.addedNodes) {
                if(node.nodeType === 1 && node.matches('.app *')) {
                    observer.disconnect();
                    resize();
                    return;
                }
            }
        }
    });
    observer.observe(document.body, {
        childList: true,
        subtree: true
    });

})();