Review of "Alphabetical App Library" version 1.0.0 (1)

Details Page Preview

A customizable alphabetical app launcher and application library for GNOME Shell. Browse and search a continuously sorted A–Z app grid, organize apps into multiple user-defined categories with drag and drop or context menus, and access it through GNOME's Show Apps entry points. Every app always remains available in All Applications, with predictable keyboard-accessible navigation.

Extension Homepage
https://github.com/4gr8justice/alphabetical-app-library

No comments.

FAQ

Files

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

Shexli (experimental) error 1 warning 2

Shexli found 3 issues that may need reviewer attention.

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

  • libraryView.js:50
            this._content = new St.BoxLayout({
                style_class: 'aal-app-tile-content',
                orientation: Clutter.Orientation.VERTICAL,
                x_align: Clutter.ActorAlign.CENTER,
                y_align: Clutter.ActorAlign.CENTER,
            })
  • libraryView.js:72
            this._iconBlock = new St.BoxLayout({
                style_class: 'aal-app-icon-block',
                orientation: Clutter.Orientation.VERTICAL,
                x_align: Clutter.ActorAlign.CENTER,
                y_align: Clutter.ActorAlign.CENTER,
            })
  • libraryView.js:82
            this._label = new St.Label({
                text: appRecord.name,
                style_class: 'aal-app-tile-label',
                x_align: Clutter.ActorAlign.CENTER,
            })
  • libraryView.js:66
            this._runningIndicator = new St.Widget({
                style_class: 'app-grid-running-dot aal-app-running-indicator',
            })
  • libraryView.js:60
            this._runningIndicatorLane = new St.BoxLayout({
                style_class: 'aal-app-running-indicator-lane',
                x_align: Clutter.ActorAlign.CENTER,
                y_align: Clutter.ActorAlign.END,
            })

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:395
            dialog.connect('closed', () => {
                if (this._categoryDialog !== dialog)
                    return;
    
                this._categoryDialog = null;
                onClosed?.();
            })
  • extension.js:476
            dialog.connect('closed', () => {
                if (this._categoryDialog !== dialog)
                    return;
    
                this._categoryDialog = null;
    
                if (keyboardInvoked) {
                    if (!this._libraryView?.focusCategory(categoryId))
                        this._libraryView?.fo
  • libraryView.js:100
            this.actor.connect('clicked', () => {
                this._appRecord.app.activate();
                this._onActivated();
            })

EGO-M-004 error

metadata shell-version must only include plausible stable releases and at most one development release

Field `shell-version` contains invalid values, more than one development release, or implausible future releases.

metadata.json must be well-formed

  • metadata.json
    shell-version=['50', '51']

All Versions

Version Status
1.0.0 (1) Unreviewed