Review of "Dock from Dash" version 1

Details Page Preview

Dock. New version and no prefs for 45+ (maybe coming soon). Does use native GNOME Shell Dash. Very light extension. Hover the bottom of your screen and GNOME Shell dash will appear without overview and will hide when you leave the dash. Native GNOME Shell click behavior is modified: minimize if one window is open, overview if many windows are open. Scroll on the dock to change workspace. Some preferences in UI (thanks @rastersoft). I'm not notified of messages here, please report bugs only through GitHub.

Extension Homepage
https://github.com/fthx/dock-from-dash

No comments.

FAQ

Files

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

All Versions

Version Status
71 Active
70 Active
69 Active
68 Rejected
67 Active
66 Active
65 Active
64 Rejected
63 Active
62 Active
61 Active
60 Active
59 Active
58 Active
57 Active
56 Active
55 Active
54 Active
53 Active
52 Active
51 Active
50 Active
49 Active
48 Active
47 Active
46 Active
45 Active
44 Active
43 Active
42 Rejected
41 Active
40 Active
39 Rejected
38 Active
37 Active
36 Active
35 Active
34 Active
33 Active
32 Active
31 Active
30 Active
29 Active
28 Active
27 Active
26 Active
25 Active
24 Active
23 Active
22 Active
21 Active
20 Active
19 Active
18 Active
17 Active
16 Active
15 Active
14 Active
13 Active
12 Active
11 Active
10 Rejected
9 Active
8 Active
7 Rejected
6 Active
5 Rejected
4 Active
3 Active
2 Rejected
1 Rejected

Previous Reviews on this Version

fthx posted a review
Hi JP, I've got an annoying issue: I get JS ERROR: Invalid work id 3: Error: Invalid work id 3 queueDeferredWork@resource:///org/gnome/shell/ui/main.js:808:18 _queueRedisplay@resource:///org/gnome/shell/ui/dash.js:473:14 when I disable the extension and I cannot activate it again. I tried a lot of combinations of chrome removing, destroying, but I'm stuck. This extension is a sort of Dash to Dock with 5000+ less lines of code and 5000+ less options. :-)
JustPerfection active
You should null the timeout id after removing them. Also do that inside timeout callbacks.
JustPerfection rejected
Hey! I just saw your reply here, Yeah, it works fine at first but disable throws some errors. I think it's better to reject this one since the disable has fatal error. Beside the error you mentioned, there is also another one: JS ERROR: Extension dock-from-dash@fthx: Error: No signal connection 49 found _disconnect@resource:///org/gnome/gjs/modules/core/_signals.js:58:11 disable@/home/ice/.local/share/gnome-shell/extensions/dock-from-dash@fthx/extension.js:143:46 _callExtensionDisable@resource:///org/gnome/shell/ui/extensionSystem.js:107:32 _onEnabledExtensionsChanged/<@resource:///org/gnome/shell/ui/extensionSystem.js:498:45 _onEnabledExtensionsChanged@resource:///org/gnome/shell/ui/extensionSystem.js:498:24 createCheckedMethod/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:528:46 disableExtension@resource:///org/gnome/shell/ui/extensionSystem.js:208:29 DisableExtension@resource:///org/gnome/shell/ui/shellDBus.js:427:38 _handleMethodCall@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:310:38 _wrapJSObject/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:387:34
fthx posted a review
Thanks! Could you help me with: "You should null the timeout id after removing them. Also do that inside timeout callbacks." I'm not able to know exactly what you mean.
fthx posted a review
I do never get the JS error "Error: No signal connection 49 found". I'll check that.
JustPerfection posted a review
I mean you should do this: ```js this.show_dock_timeout = GLib.timeout_add(GLib.PRIORITY_DEFAULT, SHOW_DOCK_DELAY, () => { if (this.screen_border_box.get_hover()) { this._dock_refresh(); this._show_dock(); } this.show_dock_timeout = null; // <-- add this line }); ``` also on disable: ```js if (this.show_dock_timeout) { GLib.source_remove(this.show_dock_timeout); this.show_dock_timeout = null; // <-- add this line } ``` If you don't do that, it may create warnings.
JustPerfection posted a review
For sure you will get some errors because you wrapped everything in `startup-complete` signal. Your extension won't be enabled until next startup. Also I just noticed you are not removing it on disable :p
fthx posted a review
Ok thanks for pointing this stupid startup-complete timeout!! Sometimes objects are created but not ready, I'm sur you know all these GS tricks... FYI: https://discourse.gnome.org/t/dock-from-dash-a-light-dock-for-gnome-shell/8434