recursal/MDN huggingface dataset:
tabs.onAttached
===============

Lancé lorsqu'un onglet est attaché à une fenêtre, par exemple parce qu'il a été déplacé entre les fenêtres.

Syntaxe
-------


```js
browser.tabs.onAttached.addListener(listener);
browser.tabs.onAttached.removeListener(listener);
browser.tabs.onAttached.hasListener(listener);
```


Les événements ont trois fonctions :

`addListener(callback)`

Ajoute un écouteur à cet événement.

`removeListener(listener)`

Arrêtez d'écouter cet événement. L'argument `listener` est l'écouteur à supprimer.

`hasListener(listener)`

CVérifiez si `listener` est enregistré pour cet événement. Renvoie `true` s'il écoute, sinon `false`.

Syntaxe addListener
-------------------

### Paramètres

`callback`

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

`tabId`

`integer`. ID de l'onglet qui a été attaché à une nouvelle fenêtre..


`attachInfo`

`object`. ID de la nouvelle fenêtre, et index de l'onglet à l'intérieur.


Objets supplémentaires
----------------------

### attachInfo

`newWindowId`

`integer`. ID de la nouvelle fenêtre.

`newPosition`

`integer`. Position de l'index que l'onglet a dans la nouvelle fenêtre.

Exemples
--------

Écoutez les événements attachés et consignez les informations :


```js
function handleAttached(tabId, attachInfo) {
  console.log("Tab: " + tabId + " attached");
  console.log("New window: " + attachInfo.newWindowId);
  console.log("New index: " + attachInfo.newPosition);
}

browser.tabs.onAttached.addListener(handleAttached);
```

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.tabs`. Cette documentation est dérivée de `tabs.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.
tabs.ZoomSettings
=================

Définit les paramètres de zoom pour un onglet : `mode`, `scope`, et le facteur de zoom par défaut.

Type
----

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

`defaultZoomFactor`Facultatif

`number`. Le niveau de zoom par défaut pour l'onglet actuel. Notez que ceci n'est utilisé que dans `tabs.getZoomSettings`.

`mode`Facultatif

`tabs.ZoomSettingsMode`. Définit si les modifications de zoom sont gérées par le navigateur, par l'extension ou désactivées.

`scope`Facultatif

`tabs.ZoomSettingsScope`. Définit si les changements de zoom persisteront pour l'origine de la page ou ne prendront effet que dans cet onglet.

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.tabs`. Cette documentation est dérivée de `tabs.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.
tabs.ZoomSettingsScope
======================

Définit si les changements de zoom persisteront pour l'origine de la page ou ne prendront effet que dans cet onglet. La valeur par défaut est à `per-origin` lorsque `tabs.zoomSettingsMode` est "automatique", et est toujours `per-tab`.

Type
----

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

"per-origin"

Tous les autres onglets ayant la même origine que cet onglet auront les changements de zoom qui leur sont appliqués. Cette étendue n'est disponible que si if `tabs.zoomSettingsMode` est "automatique".

"per-tab"

Les changements de zoom ne prennent effet que dans cet onglet et les changements de zoom dans les autres onglets n'affectent pas le zoom de cet onglet. De plus, les changements de zoom `per-tab` ont réinitialisés lors de la navigation ; la navigation dans un onglet charge toujours les pages avec `per-origin` de zoom d'origine.

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.tabs`. Cette documentation est dérivée de `tabs.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.
tabs.onSelectionChanged
=======================

**Attention :** Cet événement est obsolète. Utilisez `tabs.onActivated` à la place.

Se déclenche lorsque l'onglet sélectionné dans une fenêtre change.

Syntaxe
-------


```js
browser.tabs.onSelectionChanged.addListener(listener);
browser.tabs.onSelectionChanged.removeListener(listener);
browser.tabs.onSelectionChanged.hasListener(listener);
```


Les événements ont trois fonctions:

`addListener(callback)`

Ajoute un écouteur à cet événement.

`removeListener(listener)`

Arrêtez d'écouter cet événement. L'argument `listener` est l'écouteur à supprimer.

`hasListener(listener)`

Vérifiez si `listener` est enregistré pour cet événement. Renvoie `true` s'il écoute, sinon `false`.

Syntaxe addListener
-------------------

### Paramètres

`callback`

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

`tabId`

`integer`. L'ID de l'onglet qui est devenu actif.


`selectInfo`

`object`.


