sessions.restore()
Restores a closed tab or window. Restoring doesn't just reopen the tab or window: it also restores the tab's navigation history so the back/forward buttons will work. Restoring a window will restore all the tabs that the window contained when it was closed.
This is an asynchronous function that returns a Promise.
Syntax
let restoringSession = browser.sessions.restore( sessionId // string )
Parameters
sessionId-
string. A string containing the session ID for the window or tab to restore. This can be found in thesessionIdproperty of theTaborWindowobject in theSessionreturned fromsessions.getRecentlyClosed().
Return value
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 | |
restore |
Yes | 79 | 52 | ? | Yes | No | ? | ? | No | ? | No | ? |
Examples
This restores the single most recently-closed session, whether it's a window or tab:
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(() => { let gettingSessions = browser.sessions.getRecentlyClosed({ maxResults: 1 }); gettingSessions.then(restoreMostRecent, onError); });
Note: This API is based on Chromium's chrome.sessions API.
Known issues
Bug 1538119 - Duplicate sessionId in browser.sessions.getRecentlyClosed() after "Restore previous session"
© 2005–2023 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/restore