diff --git a/packages/browser-extension/src/manifest.json b/packages/browser-extension/src/manifest.json index f0e166e..4039f6e 100644 --- a/packages/browser-extension/src/manifest.json +++ b/packages/browser-extension/src/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 3, "name": "Cookie Dialog Monster", - "version": "7.3.1", + "version": "7.3.2", "default_locale": "en", "description": "__MSG_appDesc__", "icons": { diff --git a/packages/browser-extension/src/scripts/content.js b/packages/browser-extension/src/scripts/content.js index 062440c..a2f9b54 100644 --- a/packages/browser-extension/src/scripts/content.js +++ b/packages/browser-extension/src/scripts/content.js @@ -40,7 +40,7 @@ if (typeof browser === 'undefined') { * @description Actions done by the extension * @type {Set} */ -let actions = new Set(); +const actions = new Set(); /** * @description Data object with all the necessary information @@ -237,10 +237,6 @@ function match(element, skipMatch) { return false; } - if (element.getAttribute(dataAttributeName)) { - return false; - } - if (seen.has(element)) { return false; } @@ -303,9 +299,10 @@ function fix() { const domains = skips.domains.map((x) => (x.split('.').length < 3 ? `*${x}` : x)); for (const backdrop of backdrops) { - if (backdrop.children.length === 0 && !backdrop.hasAttribute(dataAttributeName)) { + if (backdrop.children.length === 0 && !seen.has(backdrop)) { actions.add(new Date().getTime().toString()); - backdrop.setAttribute(dataAttributeName, 'true'); + seen.add(backdrop); + hide(backdrop); } } @@ -439,6 +436,19 @@ async function setUp(params = {}) { } } +/** + * @description Wait for the body to exist + * @param {void} callback + * @returns {void} + */ +async function setUpAfterWaitForBody() { + if (document.body) { + await setUp(); + } else { + setTimeout(setUpAfterWaitForBody, 50); + } +} + /** * @description Mutation Observer instance * @type {MutationObserver} @@ -467,18 +477,6 @@ browser.runtime.onMessage.addListener(async (message) => { } }); -/** - * @async - * @description Fix still existing elements when page loads - * @listens window#DOMContentLoaded - * @returns {void} - */ -document.addEventListener('DOMContentLoaded', async () => { - if (document.visibilityState === 'visible') { - await setUp(); - } -}); - /** * @description Fix bfcache issues * @listens window#pageshow @@ -492,7 +490,7 @@ window.addEventListener('pageshow', async (event) => { /** * @async - * @description Run run if the page wasn't visible yet + * @description Run if the page wasn't visited yet * @listens window#visibilitychange * @returns {void} */ @@ -502,3 +500,10 @@ window.addEventListener('visibilitychange', async () => { await setUp(); } }); + +/** + * @description Run as soon as possible, if the user is in front of the page + */ +if (document.visibilityState === 'visible') { + setUpAfterWaitForBody(); +} diff --git a/packages/web/src/mozilla-mobile/updates.json b/packages/web/src/mozilla-mobile/updates.json index b4d4aa0..f14e152 100644 --- a/packages/web/src/mozilla-mobile/updates.json +++ b/packages/web/src/mozilla-mobile/updates.json @@ -21,6 +21,10 @@ { "version": "7.3.1", "update_link": "https://www.cookie-dialog-monster.com/releases/7.3.1-mozilla-mobile.xpi" + }, + { + "version": "7.3.2", + "update_link": "https://www.cookie-dialog-monster.com/releases/7.3.2-mozilla-mobile.xpi" } ] } diff --git a/packages/web/src/mozilla/updates.json b/packages/web/src/mozilla/updates.json index b9e899f..c50cb27 100644 --- a/packages/web/src/mozilla/updates.json +++ b/packages/web/src/mozilla/updates.json @@ -53,6 +53,10 @@ { "version": "7.3.1", "update_link": "https://www.cookie-dialog-monster.com/releases/7.3.1.xpi" + }, + { + "version": "7.3.2", + "update_link": "https://www.cookie-dialog-monster.com/releases/7.3.2.xpi" } ] } diff --git a/packages/web/src/releases/7.3.2-mozilla-mobile.xpi b/packages/web/src/releases/7.3.2-mozilla-mobile.xpi new file mode 100644 index 0000000..0a2a086 Binary files /dev/null and b/packages/web/src/releases/7.3.2-mozilla-mobile.xpi differ diff --git a/packages/web/src/releases/7.3.2.xpi b/packages/web/src/releases/7.3.2.xpi new file mode 100644 index 0000000..09827b2 Binary files /dev/null and b/packages/web/src/releases/7.3.2.xpi differ diff --git a/packages/web/src/releases/7.3.2.zip b/packages/web/src/releases/7.3.2.zip new file mode 100644 index 0000000..d99c186 Binary files /dev/null and b/packages/web/src/releases/7.3.2.zip differ diff --git a/packages/web/src/releases/latest-mozilla-mobile.xpi b/packages/web/src/releases/latest-mozilla-mobile.xpi index d80e5e3..0a2a086 100644 Binary files a/packages/web/src/releases/latest-mozilla-mobile.xpi and b/packages/web/src/releases/latest-mozilla-mobile.xpi differ diff --git a/packages/web/src/releases/latest.xpi b/packages/web/src/releases/latest.xpi index 65e11e6..09827b2 100644 Binary files a/packages/web/src/releases/latest.xpi and b/packages/web/src/releases/latest.xpi differ diff --git a/packages/web/src/releases/latest.zip b/packages/web/src/releases/latest.zip index b032093..d99c186 100644 Binary files a/packages/web/src/releases/latest.zip and b/packages/web/src/releases/latest.zip differ