diff --git a/chrome/content/bindings/extensions.xml b/chrome/content/bindings/extensions.xml new file mode 100644 --- /dev/null +++ b/chrome/content/bindings/extensions.xml @@ -0,0 +1,139 @@ + + + +%browserDTD; +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/chrome/content/browser-ui.js b/chrome/content/browser-ui.js --- a/chrome/content/browser-ui.js +++ b/chrome/content/browser-ui.js @@ -185,9 +185,8 @@ }, _initPanel : function() { - let addons = document.getElementById("addons-container"); - if (!addons.hasAttribute("src")) - addons.setAttribute("src", "chrome://mozapps/content/extensions/extensions.xul"); + ExtensionsView.init(); + let dloads = document.getElementById("downloads-container"); if (!dloads.hasAttribute("src")) dloads.setAttribute("src", "chrome://mozapps/content/downloads/downloads.xul"); diff --git a/chrome/content/browser.css b/chrome/content/browser.css --- a/chrome/content/browser.css +++ b/chrome/content/browser.css @@ -66,3 +66,41 @@ checkbox { -moz-binding: url("chrome://browser/content/checkbox.xml#checkbox-radio"); } + +richlistitem[typeName="local"] { + -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-local"); +} + +richlistitem[typeName="search"] { + -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search"); +} + +richlistitem[typeName="message"] { + -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-message"); +} + +/* addons states ----------------------------------------------------------- */ +.hide-on-enable, +.show-on-uninstall, +.show-on-install, +.show-on-restart, +richlistitem[isDisabled="true"] .hide-on-disable { + display: none; +} + +richlistitem[opType="needs-restart"] .show-on-restart, +richlistitem[opType="needs-uninstall"] .show-on-uninstall, +richlistitem[opType="needs-install"] .show-on-install, +richlistitem[opType="needs-enable"] .show-on-enable, +richlistitem[opType="needs-disable"] .show-on-disable, +richlistitem[isDisabled="true"] .show-on-disable { + display: -moz-box; +} + +richlistitem[opType="needs-restart"] .hide-on-restart, +richlistitem[opType="needs-uninstall"] .hide-on-uninstall, +richlistitem[opType="needs-install"] .hide-on-install, +richlistitem[opType="needs-enable"] .hide-on-enable, +richlistitem[opType="needs-disable"] .hide-on-disable { + display: none; +} diff --git a/chrome/content/browser.xul b/chrome/content/browser.xul --- a/chrome/content/browser.xul +++ b/chrome/content/browser.xul @@ -74,6 +74,7 @@