Objets supplémentaires
----------------------

### selectInfo

`windowId`

`integer`. L'ID de la fenêtre dans laquelle l'onglet sélectionné a changé.

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.tabs`. Cette documentation est dérivée de `tabs.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.
tabs.onMoved
============

Lancé lorsqu'un onglet est déplacé dans une fenêtre

Un seul événement de déplacement est déclenché, représentant l'onglet que l'utilisateur a déplacé directement. Les événements de déplacement ne sont pas déclenchés pour les autres onglets qui doivent se déplacer en réponse. Cet événement n'est pas déclenché lorsqu'un onglet est déplacé entre des fenêtres. Pour cela, voir `tabs.onDetached`.

Syntaxe
-------


```js
browser.tabs.onMoved.addListener(listener);
browser.tabs.onMoved.removeListener(listener);
browser.tabs.onMoved.hasListener(listener);
```


Les événements ont trois fonctions:

`addListener(callback)`

Ajoute un écouteur à cet événement.

`removeListener(listener)`

Arrêtez d'écouter cet événement. L'argument `listener` st l'écouteur à supprimer.

`hasListener(listener)`

Vérifiez si le `listener` est enregistré pour cet événement. Renvoie `true` s'il écoute, sinon `false`.

Syntaxe addListener
-------------------

### Paramètres

`callback`

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

`tabId`

`integer`. ID de l'onglet déplacé par l'utilisateur.


`moveInfo`

`object`. Informations sur le déménagement.


Objets supplémentaires
----------------------

### moveInfo

`windowId`

`integer`. ID de la fenêtre de cet onglet.

`fromIndex`

`integer`. Index initial de cet onglet dans la fenêtre.

`toIndex`

`integer`. Index final de cet onglet dans la fenêtre

Exemples
--------

Écouter et enregistrer les événements de déplacement :


```js
function handleMoved(tabId, moveInfo) {
  console.log(
    "Tab " +
      tabId +
      " moved from " +
      moveInfo.fromIndex +
      " to " +
      moveInfo.toIndex,
  );
}

browser.tabs.onMoved.addListener(handleMoved);
```

### Example extensions

* tabs-tabs-tabs
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.tabs`. Cette documentation est dérivée de `tabs.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.
tabs.setZoom()
==============

Effectue un zoom sur l'onglet spécifié.

C'est une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var zooming = browser.tabs.setZoom(
  tabId, // optional integer
  zoomFactor, // number
);
```

### Paramètres

`tabId`Facultatif

`integer`. L'ID de l'onglet à zoomer. Par défaut à l'onglet actif de la fenêtre en cours.

`zoomFactor`

`number`. Le nouveau facteur de zoom. Utilisez une valeur de 0 ici pour régler l'onglet à son facteur de zoom par défaut actuel. Sinon, il doit s'agir d'un nombre compris entre 0,3 et 3, en spécifiant un facteur de zoom.

### Valeur retournée

Une `Promise` cela sera accompli sans arguments après que le facteur de zoom ait été changé. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.

Exemples
--------

Set the zoom factor for the current tab to 2:


```js
function onError(error) {
  console.log(`Error: ${error}`);
}

var setting = browser.tabs.setZoom(2);
setting.then(null, onError);
```


Set the zoom factor for the tab whose ID is 16 tab to 0.5:


```js
function onError(error) {
  console.log(`Error: ${error}`);
}

var setting = browser.tabs.setZoom(16, 0.5);
setting.then(null, onError);
```

### Example extensions

* tabs-tabs-tabs
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 `chrome.tabs` de Chromium. Cette documentation est dérivée de `tabs.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.
tabs.toggleReaderMode()
=======================

Bascule en mode Lecteur pour l'onglet donné.

Cette fonction permet de basculer en mode Lecteur pour l'onglet donné. Il prend un identifiant de tabulation en tant que paramètre: s'il est omis, l'onglet actuellement actif est basculé.

C'est une fonction asynchrone qui renvoie une `Promise`.

Le mode Lecteur, également connu sous le nom de Reader View, est une fonction de navigateur qui permet à l'utilisateur de se concentrer plus facilement sur un article en :

* masquage d'éléments de page non essentiels, tels que des encadrés, des bas de page et des annonces
* changer la taille du texte de la page, le contraste et la disposition pour une meilleure lisibilité.

