This extension controls Philips Hue Bridge, Philips Hue SyncBox, Nanoleaf devices, and Ikea Dirigera on your local network. If you are experiencing an error on the upgrade, please log out and log in again.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
1. Timeout should be removed on destroy (line 830 `extension.js`): - line 84 `plugins/philipshue-desktopsync/track-cursor.js` - line 404 `plugins/philipshue-desktopsync/plugin.js` - line 650 and 678 `plugins/philipshue-bridge/plugin.js` - line 453 `plugins/ikea-dirigera/plugin.js` [EGO Review Guidelines: Timeout](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources) 2. No need to use version when you are importing Soup since GNOME Shell 45+ using Soup 3 by default. 3. Please don't use spawn command for getting hostname. Use [`GLib.get_host_name`](https://gjs-docs.gnome.org/glib20~2.0/glib.get_host_name) instead. - line 511 `plugins/philipshue-syncbox/api.js` - line 653 `plugins/philipshue-bridge/api.js` - line 437 `plugins/ikea-dirigera/api.js`
Thank you for your time and review. 1. All the timeouts are actually removed on destroy. The timer id is pushed into this._timers, which is read in the parent class in the function clearTimers(). - line 84 `plugins/philipshue-desktopsync/track-cursor.js` Is removed in function in the parent class: `plugins/philipshue-desktopsync/streamer.js: clearTimers()`, called by `plugins/philipshue-desktopsync/streamer.js: disconnectStream()`, called by `plugins/philipshue-desktopsync/plugin.js: clearInstance()` called by `smarthome.js:removePlugin()` - line 404 `plugins/philipshue-desktopsync/plugin.js` - line 650 and 678 `plugins/philipshue-bridge/plugin.js` - line 453 `plugins/ikea-dirigera/plugin.js` All the four timeouts are removed in the function in the parent class: `smarthome-panelmenu.js:clearTimers()` called by `smarthome-panelmenu.js:clearMenu()` called by `smarthome.js:removePlugin()` I renamed `this._timer` to `this.timer` to clarify it. All the other comments will be addressed shortly.
To make it obvious and easy to read for reviewers, you should remove the timeouts in the same class with a helper function (like `clear` or `destroy`). The parent class can call the destroy or clear.
OK, I will do that.
Thanks!