diff --git a/src/context_menu/browser_context_menu.js b/src/context_menu/browser_context_menu.js index 077c806db6c58fa6596300036803a0dbcded8b0a..3d1d36180bcc146cd286ec3786c2cc3d23abde4a 100644 --- a/src/context_menu/browser_context_menu.js +++ b/src/context_menu/browser_context_menu.js @@ -27,8 +27,17 @@ async function loadAuthToken() { async function createContextMenu() { await browser.contextMenus.removeAll(); // Supprime tous les éléments du menu contextuel - const { extensionActive } = await browser.storage.local.get("extensionActive"); - log("État de l'extension :", extensionActive); + // Récupération de la valeur depuis le stockage local avec des logs détaillés + let storageData; + try { + storageData = await browser.storage.local.get("extensionActive"); + log("Données récupérées depuis le stockage :", storageData); + } catch (error) { + log("Erreur lors de la récupération de extensionActive :", error); + } + + const extensionActive = storageData && storageData.extensionActive; + log("État de l'extension (extensionActive) :", extensionActive); if (extensionActive) { // Création des éléments du menu contextuel si l'extension est active @@ -70,6 +79,7 @@ async function createContextMenu() { }); } + // Chargement du token et création du menu contextuel loadAuthToken().then(createContextMenu); @@ -83,9 +93,15 @@ browser.runtime.onMessage.addListener((message) => { // Écoute des changements dans le stockage local browser.storage.onChanged.addListener((changes, area) => { - if (area === "local" && changes.accessToken) { - log("Token modifié, actualisation du menu contextuel."); - loadAuthToken().then(createContextMenu); + if (area === "local") { + if (changes.accessToken) { + log("Token modifié, actualisation du menu contextuel."); + loadAuthToken().then(createContextMenu); + } + if (changes.extensionActive) { + log("extensionActive modifié, nouvelle valeur :", changes.extensionActive.newValue); + createContextMenu(); + } } });