Le mode Lecteur est utile spécifiquement pour les articles: c'est-à-dire, les pages qui ont un corps de texte comme caractéristique principale. Les pages qui n'ont pas d'article identifiable ne peuvent pas être affichées en mode Lecteur. Pour savoir si une page est un article, vérifiez la propriété `isArticle` de `tabs.Tab`.

Pour savoir si un onglet est déjà en mode Lecteur, vérifiez la propriété `isInReaderMode` de `tabs.Tab`. Pour suivre les onglets entrant ou sortant du mode Lecteur, vous devez suivre l'état actuel de tous les onglets et vérifier quand `isInReaderMode` change :


```js
function handleUpdated(tabId, changeInfo, tabInfo) {
  if (changeInfo.status === "complete") {
    console.log(`Tab ${tabId} reader mode: ${tabInfo.isInReaderMode}`);
  }
}

browser.tabs.onUpdated.addListener(handleUpdated);
```

Syntaxe
-------


```js
var toggling = browser.tabs.toggleReaderMode(
  tabId, // optional integer
);
```

### Paramètres

`tabId`Facultatif

`integer`. L'ID de l'onglet à afficher en mode Lecteur. Par défaut à l'onglet sélectionné de la fenêtre en cours.

### Valeur retournée

Une `Promise` qui sera remplie sans argument lorsque l'onglet a été mis à jour. Si une erreur se produit (par exemple, parce que la page n'était pas un article), la promesse sera rejetée avec un message d'erreur..

Exemples
--------

Ce code bascule chaque nouvelle page en mode lecteur, si cette page est éligible pour cela :


```js
function switchToReaderMode(tabId, changeInfo, tabInfo) {
  if (changeInfo.isArticle) {
    browser.tabs.toggleReaderMode(tabId);
  }
}

browser.tabs.onUpdated.addListener(switchToReaderMode);
```

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

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

Envoyé lorsqu'un onglet est agrandi.

Syntaxe
-------


```js
browser.tabs.onZoomChange.addListener(listener);
browser.tabs.onZoomChange.removeListener(listener);
browser.tabs.onZoomChange.hasListener(listener);
```


Les événements ont trois fonctions :

`addListener(callback)`

Ajoute un écouteur à cet événement.

`removeListener(listener)`

Arrêtez d'écouter cet événement. L'argument `listener` de l'écouteur est l'écouteur à supprimer.

`hasListener(listener)`

Vérifiez si `listener` est enregistré pour cet événement. Renvoie `true` s'il écoute, sinon `false`.

Syntaxe addListener
-------------------

### Paramètres

`callback`

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

`ZoomChangeInfo`

`object`. Informations sur l'événement de zoom.


Objets supplémentaires
----------------------

### ZoomChangeInfo

`tabId`

`integer`. ID de l'onglet qui a été zoomé.

`oldZoomFactor`

`number`. Le facteur de zoom précédent.

`newZoomFactor`

`number`. Le nouveau facteur de zoom.

`zoomSettings`

`tabs.ZoomSettings`. Paramètres de zoom pour l'onglet.

Exemples
--------

Ecoutez les événements de zoom et consignez les informations :


```js
function handleZoomed(zoomChangeInfo) {
  console.log("Tab: " + zoomChangeInfo.tabId + " zoomed");
  console.log("Old zoom: " + zoomChangeInfo.oldZoomFactor);
  console.log("New zoom: " + zoomChangeInfo.newZoomFactor);
}

browser.tabs.onZoomChange.addListener(handleZoomed);
```

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.tabs`. Cette documentation est dérivée de `tabs.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.
tabs.get()
==========

Étant donné un ID d'onglet, obtenez les détails de l'onglet en tant qu'objet `tabs.Tab`.

C'est une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var getting = browser.tabs.get(
  tabId, // integer
);
```

### Paramètres

`tabId`

`integer`. ID de l'onglet à obtenir.

### Valeur retournée

Une `Promise` qui sera remplie avec un objet `tabs.Tab` contenant des informations sur l'onglet. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.

Exemples
--------

Obtenir des informations sur un onglet lorsqu'il est activé :


```js
async function logListener(info) {
  try {
    let tabInfo = await browser.tabs.get(info.tabId);
    console.log(tabInfo);
  } catch (error) {
    console.error(error);
  }
}

