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 Cu.import("resource://gre/modules/Services.jsm"); | 7 Cu.import("resource://gre/modules/Services.jsm"); |
8 | 8 |
9 let {Prefs} = require("prefs"); | 9 let {Prefs} = require("prefs"); |
10 let {WindowObserver} = require("windowObserver"); | 10 let {WindowObserver} = require("windowObserver"); |
11 | 11 |
| 12 var isAustralis = false; |
| 13 try |
| 14 { |
| 15 Cu.import("resource:///modules/CustomizableUI.jsm", null); |
| 16 isAustralis = true; |
| 17 } catch(e) {} |
| 18 |
12 var WindowFeature = | 19 var WindowFeature = |
13 { | 20 { |
14 observer: null, | 21 observer: null, |
15 | 22 |
16 init: function() | 23 init: function() |
17 { | 24 { |
18 if (!this.observer) | 25 if (!this.observer) |
19 this.observer = new WindowObserver(this, "ready"); | 26 this.observer = new WindowObserver(this, "ready"); |
20 }, | 27 }, |
21 | 28 |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 __proto__: StylesheetFeature, | 124 __proto__: StylesheetFeature, |
118 stylesheet: "chrome://abpcustomization/content/oneLineSubscriptions.css" | 125 stylesheet: "chrome://abpcustomization/content/oneLineSubscriptions.css" |
119 }; | 126 }; |
120 | 127 |
121 var RemoveActionsButton = | 128 var RemoveActionsButton = |
122 { | 129 { |
123 __proto__: StylesheetFeature, | 130 __proto__: StylesheetFeature, |
124 stylesheet: "chrome://abpcustomization/content/noActionButton.css" | 131 stylesheet: "chrome://abpcustomization/content/noActionButton.css" |
125 }; | 132 }; |
126 | 133 |
| 134 var AddonPageAustralisStyles = |
| 135 { |
| 136 __proto__: StylesheetFeature, |
| 137 stylesheet: "chrome://abpcustomization/content/addonPageAustralisStyles.css" |
| 138 }; |
| 139 |
127 var ToolbarIconDisplay = | 140 var ToolbarIconDisplay = |
128 { | 141 { |
129 __proto__: StylesheetFeature, | 142 __proto__: StylesheetFeature, |
130 get template() | 143 get template() |
131 { | 144 { |
132 let request = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance(C
i.nsIXMLHttpRequest); | 145 let request = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance(C
i.nsIXMLHttpRequest); |
133 request.open("GET", "chrome://abpcustomization/content/toolbarIconDisplay.cs
s", false); | 146 request.open("GET", "chrome://abpcustomization/content/toolbarIconDisplay.cs
s", false); |
134 request.overrideMimeType("text/plain"); | 147 request.overrideMimeType("text/plain"); |
135 request.send(); | 148 request.send(); |
136 let result = request.responseText; | 149 let result = request.responseText; |
(...skipping 28 matching lines...) Expand all Loading... |
165 stylesheet: "chrome://abpcustomization/content/hideMenus.css" | 178 stylesheet: "chrome://abpcustomization/content/hideMenus.css" |
166 }; | 179 }; |
167 | 180 |
168 let features = | 181 let features = |
169 { | 182 { |
170 "addon-page-styles": AddonPageStyles, | 183 "addon-page-styles": AddonPageStyles, |
171 "vertical-preferences-layout": VerticalPreferencesLayout, | 184 "vertical-preferences-layout": VerticalPreferencesLayout, |
172 "preferences-one-line-subscriptions": OneLineSubscriptions, | 185 "preferences-one-line-subscriptions": OneLineSubscriptions, |
173 "preferences-remove-actions-button": RemoveActionsButton, | 186 "preferences-remove-actions-button": RemoveActionsButton, |
174 "toolbar-icon-display": ToolbarIconDisplay, | 187 "toolbar-icon-display": ToolbarIconDisplay, |
| 188 "addon-page-australis-styles": AddonPageAustralisStyles, |
175 "green-icon": GreenIcon, | 189 "green-icon": GreenIcon, |
176 "remove-menus": RemoveMenus | 190 "remove-menus": RemoveMenus |
177 }; | 191 }; |
178 | 192 |
179 function updateFeature(name) | 193 function updateFeature(name) |
180 { | 194 { |
181 if (name in features) | 195 if (name in features) |
182 { | 196 { |
183 let enabled; | 197 let enabled; |
184 if (name == "addon-page-styles") | 198 if (name == "addon-page-styles") |
185 enabled = true; | 199 enabled = true; |
| 200 else if (name == "toolbar-icon-display" && isAustralis) |
| 201 enabled = false; |
| 202 else if (name == "addon-page-australis-styles") |
| 203 enabled = isAustralis; |
186 else | 204 else |
187 enabled = Prefs[name]; | 205 enabled = Prefs[name]; |
188 | 206 |
189 if (enabled) | 207 if (enabled) |
190 features[name].init(); | 208 features[name].init(); |
191 else | 209 else |
192 features[name].shutdown(); | 210 features[name].shutdown(); |
193 } | 211 } |
194 } | 212 } |
195 | 213 |
196 | |
197 // Initialize features and make sure to update them on changes | 214 // Initialize features and make sure to update them on changes |
198 for (let feature in features) | 215 for (let feature in features) |
199 updateFeature(feature); | 216 updateFeature(feature); |
200 | 217 |
201 Prefs.addListener(updateFeature); | 218 Prefs.addListener(updateFeature); |
OLD | NEW |