W3cubDocs

/Web Extensions

sessions.getRecentlyClosed()

Returns an array of Session objects, representing windows and tabs that were closed in the current browsing session (that is: the time since the browser was started).

This is an asynchronous function that returns a Promise.

Syntax

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

Parameters

filterOptional
object. A sessions.Filter object that limits the set of sessions returned.

Return value

A Promise. This will be fulfilled with an array of Session objects, one for each of the most recently closed tabs or windows in the current browsing session, up to sessions.MAX_SESSION_RESULTS or the number included in the filter argument, whichever is smaller. The array is given in the reverse of the order in which tabs or windows were closed, so the most recently closed will be at index 0.

If an error occurs, the promise will be rejected with an error message.

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
getRecentlyClosed
Yes
79
52
?
Yes
No
?
?
No
?
?
?

Examples

This code restores the single most recently-closed session, whether it's a tab or a window:

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);
});

Note: This API is based on Chromium's chrome.sessions API.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/sessions/getRecentlyClosed