Review of "AppMenu" version 4

Details Page Preview

A zero-dependency macOS-style global menu bar for GNOME Shell with app-aware menus, shortcuts, recent items, workspaces, and fast user switching.

Extension Homepage
https://github.com/ChathurangaBW/AppMenu

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 3

Shexli found 3 issues that may need reviewer attention.

EGO-X-004 warning

extensions should avoid synchronous file IO in shell code

Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.

File Operations

  • menuManager.js:56
    GLib.file_get_contents(path)
  • searchDialog.js:40
    file.load_contents(null)

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

  • searchDialog.js:74
            this._resultsBox = new St.BoxLayout({
                vertical: true,
                style_class: 'appmenu-search-results',
            })
  • searchDialog.js:299
    button

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

  • menuManager.js:173
            this._menuOpenSignalId = this.menu.connect('open-state-changed', (_menu, isOpen) => {
                if (isOpen)
                    this._menuOpenHandler?.();
            })

All Versions

Version Status
6 Unreviewed
5 Rejected
4 Rejected
3 Rejected
2 Rejected
1 Rejected

Previous Reviews on this Version

chathurangaBW auto- rejected
Auto-rejected because of new version 5 was uploaded