Review of "Improved Workspace Indicator" version 30

Details Page Preview

Slightly improved workspace indicator that shows both current and in use workspaces similar to i3/sway

Extension Homepage
https://github.com/MichaelAquilina/improved-workspace-indicator

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) warning 4

Shexli found 4 issues that may need reviewer attention.

EGO-P-006 warning

unnecessary build and translation artifacts should not be shipped

Compiled GSettings schemas should not be shipped for 45+ packages.

Don't include unnecessary files

  • schemas/gschemas.compiled
    schemas/gschemas.compiled

EGO-L-002 warning

objects created by extension should be destroyed in disable()

Objects assigned in `enable()` are missing matching `.destroy()` calls in `disable()` or its helper methods.

Destroy all objects

  • extension.js:342
    indicator

EGO-L-003 warning

signals connected by extension should be disconnected in disable()

Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.

Disconnect all signals

  • extension.js:277
          this.panel_button.connect("scroll-event", (_, event) => {
            let switch_step = 0;
            switch (event.get_scroll_direction()) {
              case Clutter.ScrollDirection.UP:
                switch_step = -1;
                break;
              case Clutter.ScrollDirection.DOWN:
                switch_ste

EGO-L-006 warning

preferences classes should not retain window-scoped objects on instance fields without close-request cleanup

Preferences code stores window-scoped objects on the exported prefs class without `close-request` cleanup.

Destroy all objects

  • prefs.js:39
        this.prefsWidget = new Gtk.Grid({
          margin_start: 18,
          margin_end: 18,
          margin_top: 18,
          margin_bottom: 18,
          column_spacing: 12,
          row_spacing: 12,
        })

All Versions

Version Status
31 Active
30 Active
29 Active
28 Rejected
27 Active
26 Active
25 Active
24 Active
23 Active
22 Active
21 Rejected
20 Active
19 Inactive
18 Inactive
17 Rejected
16 Active
15 Active
14 Active
13 Active
12 Active
11 Active
10 Active
9 Active
8 Active
7 Rejected
6 Rejected
5 Rejected
4 Active
3 Active
2 Active
1 Active

Previous Reviews on this Version

MichaelAquilina posted a review
So interestingly, the warnings that I should not be including compiled schema files as part of this package are contrary to what I just tested. When I tried installing this extension locally on Fedora 50 without the schemas/gschemas.compiled files, the extension refused to run. This was the error I was getting Extension improved-workspace-indicator@michaelaquilina.github.io: GLib.FileError: Failed to open file “/home/michael/.local/share/gnome-shell/extensions/improved-workspace-indicator@michaelaquilina.github.io/schemas/gschemas.compiled”: open() failed: No such file or directory Stack trace: getSettings@resource:///org/gnome/shell/extensions/sharedInternals.js:101:53 enable@file:///home/michael/.local/share/gnome-shell/extensions/improved-workspace-indicator@michaelaquilina.github.io/extension.js:160:26 _callExtensionEnable@resource:///org/gnome/shell/ui/extensionSystem.js:265:38 loadExtension@resource:///org/gnome/shell/ui/extensionSystem.js:432:32 async*_loadExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:744:24 async*_enableAllExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:750:48 _sessionUpdated@resource:///org/gnome/shell/ui/extensionSystem.js:785:20 async*init@resource:///org/gnome/shell/ui/extensionSystem.js:75:14 _initializeUI@resource:///org/gnome/shell/ui/main.js:323:22 start@resource:///org/gnome/shell/ui/main.js:182:11 resource:///org/gnome/shell/ui/init.js:12:47 @resource:///org/gnome/shell/ui/init.js:20:20
MichaelAquilina posted a review
Sorry I meant gnome 50 on Fedora 44
fmuellner active
How did you install the extension? Schemas should get compiled when installing from extensions.gnome.org, or when using `gnome-extensions install`.
MichaelAquilina posted a review
Ah, I was actually unaware of gnome-extensions install command I was manually copying the data over to the target extensions folder I'll try your method out without the compiled schema and upload a new version if that works