| OLD | NEW | 
|   1 /* |   1 /* | 
|   2  * This Source Code is subject to the terms of the Mozilla Public License |   2  * This Source Code is subject to the terms of the Mozilla Public License | 
|   3  * version 2.0 (the "License"). You can obtain a copy of the License at |   3  * version 2.0 (the "License"). You can obtain a copy of the License at | 
|   4  * http://mozilla.org/MPL/2.0/. |   4  * http://mozilla.org/MPL/2.0/. | 
|   5  */ |   5  */ | 
|   6  |   6  | 
|   7 /** |   7 /** | 
|   8  * @fileOverview Starts up Adblock Plus |   8  * @fileOverview Starts up Adblock Plus | 
|   9  */ |   9  */ | 
|  10  |  10  | 
|  11 Cu.import("resource://gre/modules/XPCOMUtils.jsm"); |  11 Cu.import("resource://gre/modules/XPCOMUtils.jsm"); | 
|  12 Cu.import("resource://gre/modules/Services.jsm"); |  12 Cu.import("resource://gre/modules/Services.jsm"); | 
|  13  |  13  | 
|  14 let {TimeLine} = require("timeline"); |  14 let {TimeLine} = require("timeline"); | 
|  15  |  15  | 
|  16 TimeLine.enter("Adblock Plus startup"); |  16 TimeLine.enter("Adblock Plus startup"); | 
|  17 let {Prefs} = require("prefs"); |  | 
|  18 TimeLine.log("Done loading preferences"); |  | 
|  19 registerPublicAPI(); |  17 registerPublicAPI(); | 
|  20 TimeLine.log("Done registering public API"); |  18 TimeLine.log("Done registering public API"); | 
|  21 require("filterListener"); |  19 require("filterListener"); | 
|  22 TimeLine.log("Done loading filter listener"); |  20 TimeLine.log("Done loading filter listener"); | 
|  23 require("contentPolicy"); |  21 require("contentPolicy"); | 
|  24 TimeLine.log("Done loading content policy"); |  22 TimeLine.log("Done loading content policy"); | 
|  25 require("synchronizer"); |  23 require("synchronizer"); | 
|  26 TimeLine.log("Done loading subscription synchronizer"); |  24 TimeLine.log("Done loading subscription synchronizer"); | 
|  27 require("sync"); |  25 require("sync"); | 
|  28 TimeLine.log("Done loading sync support"); |  26 TimeLine.log("Done loading sync support"); | 
|  29 require("ui"); |  27 require("ui"); | 
|  30 TimeLine.log("Done loading UI integration code"); |  28 TimeLine.log("Done loading UI integration code"); | 
|  31 if (!Prefs.correctTyposAsked || (Prefs.correctTyposAsked && Prefs.correctTypos)) |  29 require("typoBootstrap"); | 
|  32 { |  30 TimeLine.log("Done loading typo correction"); | 
|  33   require("typoFixer"); |  | 
|  34   TimeLine.log("Done loading typo correction"); |  | 
|  35 } |  | 
|  36 else |  | 
|  37 { |  | 
|  38   let onPrefChange = function(name) |  | 
|  39   { |  | 
|  40     if (name == "correctTypos") |  | 
|  41     { |  | 
|  42       require("typoFixer"); |  | 
|  43       Prefs.removeListener(onPrefChange); |  | 
|  44     } |  | 
|  45   } |  | 
|  46    |  | 
|  47   Prefs.addListener(onPrefChange); |  | 
|  48 } |  | 
|  49 TimeLine.leave("Started up"); |  31 TimeLine.leave("Started up"); | 
|  50  |  32  | 
|  51 function registerPublicAPI() |  33 function registerPublicAPI() | 
|  52 { |  34 { | 
|  53   let {addonRoot} = require("info"); |  35   let {addonRoot} = require("info"); | 
|  54  |  36  | 
|  55   let uri = Services.io.newURI(addonRoot + "lib/Public.jsm", null, null); |  37   let uri = Services.io.newURI(addonRoot + "lib/Public.jsm", null, null); | 
|  56   if (uri instanceof Ci.nsIMutable) |  38   if (uri instanceof Ci.nsIMutable) | 
|  57     uri.mutable = false; |  39     uri.mutable = false; | 
|  58  |  40  | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
|  71  |  53  | 
|  72   let registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); |  54   let registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); | 
|  73   registrar.registerFactory(classID, "Adblock Plus public API URL", contractID, 
    factory); |  55   registrar.registerFactory(classID, "Adblock Plus public API URL", contractID, 
    factory); | 
|  74  |  56  | 
|  75   onShutdown.add(function() |  57   onShutdown.add(function() | 
|  76   { |  58   { | 
|  77     registrar.unregisterFactory(classID, factory); |  59     registrar.unregisterFactory(classID, factory); | 
|  78     Cu.unload(uri.spec); |  60     Cu.unload(uri.spec); | 
|  79   }); |  61   }); | 
|  80 } |  62 } | 
| OLD | NEW |