Review of "Coverflow Alt-Tab" version 84

Details Page Preview

Replacement of Alt-Tab, iterates through windows in a cover-flow manner.

Extension Homepage
https://github.com/dsheeler/CoverflowAltTab

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 4

Shexli found 4 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

  • manager.js:107
    this.extensionObj.dir.get_child('dbus-interfaces').get_child('org.gnome.Shell.Extensions.Coverflowalttab.xml').load_contents(null)

EGO-P-007 warning

JavaScript files should be reachable from extension.js or prefs.js

Some JavaScript files are not reachable from `extension.js` or `prefs.js` imports.

Don't include unnecessary files

  • effects/lego_effect.js

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

  • swipeTracker.js:112
            this._touchpadSettings = new Gio.Settings({
                schema_id: 'org.gnome.desktop.peripherals.touchpad',
            })
  • swipeTracker.js:327
            this._mouseSettings = new Gio.Settings({
                schema_id: 'org.gnome.desktop.peripherals.mouse',
            })

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

  • swipeTracker.js:239
    actor.connect('scroll-event', this._handleEvent.bind(this))
  • swipeTracker.js:331
            this._mouseSettings.connect('changed::natural-scroll', (settings, key) => {
                this._natural_scrolling = settings.get_boolean(key);
            })
  • swipeTracker.js:334
    actor.connect('scroll-event', this._handleEvent.bind(this))

All Versions