Review of "WTMB (Window Thumbnails)" version 50.0 (17)

Details Page Preview

Allows you to create a live window thumbnails that you can place anywhere on the screen and monitor windows from other workspaces or ones currently covered by other windows. Features: - Thumbnails support DND to move them anywhere on the screen - Minimize windows to thumbnails - Optional full size preview on hover - Optional hide on hover - Custom default scale, position and opacity, animation speed - Resizable by scrolling - Fully customizable mouse and keyboard control - An unlimited number or a single thumbnail - Windows can remember position and size of their thumbnail after the thumbnail was removed so the thumbnail can be restored later - Multi-monitor support - Custom keyboard shortcuts

Extension Homepage
https://github.com/G-dH/window-thumbnails

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 2

Shexli found 3 issues that may need reviewer attention.

EGO-P-004 error

GSettings schema XML filename must match schema id

GSettings schema filename must match `<schema-id>.gschema.xml`.

GSettings Schemas

  • schemas/org.gnome.shell.extensions.window-thumbnails.gschema.xml
    id='org.gnome.shell.extensions.window-thumbnails-old' path='/org/gnome/shell/extensions/window-thumnails/'

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:94
    this._gSettingsKBid = this.Me.opt.connect('changed::create-tmb-shortcut', this._updateKeyBinding.bind(this))
  • extension.js:38
            Me.opt.connect('changed', (settings, key) => {
                if (key.includes('shortcut'))
                    this._updateKeyBinding();
            })
  • winTmb.js:309
    this._draggable.connect('drag-cancelled', this._endDrag.bind(this))
  • winTmb.js:308
    this._draggable.connect('drag-end', this._endDrag.bind(this))

EGO-L-004 warning

main loop sources should be removed in disable()

Main loop sources assigned in `enable()` are missing matching removals in `disable()` or its helper methods.

Remove main loop sources

  • winTmb.js:514
            this._timeouts.winResizeDelayId = GLib.timeout_add(
                500,
                GLib.PRIORITY_LOW,
                () => {
                    this._winGeometry = this._metaWin.get_frame_rect();
                    this._fixGeometry(apply);
                    this._updateCloneScale();
                    this

All Versions

Version Status
50.0 (17) Active
49.1 (16) Active
49.0 (15) Active
48.1 (14) Active
48.1 (13) Active
48.0 (12) Inactive
48.0 (11) Active
47.0 (10) Active
44.3 (9) Active
46.3 (8) Active
44.2 (7) Active
46.2 (6) Active
46.1 (5) Rejected
46.1 (4) Inactive
44.1 (3) Inactive
44.0 (2) Inactive
46.0 (1) Inactive

Previous Reviews on this Version

fmuellner active