Review of "Battery Indicator" version 2.0.0 (1)

Details Page Preview

A GNOME Shell extension for Linux that provides customizable low/full battery notifications with smart alert handling, tray integration, and real-time battery monitoring.

Extension Homepage
https://github.com/ash-baseplate/BatteryInd

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

Shexli found 5 issues that may need reviewer attention.

EGO-X-006 warning

extensions should not use lookupByURL or lookupByUUID for current extension access

Use `this`, `this.getSettings()` or `this.path` instead of `lookupByURL()` or `lookupByUUID()` for the current extension.

`extensionUtils`

  • extension.js:131
    Extension.lookupByUUID(this.metadata.uuid)

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:63
        this._icon = new St.Icon({
          gicon: this._getCustomIcon(this._notificationEnabled),
          style_class: "system-status-icon",
        })
  • extension.js:114
        this._notificationMenuItem = new PopupMenu.PopupSwitchMenuItem(
          "Notifications",
          this._notificationEnabled,
        )

EGO-L-005 warning

owned object references should be released in disable()

Owned references that are cleaned up in `disable()` should also be released with `null` or `undefined`.

Destroy all objects

  • extension.js:114
        this._notificationMenuItem = new PopupMenu.PopupSwitchMenuItem(
          "Notifications",
          this._notificationEnabled,
        )

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:59
        this._indicator.connect("button-press-event", (_actor, event) =>
          this._onButtonPress(event),
        )

All Versions

Version Status
2.0.0 (1) Active

Previous Reviews on this Version

fmuellner active