diff --git a/toolkit/locales/en-US/chrome/mozapps/extensions/extensions.dtd b/toolkit/locales/en-US/chrome/mozapps/extensions/extensions.dtd index 9d9a067f154c..7b4e04b25e3c 100644 --- a/toolkit/locales/en-US/chrome/mozapps/extensions/extensions.dtd +++ b/toolkit/locales/en-US/chrome/mozapps/extensions/extensions.dtd @@ -95,7 +95,7 @@ - + @@ -108,6 +108,7 @@ + diff --git a/toolkit/mozapps/extensions/content/extensions.css b/toolkit/mozapps/extensions/content/extensions.css index 96cc15889241..e3b685379723 100644 --- a/toolkit/mozapps/extensions/content/extensions.css +++ b/toolkit/mozapps/extensions/content/extensions.css @@ -38,10 +38,14 @@ richlistitem[state="finishing"] hbox.addon-install-status { -moz-binding: url("chrome://mozapps/content/extensions/extensions.xml#addon-install-finishing"); } -richlistitem[state="success"][opType] hbox.addon-install-status { +richlistitem[state="success"][opType="needs-install"] hbox.addon-install-status { -moz-binding: url("chrome://mozapps/content/extensions/extensions.xml#addon-install-restart"); } +richlistitem[state="success"][opType="needs-upgrade"] hbox.addon-install-status { + -moz-binding: url("chrome://mozapps/content/extensions/extensions.xml#addon-upgrade-restart"); +} + richlistitem[state="success"] hbox.addon-install-status { -moz-binding: url("chrome://mozapps/content/extensions/extensions.xml#addon-install-success"); } diff --git a/toolkit/mozapps/extensions/content/extensions.js b/toolkit/mozapps/extensions/content/extensions.js index 5b5ef313c4bc..270530de2fe9 100644 --- a/toolkit/mozapps/extensions/content/extensions.js +++ b/toolkit/mozapps/extensions/content/extensions.js @@ -349,6 +349,7 @@ function showView(aView) { ["updateable", "?updateable"], ["updateURL", "?updateURL"], ["version", "?version"], + ["newVersion", "?newVersion"], ["typeName", "install"] ]; types = [ [ ["state", "?state", null ] ] ]; break; diff --git a/toolkit/mozapps/extensions/content/extensions.xml b/toolkit/mozapps/extensions/content/extensions.xml index 8e7e4c09be15..8bf4b5d2aa28 100644 --- a/toolkit/mozapps/extensions/content/extensions.xml +++ b/toolkit/mozapps/extensions/content/extensions.xml @@ -232,7 +232,7 @@ - + @@ -456,7 +456,7 @@ - + @@ -558,7 +558,7 @@ - + @@ -601,6 +601,12 @@ + + + + + + diff --git a/toolkit/mozapps/extensions/src/nsExtensionManager.js.in b/toolkit/mozapps/extensions/src/nsExtensionManager.js.in index cd8104f41b04..e3bb066c8891 100644 --- a/toolkit/mozapps/extensions/src/nsExtensionManager.js.in +++ b/toolkit/mozapps/extensions/src/nsExtensionManager.js.in @@ -4758,6 +4758,7 @@ ExtensionManager.prototype = { var props = { name : name, version : EM_L(getManifestProperty(installManifest, "version")), + newVersion : EM_L(getManifestProperty(installManifest, "version")), installLocation : EM_L(installLocation.name), type : EM_I(type), availableUpdateURL : null, @@ -4799,6 +4800,7 @@ ExtensionManager.prototype = { ds.updateVisibleList(id, installLocation.name, false); var props = { installLocation : EM_L(installLocation.name), type : EM_I(type), + newVersion : EM_L(getManifestProperty(installManifest, "version")), availableUpdateURL : null, availableUpdateHash : null, availableUpdateVersion : null }; @@ -7274,8 +7276,10 @@ ExtensionsDataSource.prototype = { * The Install Location of the item. */ addItemMetadata: function(id, installManifest, installLocation) { - // Copy the assertions over from the source datasource. var targetRes = getResourceForID(id); + // Remove any temporary assertions used for the install process + this._setProperty(this._inner, targetRes, EM_R("newVersion"), null); + // Copy the assertions over from the source datasource. // Assert properties with single values var singleProps = ["version", "updateURL", "updateService", "optionsURL", "aboutURL", "iconURL", "internalName"];