Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 let Cu = Components.utils;
2 let Cc = Components.classes;
3 let Ci = Components.interfaces;
5 Components.utils.import("resource://gre/modules/Services.jsm");
7 // Call a function once initialization of SessionStartup is complete
8 let afterSessionStartupInitialization =
9 function afterSessionStartupInitialization(cb) {
10 do_print("Waiting for session startup initialization");
11 let observer = function() {
12 try {
13 do_print("Session startup initialization observed");
14 Services.obs.removeObserver(observer, "sessionstore-state-finalized");
15 cb();
16 } catch (ex) {
17 do_throw(ex);
18 }
19 };
21 // We need the Crash Monitor initialized for sessionstartup to run
22 // successfully.
23 Components.utils.import("resource://gre/modules/CrashMonitor.jsm");
24 CrashMonitor.init();
26 // Start sessionstartup initialization.
27 let startup = Cc["@mozilla.org/browser/sessionstartup;1"].
28 getService(Ci.nsIObserver);
29 Services.obs.addObserver(startup, "final-ui-startup", false);
30 Services.obs.addObserver(startup, "quit-application", false);
31 Services.obs.notifyObservers(null, "final-ui-startup", "");
32 Services.obs.addObserver(observer, "sessionstore-state-finalized", false);
33 };