Review of "Eye on Cursor" version 3.0.1 (25)

Details Page Preview

Add animated eyes to your GNOME panel that follow your mouse cursor. Bring your desktop to life! Comes with a cursor tracker to help you keep track of your pointer during presentations, screencasts, or everyday use. Features: - Panel eyes that follow your mouse cursor - Eye shape, color, and blinking customization - Customizable cursor tracker with keyboard shortcut Forked from Eye and Mouse Extended by Alexey Lovchikov.

Extension Homepage
https://gitlab.gnome.org/DjinnAlexio/eye-on-cursor/

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 1

Shexli found 2 issues that may need reviewer attention.

EGO-P-002 error

GSettings schema path must use /org/gnome/shell/extensions base

GSettings schema path must start with `/org/gnome/shell/extensions`.

GSettings Schemas

  • schemas/org.gnome.shell.extensions.eye-on-cursor.eye.gschema.xml
    id='org.gnome.shell.extensions.eye-on-cursor.eye' path=''

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

  • extensionModules/utils.js:74
        source.connect('destroy', () => {
            source = null;
        })
  • extensionModules/utils.js:89
    notification.connect('activated', () => extension.openPreferences())

All Versions

Version Status
3.0.2 (26) Active
3.0.1 (25) Rejected
3.0.0 (24) Rejected
2.4.1 (23) Active
2.4.1 (22) Rejected
2.4.1 (21) Rejected
2.4.0 (20) Rejected
2.3.1 (19) Inactive
2.3.0 (18) Rejected
2.2.1 (17) Inactive
2.2.1 (16) Rejected
2.2.0 (15) Inactive
2.1.1 (14) Inactive
2.1.0 (13) Inactive
2.0.0 (12) Inactive
2..0.0 (11) Rejected
1.4.0 (10) Inactive
1.3.2 (9) Inactive
1.3.1 (8) Inactive
1.3.0 (7) Rejected
1.2.1 (6) Inactive
1.2.0 (5) Inactive
1.1.1 (4) Inactive
1.1.0 (3) Rejected
1.0.1 (2) Inactive
1.0.0 (1) Inactive

Previous Reviews on this Version

JustPerfection rejected
`clearTimeout()` shouldn't store the timeout id. And you should also do this on destroy: ```js if (this.#randomTimeout) { clearTimeout(this.#randomTimeout); } this.#stopUnsyncedBlink(); ```
Djinn Alexio posted a review
`clearTimeout()` returns undefined and `this.#stopCurrentMode()` in `destroy()` should take care of it, I believe.
Djinn Alexio posted a review
Like this? ``` destroy() { // Clear any remaining routines and timeouts this.#stopFixedBlink(); this.#stopRandomBlink(); this.#stopUnsyncedBlink(); if (this.#blinkChangeDelay) clearTimeout(this.#blinkChangeDelay); // Disconnect tracker this.#stopClickBlink(); // Disconnect settings this.#settings.disconnectObject(this); this.#settings = null; } ```
JustPerfection posted a review
Yeah, that would be okay.