Review of "Dynamic Music Pill" version 12

Details Page Preview

An elegant, pill-shaped music player for your desktop. Features a smooth audio visualizer, scrolling text, and seamless integration with Dash-to-Dock and the Top Panel. Comes with a Pop-Up menu as well.

Extension Homepage
https://github.com/Andbal23/dynamic-music-pill

No comments.

Diff Against

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

All Versions

Version Status
1.0.0 (40) Unreviewed
1.0.0 (39) Unreviewed
1.0.0 (38) Rejected
1.0.0 (37) Rejected
36 Rejected
35 Rejected
34 Rejected
33 Rejected
32 Rejected
31 Rejected
30 Rejected
29 Active
28 Rejected
27 Active
26 Active
25 Active
24 Rejected
23 Active
22 Rejected
21 Rejected
20 Active
19 Active
18 Rejected
17 Active
16 Active
15 Active
14 Rejected
13 Rejected
12 Rejected
11 Rejected
10 Rejected
9 Rejected
8 Rejected
7 Rejected
6 Rejected
5 Rejected
4 Rejected
3 Rejected
2 Rejected
1 Rejected

Previous Reviews on this Version

JustPerfection rejected
1. Don't need to use any parameters for `this.getSettings()` since you already have that in `metadata.json`. 2. No need to use `this.initTranslation()` (line 3595 `extension.js`): > Consider this method deprecated. > Only specify gettext-domain in metadata.json. > GNOME Shell can automatically initiate the translation for you > when it sees the gettext-domain key in metadata.json. [Port Guide 45: Extension Utils](https://gjs.guide/extensions/upgrading/gnome-shell-45.html#extensionutils) 3. The default class you are exporting in `extension.js` is too large and that makes reviewing for the cleanup really hard. Please only hold the main logic there and move everything else to another class. 4. Please use `connectObject()` and `disconnectObject()` so it is easier to track for cleanup. 5. You don't have `this._tickId` in that class (line 720 `extension.js`). 6. You cannot call functions in global scope (line 48-49 `extension.js`): [EGO Review Guidelines: Initialization](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#only-use-initialization-for-static-resources) 7. `this._isDestroyed` is a bad practice. Please remove that. 8. Timeout should be removed on destroy and before creating a new one (line 330, 393, 1209, 1364, 2016 `extension.js`): [EGO Review Guidelines: Timeout](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources) 9. I recommend to use `onStopped` instead of `onComplete` for `ease`. 10. Remove all the unnecessary `=== 'function'` checks. 11. Remove all the unnecessary try-catch wrappers. You shouldn't use try-catch when nothing throws.