Bug 1477137 - Part 1: Add onUninstalling and onOperationCancelled listeners to detect removal/undo extension in aboutaddons. r?jdescottes draft
authorDaisuke Akatsuka <dakatsuka@mozilla.com>
Fri, 27 Jul 2018 10:32:22 +0900
changeset 823348 8e96bd1d1ba477d2f1d92eb56555268fc3eb2864
parent 823333 8f2f847b2f9dc5643eeb9935d603a3b30686f972
child 823349 f8f643171b913ddfeb4865102aae8d55c06971e9
child 823396 f3a10d1565df676c41a93bb2d2f8cdde41eed50e
child 823402 030ef5f7d1f46a3e44949b3c64b63a5fd8d7a3bd
child 823403 78018e6fbcd852cf6a9b7f3cd9eddd6cf54bfad3
push id117645
push userbmo:dakatsuka@mozilla.com
push dateFri, 27 Jul 2018 02:06:23 +0000
reviewersjdescottes
bugs1477137
milestone63.0a1
Bug 1477137 - Part 1: Add onUninstalling and onOperationCancelled listeners to detect removal/undo extension in aboutaddons. r?jdescottes MozReview-Commit-ID: RaDFBOirgL
devtools/client/aboutdebugging/components/addons/Panel.js
--- a/devtools/client/aboutdebugging/components/addons/Panel.js
+++ b/devtools/client/aboutdebugging/components/addons/Panel.js
@@ -49,16 +49,18 @@ class AddonsPanel extends Component {
 
     this.updateDebugStatus = this.updateDebugStatus.bind(this);
     this.updateShowSystemStatus = this.updateShowSystemStatus.bind(this);
     this.updateAddonsList = this.updateAddonsList.bind(this);
     this.onInstalled = this.onInstalled.bind(this);
     this.onUninstalled = this.onUninstalled.bind(this);
     this.onEnabled = this.onEnabled.bind(this);
     this.onDisabled = this.onDisabled.bind(this);
+    this.onUninstalling = this.onUninstalling.bind(this);
+    this.onOperationCancelled = this.onOperationCancelled.bind(this);
   }
 
   componentDidMount() {
     AddonManager.addAddonListener(this);
     // Listen to startup since that's when errors and warnings
     // get populated on the extension.
     Management.on("startup", this.updateAddonsList);
 
@@ -147,16 +149,30 @@ class AddonsPanel extends Component {
 
   /**
    * Mandatory callback as AddonManager listener.
    */
   onDisabled() {
     this.updateAddonsList();
   }
 
+  /**
+   * Mandatory callback as AddonManager listener.
+   */
+  onUninstalling() {
+    this.updateAddonsList();
+  }
+
+  /**
+   * Mandatory callback as AddonManager listener.
+   */
+  onOperationCancelled() {
+    this.updateAddonsList();
+  }
+
   render() {
     const { client, connect, id } = this.props;
     const { debugDisabled, extensions: targets, showSystemAddons } = this.state;
     const installedName = Strings.GetStringFromName("extensions");
     const temporaryName = Strings.GetStringFromName("temporaryExtensions");
     const systemName = Strings.GetStringFromName("systemExtensions");
     const targetClass = AddonTarget;