Review of "Dhruva" version 7

Details Page Preview

A buttery smooth, highly animated Dock for GNOME Shell. Features: • Omni-Directional Placement • True Magnification • Magic Lamp (Genie) Effect • Chameleon Theme Engine • Full-Width & Alignment Options • Customizable Running Indicators • Notification Badges • Quick Launch (Super + 1-9, keyboard shortcuts) • Mounted Volumes • Smart First-Run Setup • Workspace Isolation • Quick System Modules • Custom Folders • Integrated Clock • Click Animations • Glassmorphism Context Menus • Anti-Collision System

Extension Homepage
https://github.com/narkagni/dhruva

No comments.

Diff Against

Files

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

Shexli (experimental)

Shexli did not find any issues.

All Versions

Version Status
11 Active
10 Inactive
9 Rejected
8 Rejected
7 Rejected
6 Rejected
5 Rejected
4 Inactive
3 Inactive
2 Rejected
1 Rejected

Previous Reviews on this Version

JustPerfection rejected
1. You shouldn't remove the user's keybinding (line 70-81 `extension.js`). 2. Please use `connectObject()` and `disconnectObject()` so it is easier to track for cleanup (`extension.js` process only). 3. Remove line 31, 46-49 `prefs.js`. 4. `this._isDestroyed` is a bad practice. Please remove that. 5. It's weird that `src/core/TimerRegistry.js` is handling signal connections. 6. Timeout should be removed on destroy/disable and before creating a new one: - line 82, 109 `src/core/autohide/AutoHideAnimations.js` - line 51, 70, 234 `src/core/autohide/EdgeDetection.js` - line 309 `src/ui/dock/DockItemBuilder.js` - line 109 `src/ui/dock/DockRenderer.js` - line 363, 530, 604, 874 `src/ui/magnifier/Magnifier.js` - line 265 `src/ui/magnifier/MagnifierTooltipRenderer.js` - line 37, 45, 54, 100 `src/ui/modules/DesktopButtonModule.js` - line 81 `src/ui/modules/DockModules.js` [EGO Review Guidelines: Timeout](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources) 7. Don't need try-catch wrapper (line 105 `src/core/autohide/AutoHideAnimations.js`). 8. Not clear where that cleanup method is getting called (line 406 `src/ui/context-menu/AppContextMenu.js`). 9. Cannot trace where the destroy callback is getting called (line 294 `src/ui/folder-menu/FolderMenuBuilder.js`). When you make a function that large with so many functions in it, that is not just hard to read, that's a class wrapped into a function. 10. Why are you checking whether that instance has `disconnect`? - line 1042-1065 `src/ui/magnifier/Magnifier.js` 11. How can I know on disable the `stopDragLoop` is getting called (line 38 `src/ui/magnifier/MagnifierDragLoop.js`)?