| Index: lib/main.js | 
| =================================================================== | 
| --- a/lib/main.js | 
| +++ b/lib/main.js | 
| @@ -41,6 +41,52 @@ | 
| } | 
| } | 
| +/** | 
| + * Object initializing add-on options, observes add-on manager notifications | 
| + * about add-on options being opened. | 
| + * @type nsIObserver | 
| + */ | 
| +let optionsObserver = | 
| +{ | 
| + init: function() | 
| + { | 
| + Services.obs.addObserver(this, "addon-options-displayed", true); | 
| + onShutdown.add(function() | 
| + { | 
| + Services.obs.removeObserver(this, "addon-options-displayed"); | 
| + }.bind(this)); | 
| + }, | 
| + | 
| + initOptionsDoc: function(/**Document*/ doc) | 
| + { | 
| + function hideElement(id, hide) | 
| + { | 
| + let element = doc.getElementById(id); | 
| + if (element) | 
| + element.collapsed = hide; | 
| + } | 
| 
 
Wladimir Palant
2014/07/30 07:45:40
No point to have a generic function here, we only
 
saroyanm
2014/07/30 09:18:32
Will keep in mind.
 
 | 
| + | 
| + try | 
| + { | 
| + let {CustomizableUI} = Cu.import("resource:///modules/CustomizableUI.jsm", null); | 
| + if (CustomizableUI) | 
| 
 
Wladimir Palant
2014/07/30 07:45:40
This check is pointless, if the module fails to lo
 
 | 
| + hideElement("abpcustomization-icondisplay", true); | 
| + } catch (e) {} | 
| + }, | 
| + | 
| + observe: function(subject, topic, data) | 
| + { | 
| + let {addonID} = require("info") | 
| + if (data != addonID) | 
| + return; | 
| + | 
| + this.initOptionsDoc(subject.QueryInterface(Ci.nsIDOMDocument)); | 
| + }, | 
| + | 
| + QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]) | 
| 
 
Wladimir Palant
2014/07/30 07:45:40
Please import XPCOMUtils in this file. The fact th
 
saroyanm
2014/07/30 09:18:32
Done.
 
 | 
| +}; | 
| +optionsObserver.init(); | 
| + | 
| var VerticalPreferencesLayout = | 
| { | 
| __proto__: WindowFeature, | 
| @@ -193,7 +239,6 @@ | 
| } | 
| } | 
| - | 
| // Initialize features and make sure to update them on changes | 
| for (let feature in features) | 
| updateFeature(feature); |