summaryrefslogtreecommitdiffstats
path: root/browser/components/sessionstore/SessionStore.jsm
diff options
context:
space:
mode:
authorjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-01 07:17:50 +0100
committerjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-01 07:17:50 +0100
commite59c00a5c59aefe2a408eb78509ef3afaf3658f8 (patch)
tree40b8c8bd311ff17abb81edd6f24bb6ad3ce9b9b8 /browser/components/sessionstore/SessionStore.jsm
parentabf60058584772437a317fbc27ea32cbda4a07cb (diff)
downloadUXP-e59c00a5c59aefe2a408eb78509ef3afaf3658f8.tar
UXP-e59c00a5c59aefe2a408eb78509ef3afaf3658f8.tar.gz
UXP-e59c00a5c59aefe2a408eb78509ef3afaf3658f8.tar.lz
UXP-e59c00a5c59aefe2a408eb78509ef3afaf3658f8.tar.xz
UXP-e59c00a5c59aefe2a408eb78509ef3afaf3658f8.zip
DevTools - Browser Console - restore sessions
https://github.com/MoonchildProductions/moebius/pull/112
Diffstat (limited to 'browser/components/sessionstore/SessionStore.jsm')
-rw-r--r--browser/components/sessionstore/SessionStore.jsm25
1 files changed, 25 insertions, 0 deletions
diff --git a/browser/components/sessionstore/SessionStore.jsm b/browser/components/sessionstore/SessionStore.jsm
index 2f44b2af3..93e21357f 100644
--- a/browser/components/sessionstore/SessionStore.jsm
+++ b/browser/components/sessionstore/SessionStore.jsm
@@ -186,6 +186,15 @@ XPCOMUtils.defineLazyModuleGetter(this, "ViewSourceBrowser",
XPCOMUtils.defineLazyModuleGetter(this, "AsyncShutdown",
"resource://gre/modules/AsyncShutdown.jsm");
+Object.defineProperty(this, "HUDService", {
+ get: function HUDService_getter() {
+ let devtools = Cu.import("resource://devtools/shared/Loader.jsm", {}).devtools;
+ return devtools.require("devtools/client/webconsole/hudservice").HUDService;
+ },
+ configurable: true,
+ enumerable: true
+});
+
/**
* |true| if we are in debug mode, |false| otherwise.
* Debug mode is controlled by preference browser.sessionstore.debug
@@ -2570,10 +2579,16 @@ var SessionStoreInternal = {
this._capClosedWindows();
}
+ // Scratchpad
if (lastSessionState.scratchpads) {
ScratchpadManager.restoreSession(lastSessionState.scratchpads);
}
+ // The Browser Console
+ if (lastSessionState.browserConsole) {
+ HUDService.restoreBrowserConsoleSession();
+ }
+
// Set data that persists between sessions
this._recentCrashes = lastSessionState.session &&
lastSessionState.session.recentCrashes || 0;
@@ -2931,6 +2946,7 @@ var SessionStoreInternal = {
global: this._globalState.getState()
};
+ // Scratchpad
if (Cu.isModuleLoaded("resource://devtools/client/scratchpad/scratchpad-manager.jsm")) {
// get open Scratchpad window states too
let scratchpads = ScratchpadManager.getSessionState();
@@ -2939,6 +2955,9 @@ var SessionStoreInternal = {
}
}
+ // The Browser Console
+ state.browserConsole = HUDService.getBrowserConsoleSessionState();
+
// Persist the last session if we deferred restoring it
if (LastSession.canRestore) {
state.lastSessionState = LastSession.getState();
@@ -3290,9 +3309,15 @@ var SessionStoreInternal = {
this.restoreWindow(aWindow, root.windows[0], aOptions);
+ // Scratchpad
if (aState.scratchpads) {
ScratchpadManager.restoreSession(aState.scratchpads);
}
+
+ // The Browser Console
+ if (aState.browserConsole) {
+ HUDService.restoreBrowserConsoleSession();
+ }
},
/**