--- title: sessions.getRecentlyClosed() slug: Mozilla/Add-ons/WebExtensions/API/sessions/getRecentlyClosed tags: - API - Add-ons - Extensions - Method - Non-standard - Reference - WebExtensions - getRecentlyClosed - sessions translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/getRecentlyClosed ---
{{AddonSidebar()}}

Renvoie un ensemble d'objets {{WebExtAPIRef("sessions.Session", "Session")}}, représentant des fenêtres et des onglets qui ont été fermés dans la session du navigation actuelle (c'est à dire l'heure écoulée depuis le démarrage du navigateur).

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

Syntaxe

var gettingSessions = browser.sessions.getRecentlyClosed(
  filter             // optional object
)

Paramètres

filter{{optional_inline}}
object. Un objet {{WebExtAPIRef("sessions.Filter")}} qui limite l'ensemble des sessions renvoyées.

Valeur retournée

Une Promise. Cela sera rempli avec un ensemble d'objets {{WebExtAPIRef("sessions.Session", "Session")}}, un pour chacun des derniers onglets fermés ou des fenêtres dans la session de navigation actuelle, jusqu'à  {{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}} ou le nombre inclus dans l'argument du filtre, le plus petit qui soit. Le tableau est donné à l'inverse de l'ordre dans lequel les onglets ou fenêtres ont été fermés, de sorte que le plus récemment fermé sera à l'index 0.

Si une erreur survient, la promesse sera rejetée avec un message d'erreur.

Compatibilité du navigateur

{{Compat("webextensions.api.sessions.getRecentlyClosed")}}

Exemples

Le code restaure la session la plus récemment fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

function restoreMostRecent(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);
}

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

{{WebExtExamples}}

Remerciements

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.