Review of "Bluetooth Battery Widget" version 1

Details Page Preview

A simple GNOME Shell widget for Bluetooth device battery information.

Extension Homepage
https://jontroghar.vercel.app

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 3

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

  • extension.js:152
            this._deviceSection =
                new PopupMenu.PopupMenuSection()
  • extension.js:159
            this._emptyItem =
                new PopupMenu.PopupBaseMenuItem({
                    reactive: false,
                    can_focus: false,
                    style_class: 'bluetooth-empty-item',
                })
  • extension.js:166
            this._emptyLabel = new St.Label({
                text: 'No connected Bluetooth devices',
                style_class: 'bluetooth-empty-label',
            })
  • extension.js:113
            this._headerItem =
                new PopupMenu.PopupBaseMenuItem({
                    reactive: false,
                    can_focus: false,
                    style_class: 'bluetooth-widget-header-item',
                })
  • extension.js:145
            this._separator =
                new PopupMenu.PopupSeparatorMenuItem()
  • extension.js:186
            this._settingsItem =
                new PopupMenu.PopupMenuItem(
                    'Bluetooth Settings'
                )
  • extension.js:179
            this._settingsSeparator =
                new PopupMenu.PopupSeparatorMenuItem()

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:152
            this._deviceSection =
                new PopupMenu.PopupMenuSection()
  • extension.js:159
            this._emptyItem =
                new PopupMenu.PopupBaseMenuItem({
                    reactive: false,
                    can_focus: false,
                    style_class: 'bluetooth-empty-item',
                })
  • extension.js:166
            this._emptyLabel = new St.Label({
                text: 'No connected Bluetooth devices',
                style_class: 'bluetooth-empty-label',
            })
  • extension.js:113
            this._headerItem =
                new PopupMenu.PopupBaseMenuItem({
                    reactive: false,
                    can_focus: false,
                    style_class: 'bluetooth-widget-header-item',
                })
  • extension.js:145
            this._separator =
                new PopupMenu.PopupSeparatorMenuItem()
  • extension.js:186
            this._settingsItem =
                new PopupMenu.PopupMenuItem(
                    'Bluetooth Settings'
                )
  • extension.js:179
            this._settingsSeparator =
                new PopupMenu.PopupSeparatorMenuItem()

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:29
    this._bluetooth.connect()

All Versions

Version Status
1 Unreviewed