Mercurial > nightly_tester_tools
comparison chrome/content/configwarning.js @ 2:472a16863ecc
expanded nightly.jar
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Tue, 02 Dec 2008 20:38:20 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
1:93e46514f20d | 2:472a16863ecc |
---|---|
1 const Cc = Components.classes; | |
2 const Ci = Components.interfaces; | |
3 | |
4 var gOS = null; | |
5 | |
6 var observer = { | |
7 observe: function(subject, topic, data) { | |
8 window.focus(); | |
9 } | |
10 } | |
11 | |
12 function init() { | |
13 var bundle = document.getElementById("bundle"); | |
14 setLabelForButton(document.documentElement.getButton("accept"), bundle.getString("Yes")); | |
15 setLabelForButton(document.documentElement.getButton("cancel"), bundle.getString("No")); | |
16 | |
17 gOS = Cc["@mozilla.org/observer-service;1"]. | |
18 getService(Ci.nsIObserverService); | |
19 gOS.addObserver(observer, "xul-window-visible", false); | |
20 } | |
21 | |
22 function unload() { | |
23 gOS.removeObserver(observer, "xul-window-visible"); | |
24 gOS = null; | |
25 } | |
26 | |
27 function setLabelForButton(button, label) | |
28 { | |
29 var accessKey = null; | |
30 if (/ *\(\&([^&])\)(:)?$/.test(label)) { | |
31 label = RegExp.leftContext + RegExp.$2; | |
32 accessKey = RegExp.$1; | |
33 } else if (/^(.*[^&])?\&(([^&]).*$)/.test(label)) { | |
34 label = RegExp.$1 + RegExp.$2; | |
35 accessKey = RegExp.$3; | |
36 } | |
37 // && is the magic sequence to embed an & in your label. | |
38 label = label.replace(/\&\&/g, "&"); | |
39 button.label = label; | |
40 if (accessKey) | |
41 button.accessKey = accessKey; | |
42 } | |
43 | |
44 function accept() { | |
45 var cs = Cc["@oxymoronical.com/nightly/addoncompatibility;1"]. | |
46 createInstance(Ci.nttIAddonCompatibilityService); | |
47 var em = Cc["@mozilla.org/extensions/manager;1"]. | |
48 getService(Ci.nsIExtensionManager); | |
49 var items = em.getItemList(Ci.nsIUpdateItem.TYPE_ADDON, {}); | |
50 for (var i = 0; i < items.length; i++) { | |
51 var addon = cs.getAddonForID(items[i].id); | |
52 if (!addon.isValid()) | |
53 continue; | |
54 if (!addon.needsOverride(false) && addon.needsOverride(true)) | |
55 addon.overrideCompatibility(true); | |
56 } | |
57 | |
58 var prefs = Cc["@mozilla.org/preferences-service;1"]. | |
59 getService(Ci.nsIPrefBranch); | |
60 if (prefs.prefHasUserValue("extensions.checkCompatibility")) | |
61 prefs.clearUserPref("extensions.checkCompatibility"); | |
62 if (prefs.prefHasUserValue("extensions.checkUpdateSecurity")) | |
63 prefs.clearUserPref("extensions.checkUpdateSecurity"); | |
64 } |