sessions.onChanged

Mise en place lorsque une liste d'onglets fermes ou de fenêtre changes.

Syntaxe

js
browser.sessions.onChanged.addListener(listener);
browser.sessions.onChanged.removeListener(listener);
browser.sessions.onChanged.hasListener(listener);

Les événements ont trois fonctions :

addListener(callback)

Ajoute un auditeur à un événement.

removeListener(listener)

Arrêtez d'écouter cet événement. L'argument de l'auditeur est un auditeur à supprimer.

hasListener(listener)

Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai s'il écoute. Sinon Faux.

Syntaxe addListener

Paramètres

callback

Fonction qui sera appelée lors de l'événement. Il ne passe aucun paramètre.

Compatibilité des navigateurs

BCD tables only load in the browser

Exemples

Cette extension écoute onChanged, puis restaure immédiatement la dernière session fermée, ce qui rend impossible de fermer les fenêtres ou les onglets :

js
function restoreSession(sessionInfos) {
  if (!sessionInfos.length) {
    console.log("No sessions found");
    return;
  }
  let sessionInfo = sessionInfos[0];
  if (sessionInfo.tab) {
    browser.sessions.restore(sessionInfo.tab.sessionId);
  } else {
    browser.sessions.restore(sessionInfo.window.sessionId);
  }
}

function onError(error) {
  console.log(error);
}

function restoreMostRecent() {
  var gettingSessions = browser.sessions.getRecentlyClosed({
    maxResults: 1,
  });
  gettingSessions.then(restoreSession, onError);
}

browser.sessions.onChanged.addListener(restoreMostRecent);

Note :

Cette API est basée sur l'API Chromium chrome.sessions.

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.