browser.tabs.onActivated.addListener(logListener);
```

### Example extensions

* chill-out
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 `chrome.tabs` de Chromium. Cette documentation est dérivée de `tabs.json` dans le code de Chromium code.
tabs.getZoom()
==============

Obtient le facteur de zoom actuel pour l'onglet spécifié.

C'est une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var gettingZoom = browser.tabs.getZoom(
  tabId, // optional integer
);
```

### Paramètres

`tabId`Facultatif

`integer`. L'ID de l'onglet pour obtenir le facteur de zoom actuel. Par défaut à l'onglet actif de la fenêtre en cours.

### Valeur retournée

Une `Promise` qui sera satisfaite avec le facteur de zoom actuel de l'onglet, sous la forme d'un nombre compris entre 0,3 et 3. Si l'onglet n'a pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.

Exemples
--------

Obtenez le facteur de zoom pour l'onglet actuel :


```js
function onGot(zoom) {
  console.log(zoom);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var gettingZoom = browser.tabs.getZoom();
gettingZoom.then(onGot, onError);
```


Obtenez le facteur zoom pour l'onglet dont l'ID est 2:


```js
function onGot(zoom) {
  console.log(zoom);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var gettingZoom = browser.tabs.getZoom(2);
gettingZoom.then(onGot, onError);
```

### Example extensions

* tabs-tabs-tabs
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 `chrome.tabs` de Chromium. Cette documentation est dérivée de `tabs.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.
tabs.setZoomSettings()
======================

Définit les paramètres de zoom pour l'onglet spécifié. Ces paramètres sont réinitialisés aux paramètres par défaut lors de la navigation dans l'onglet.

C'est une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var settingZoomSettings = browser.tabs.setZoomSettings(
  tabId, // optional integer
  zoomSettings, // ZoomSettings
);
```

### Paramètres

`tabId`Facultatif

`integer`. L'ID de l'onglet pour modifier les paramètres de zoom pour. Par défaut à l'onglet actif de la fenêtre en cours.

`zoomSettings`

`tabs.ZoomSettings`. Définit comment les modifications de zoom sont gérées et à quelle portée.

### Valeur retournée

une `Promise` qui sera remplie sans arguments après que les paramètres de zoom ont été modifiés. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.

Exemples
--------

Désactiver le zoom pour l'onglet actuel :


```js
function onSet() {
  console.log(`Set zoom factor`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var setting = browser.tabs.setZoomSettings({ mode: "disabled" });
setting.then(onSet, onError);
```

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 `chrome.tabs` de Chromium. Cette documentation est dérivée de `tabs.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.
tabs.captureTab()
=================

Crée un URI de données codant une image de la zone visible de l'onglet donné. Vous devez avoir la permission `<all_urls>` pour utiliser cette méthode.

C'est une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var capturing = browser.tabs.captureTab(
  tabId, // optional integer
  options, // optional extensionTypes.ImageDetails
);
```

### Paramètres

`tabId`Facultatif

`integer`. ID de l'onglet à capturer. Par défaut à l'onglet actif dans la fenêtre en cours.

`options`Facultatif

`extensionTypes.ImageDetails`.

### Valeur retournée

Une `Promise` qui sera remplie avec une URL de données qui code une image de la zone visible de l'onglet capturé. Peut être affecté à la propriété 'src' d'un élément HTML Image pour l'affichage. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

Exemples
--------

Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :


```js
function onCaptured(imageUri) {
  console.log(imageUri);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener(function () {
  var capturing = browser.tabs.captureTab();
  capturing.then(onCaptured, onError);
});
```

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.tabs`. Cette documentation est dérivée de `tabs.json` dans le code de Chromium code.
tabs.goForward()
================

Passez à la page suivante dans l'historique de l'onglet, si disponible.

Il s'agit d'une fonction asynchrone qui renvoie une `Promise`.

Syntaxe
-------


```js
var goingForward = browser.tabs.goForward(
  tabId, // optional integer
  callback, // optional function
);
```

### Paramètres

`tabId`Facultatif

`integer`. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.

`callback`Facultatif

`function`. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.

### Valeur retournée

Une `Promise` qui est tenue lorsque la navigation sur la page se termine.

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

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

Exemples
--------

Passez à la page suivante dans l'onglet en cours :


```js
function onGoForward() {
  console.log("Gone forward");
}

function onError(error) {
  console.log(`Error: ${error}`);
}

var goingForward = browser.tabs.goForward();
goingForward.then(onGoForward, onError);
```


**Note :**

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

Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence américaine Creative Commons Attribution 3.0.