Review of "World Clocks (Desktop)" version 1.0 (1)

Details Page Preview

Shows multiple world clocks pinned to the desktop background layer. Digital or analog, grouped into sections, configurable cities and position.

Extension Homepage
https://github.com/seifhawamdeh/world-clocks-desktop

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:36
            this._rowsBox = new St.BoxLayout({
                vertical: true,
                style_class: 'wc-rows',
            })
  • extension.js:30
            this._title = new St.Label({
                text: 'World Clocks',
                style_class: 'wc-title',
            })

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:36
            this._rowsBox = new St.BoxLayout({
                vertical: true,
                style_class: 'wc-rows',
            })
  • extension.js:30
            this._title = new St.Label({
                text: 'World Clocks',
                style_class: 'wc-title',
            })

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:69
            this._anchorChangedId = this._settings.connect(
                'changed::anchor', () => this._placeWidget())
  • extension.js:59
            this._layerChangedId = this._settings.connect(
                'changed::layer', () => {
                    this._removeFromStage();
                    this._addToStage();
                    this._placeWidget();
                })
  • extension.js:65
            this._marginChangedId = this._settings.connect(
                'changed::margin-x', () => this._placeWidget())
  • extension.js:67
            this._marginYChangedId = this._settings.connect(
                'changed::margin-y', () => this._placeWidget())
  • extension.js:57
            this._modeChangedId = this._settings.connect(
                'changed::mode', () => this._rebuildClocks())
  • extension.js:55
            this._settingsChangedId = this._settings.connect(
                'changed::clocks', () => this._rebuildClocks())

All Versions

Version Status
1.0 (1) Unreviewed