Review of "Burn My Windows" version 49

Details Page Preview

Disintegrate your windows with style.

Extension Homepage
https://github.com/Schneegans/Burn-My-Windows

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 4

Shexli found 5 issues that may need reviewer attention.

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

  • src/Shader.js
  • src/ShaderFactory.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

  • extension.js:121
    this._shellSettings = new Gio.Settings({schema: 'org.gnome.desktop.interface'})

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:116
        this._settings.connect('changed::active-profile', () => {
          this._loadProfiles();
        })
  • extension.js:390
    p.settings.connect('changed::profile-animation-type', () => updatePriority(p))
  • extension.js:389
    p.settings.connect('changed::profile-app', () => updatePriority(p))
  • extension.js:392
    p.settings.connect('changed::profile-color-scheme', () => updatePriority(p))
  • extension.js:395
    p.settings.connect('changed::profile-high-priority', () => updatePriority(p))
  • extension.js:393
    p.settings.connect('changed::profile-power-mode', () => updatePriority(p))
  • extension.js:394
    p.settings.connect('changed::profile-power-profile', () => updatePriority(p))
  • extension.js:391
    p.settings.connect('changed::profile-window-type', () => updatePriority(p))
  • extension.js:255
          container.connect('destroy', () => {
            delete realWindow._bmwOverviewClone;
            delete realWindow._bmwOverviewCloneContainer;
          })

EGO-M-004 error

metadata shell-version must only include plausible stable releases and at most one development release

Field `shell-version` contains invalid values, more than one development release, or implausible future releases.

metadata.json must be well-formed

  • metadata.json
    shell-version=['45', '46', '47', '48', '49', '50', '51']

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:91
        this._resources =
          Gio.Resource.load(this.path + '/resources/burn-my-windows.gresource')
  • prefs.js:99
    this._builder = new Gtk.Builder()
  • prefs.js:105
    this._settings = this.getSettings()
  • prefs.js:108
    this._profileManager = new ProfileManager(this.metadata)
  • prefs.js:148
        this._dbusConnection = Gio.DBus.session.signal_subscribe(
          'org.gnome.Shell', 'org.gnome.shell.extensions.BurnMyWindows', 'WindowPicked',
          '/org/gnome/shell/extensions/BurnMyWindows', null, Gio.DBusSignalFlags.NONE,
          (conn, sender, obj_path, iface, signal, params) => {
            con
  • prefs.js:175
    this._widget = this._builder.get_object('general-prefs')
  • prefs.js:191
    this._searchEntry = this._builder.get_object('search_entry')
  • prefs.js:329
            this._showUpdateInfoTimeout =
              GLib.timeout_add(GLib.PRIORITY_DEFAULT, 2000, () => {
                this._showUpdateInfoTimeout = 0;
    
                const toast = Adw.Toast.new(_('Burn-My-Windows has been updated!'));
                toast.set_button_label(_('View Changelog'));
                to
  • prefs.js:662
    this._activeProfile = allProfiles.find(p => p.path == path)

All Versions

Version Status
49 Active
48 Active
47 Active
46 Active
45 Active
44 Active
43 Active
42 Active
41 Active
40 Active
39 Active
38 Active
37 Active
36 Active
35 Active
34 Active
33 Active
32 Active
31 Active
30 Active
29 Active
28 Active
27 Active
26 Active
25 Active
24 Active
23 Active
22 Active
21 Active
20 Active
19 Active
18 Active
17 Rejected
16 Active
15 Active
14 Active
13 Active
12 Active
11 Active
10 Active
9 Active
8 Active
7 Active
6 Active
5 Active
4 Active
3 Active
2 Active
1 Active

Previous Reviews on this Version

JustPerfection active