Review of "NoteDock" version 1.0.0 (1)

Details Page Preview

A lightweight scratchpad in the GNOME Shell top panel. Notes are stored locally. NoteDock reads clipboard text only when the user clicks Paste and writes note text to the clipboard only when the user clicks Copy.

Extension Homepage
https://github.com/joquers/NoteDock

No comments.

FAQ

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

Shexli (experimental) warning 2 manual_review 1

Shexli found 3 issues that may need reviewer attention.

EGO-A-005 manual_review

extensions should not access the clipboard directly

Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.

Review Guidelines

  • extension.js:298
    St.Clipboard.get_default()

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:114
            this._countLabel = new St.Label({
                text: `0 / ${MAX_NOTE_LENGTH}`,
                style_class: 'notedock-count',
                y_align: Clutter.ActorAlign.CENTER,
            })
  • extension.js:122
            this._editor = new St.Entry({
                hint_text: 'Write a quick note…',
                style_class: 'notedock-editor',
                can_focus: true,
                track_hover: true,
                x_expand: true,
            })
  • extension.js:75
            this._noteDot = new St.Label({
                text: '•',
                style_class: 'notedock-panel-dot',
                y_align: Clutter.ActorAlign.CENTER,
                visible: false,
            })
  • extension.js:146
            this._statusLabel = new St.Label({
                text: 'Loading…',
                style_class: 'notedock-status',
                x_expand: true,
                y_align: Clutter.ActorAlign.CENTER,
            })

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:84
            this._indicator.menu.connect('open-state-changed', (_menu, open) => {
                if (open)
                    this._focusEditor();
            })

All Versions

Version Status
1.0.1 (2) Active
1.0.0 (1) Rejected

Previous Reviews on this Version

JustPerfection rejected
1. Please add to the description that this extension is using clipboard: [EGO Review Guidelines: Clipboard](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#clipboard-access-must-be-declared) 2. `this._destroyed` is a bad practice. Please remove that.