Review of "Paste Presets" version 9

Details Page Preview

Quickly copy and paste frequently used text, like your e-mail address or phone number. This extension lets you specify text presets, which you can then call up and insert anywhere with the mouse or keyboard shortcuts. This requires write-access to the clipboard of course.

Extension Homepage
https://github.com/felix-huesken/paste-presets

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) warning 4 manual_review 1

Shexli found 5 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:159
    St.Clipboard.get_default()

EGO-X-003 warning

extensions should not call run_dispose in extension code

Extension code should not call `run_dispose()`.

GObject.Object.run_dispose

  • keyboard.js:35
    this.#device.run_dispose()

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:145
    this._popUpMenu = new PopupMenu.PopupMenuSection()

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:145
    this._popUpMenu = new PopupMenu.PopupMenuSection()

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:75
    		this._indicator.menu.connect(
    			"open-state-changed",
    			this._menuOpenClose.bind(this)
    		)
  • extension.js:79
    		this._settings.connect("changed::indicator", () => {
    			this._indicator.visible = this._settings.get_boolean("indicator");
    		})

All Versions

Version Status
9 Active
8 Rejected
7 Active
6 Active
5 Rejected
4 Active
3 Active
2 Inactive
1 Rejected

Previous Reviews on this Version

JustPerfection active