Review of "Search Light" version 43

Details Page Preview

Take the apps search out of overview.

Extension Homepage
https://github.com/icedman/search-light

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

Shexli found 6 issues that may need reviewer attention.

EGO-I-002 error

Gtk, Gdk and Adw must not be imported in shell process files

GTK library `Gdk` must not be imported in extension process files.

Do not import GTK libraries in GNOME Shell

  • preferences/prefKeys.js:1
    import Gdk from 'gi://Gdk';

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-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/color_effect.js
  • effects/easing.js

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:434
    this._background = background
  • extension.js:273
        this._indicator = new St.Button({
          style_class: 'panel-status-indicators-box',
        })
  • extension.js:139
        this.container = new St.BoxLayout({
          name: 'searchLightBox',
          orientation: Clutter.Orientation.VERTICAL,
          reactive: true,
          track_hover: true,
          can_focus: true,
        })
  • extension.js:137
    this.mainContainer = new SearchLight()

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:139
        this.container = new St.BoxLayout({
          name: 'searchLightBox',
          orientation: Clutter.Orientation.VERTICAL,
          reactive: true,
          track_hover: true,
          can_focus: true,
        })

EGO-L-006 warning

preferences classes should not retain window-scoped objects on instance fields without close-request cleanup

Preferences code stores window-scoped objects on the exported prefs class without `close-request` cleanup.

Destroy all objects

  • prefs.js:138
    this._monitorsConfig = new MonitorsConfig()

All Versions