Guest User

Untitled

a guest
Oct 17th, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. extensions.registerSchemaAPI("sessions", "addon_parent", context => {
  2. let {extension} = context;
  3. return {
  4. sessions: {
  5. restore: function(sessionId) {
  6. let recentlyClosed = getRecentlyClosed(1, extension)[0];
  7. if (recentlyClosed.window) {
  8. let window = SessionStore.undoCloseWindow(0);
  9. promiseObserved("sessionstore-single-window-restored",
  10. subject => subject == window).then(() => {
  11. sessionObj.lastModified = Date.now();
  12. sessionObj.window = WindowManager.convert(extension, window, {populate: true});
  13. return Promise.resolve([sessionObj]);
  14. });
  15. } else {
  16. // ignore this part for now
  17. let window = WindowManager.getWindow(recentlyClosed.tab.windowId);
  18. dump(window);
  19. let tab = SessionStore.undoCloseTab(window, 0);
  20. sessionObj.lastModified = Date.now();
  21. sessionObj.tab = TabManager.for(extension).convert(tab);
  22. }
  23. }
  24. // if (sessionObj) {
  25. // return Promise.resolve([sessionObj]);
  26. // }
  27. // return Promise.reject({message: `Could not restore object using sessionId ${sessionId}.`});
  28. },
  29. },
  30. };
  31. });
Advertisement
Add Comment
Please, Sign In to add comment