Review of "Shutdown Options on Lock Screen" version 1.0.0 (1)

Details Page Preview

Adds Suspend, Restart, and Power Off buttons to the GNOME lock screen (the active-session unlock dialog), so you can suspend, reboot, or shut down without unlocking. The same actions can optionally be shown in the top-right system menu (Quick Settings row, panel icon, or submenu; off by default). Actions go straight to systemd-logind; a confirmation step guards against stray clicks. Each action and placement can be toggled in preferences.

Extension Homepage
https://github.com/blurayne/gnome-shell-shutdown-options

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) error 1 warning 3

Shexli found 4 issues that may need reviewer attention.

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:96
            this.actor = new St.BoxLayout({
                style_class: 'shutdown-options-box',
                vertical,
                style: `spacing: 12px;${vertical ? ' padding: 6px;' : ''}`,
                reactive: true,
            })

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:102
    this.actor.connect('destroy', () => this._clearConfirmTimeout())
  • extension.js:244
    item.connect('activate', () => powerAction(action.method))

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-M-008 warning

extensions using unlock-dialog must document it in disable() comments

Extensions using `unlock-dialog` should document the reason in `disable()` comments.

Session Modes

  • extension.js:295
        disable() {
            this._removeLockRow();
            this._removeTopRight();
    
            if (this._sessionUpdatedId) {
                Main.sessionMode.disconnect(this._sessionUpdatedId);
                this._sessionUpdatedId = 0;
            }
            if (this._settingsChangedId) {
                this._settings.d

All Versions

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

Previous Reviews on this Version

JustPerfection rejected
This code seems to be generated by AI. Please note, we have a rule for that: - [EGO Review Guidelines: AI](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#extensions-must-not-be-ai-generated) - [EGO Extension Guidelines: Maintainership](https://gjs.guide/extensions/review-guidelines/best-practices.html#submissions-require-maintainership)