sessions.restore()

Stellt einen geschlossenen Tab oder ein Fenster wieder her. Beim Wiederherstellen wird nicht nur der Tab oder das Fenster erneut geöffnet, sondern auch die Navigationshistorie des Tabs wiederhergestellt, sodass die Vor-/Zurück-Schaltflächen funktionieren. Beim Wiederherstellen eines Fensters werden alle Tabs wiederhergestellt, die das Fenster beim Schließen enthielt.

Dies ist eine asynchrone Funktion, die ein Promise zurückgibt.

Syntax

js
let restoringSession = browser.sessions.restore(
  sessionId             // string
)

Parameter

sessionId

string. Ein String, der die Sitzungs-ID für das Fenster oder den Tab enthält, das/welcher wiederhergestellt werden soll. Diese kann in der sessionId-Eigenschaft des Tab- oder Window-Objekts gefunden werden, das in der Session-Rückgabe von sessions.getRecentlyClosed() enthalten ist.

Rückgabewert

Ein Promise. Dieses wird mit einem Session-Objekt erfüllt, das die wiederhergestellte Sitzung repräsentiert.

Beispiele

Dies stellt die zuletzt geschlossene Sitzung wieder her, unabhängig davon, ob es sich um ein Fenster oder einen Tab handelt:

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

Browser-Kompatibilität

Hinweis: Diese API basiert auf der chrome.sessions-API von Chromium.

Bekannte Probleme

Bug 1538119 - Doppelte sessionId in browser.sessions.getRecentlyClosed() nach "Vorherige Sitzung wiederherstellen"