browserAction.setPopup()
========================

Définit le document HTML qui sera ouvert en tant que popup lorsque l'utilisateur clique sur l'icône de l'action du navigateur. Les onglets sans popup spécifique hériteront de la popup globale, qui par défaut est la `default_popup` spécifiée dans le manifest.

Syntaxe
-------


```js
browser.browserAction.setPopup(
  details, // object
);
```

### Paramètres

`details`

`object`.

`tabId`Facultatif

`integer`. Définit la fenêtre contextuelle uniquement pour un onglet spécifique. La fenêtre contextuelle est réinitialisée lorsque l'utilisateur navigue dans cet onglet vers une nouvelle page.

`windowId`Facultatif

`integer`. Définit le popup uniquement pour la fenêtre spécifiée.

`popup`

`string` ou `null`. Le fichier HTML à afficher dans un popup, spécifié comme URL.

Ceci peut pointer vers un fichier empaqueté dans l'extension (par exemple, créé à l'aide de `extension.getURL`), ou un document distant (par exemple `https://example.org/`).

Si une chaîne vide (`""`) est passée ici, le popup est désactivé, et l'extension recevra les événements `browserAction.onClicked`.

Si le `popup` est `null`:

Si `tabId` est spécifié, supprime la fenêtre popup spécifique à l'onglet afin que l'onglet hérite de la fenêtre popup globale..

Si `windowId` est spécifié, supprime le popup spécifique à la fenêtre afin que la fenêtre hérite du popup global.

Sinon, la fenêtre contextuelle globale revient à la valeur par défaut.



* Si `windowId` et `tabId` sont tous les deux fournis, la fonction échoue et le popup n'est pas défini.
* Si `windowId` et `tabId` sont tous les deux omis, la fenêtre contextuelle globale est définie.
Exemples
--------

Ce code ajoute une paire d'éléments de menu contextuel que vous pouvez utiliser pour basculer entre deux fenêtres contextuelles. Notez que vous aurez besoin de la permission "contextMenus" définie dans le manifest de l'extension pour créer des éléments du menu contextuel.


```js
function onCreated() {
  if (browser.runtime.lastError) {
    console.log("error creating item:" + browser.runtime.lastError);
  } else {
    console.log("item created successfully");
  }
}

browser.contextMenus.create(
  {
    id: "popup-1",
    type: "radio",
    title: "Popup 1",
    contexts: ["all"],
    checked: true,
  },
  onCreated,
);

browser.contextMenus.create(
  {
    id: "popup-2",
    type: "radio",
    title: "Popup 2",
    contexts: ["all"],
    checked: false,
  },
  onCreated,
);

browser.contextMenus.onClicked.addListener(function (info, tab) {
  if (info.menuItemId == "popup-1") {
    browser.browserAction.setPopup({ popup: "/popup/popup1.html" });
  } else if (info.menuItemId == "popup-2") {
    browser.browserAction.setPopup({ popup: "/popup/popup2.html" });
  }
});
```

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

**Note :**

Cette API est basée sur l'API Chromium `chrome.browserAction`. Cette documentation est dérivée de `browser_action.json` dans le code de Chromium code.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.