Review of "Global Menu for GNOME" version 16

Details Page Preview

Brings a macOS-style global menu bar to GNOME. Adds contextual File, Edit, View, Go, Window, and Help menus for the focused app, plus a configurable System Menu with quick access to Settings, Terminal, Software Center, Force Quit, and power options. Create your own custom menus with shell commands or keyboard shortcuts, and personalize the System Menu icon from bundled distro logos, an Apple-style icon, or your own image.

Extension Homepage
https://github.com/ShiroOSL/global-menu-for-gnome

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 3 manual_review 1

Shexli found 4 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

  • clipboardHistory.js:40
    St.Clipboard.get_default()
  • clipboardHistory.js:127
    St.Clipboard.get_default()
  • emojiPicker.js:2117
    St.Clipboard.get_default()

EGO-A-004 warning

extension files should not contain excessive ungated console logging

File contains 8 ungated console.log/warn/error calls (threshold: 5).

No excessive logging

  • recentItemsSubmenu.js:67
    console.error(`[globalmenu] Failed to resolve recent applications: ${e}`)
  • recentItemsSubmenu.js:81
    console.error(`[globalmenu] Failed to read recent items list: ${e}`)
  • recentItemsSubmenu.js:189
    console.error(`[globalmenu] Recent Items: ${e}`)
  • recentItemsSubmenu.js:196
    console.error(`[globalmenu] Recent Items: ${e}`)
  • recentItemsSubmenu.js:321
    console.error(`[globalmenu] Failed to open recent item ${uri}: ${e}`)
  • recentItemsSubmenu.js:334
    console.error(`[globalmenu] Failed to launch recent application: ${e}`)
  • recentItemsSubmenu.js:345
    console.error(`[globalmenu] Failed to clear recent items: ${e}`)
  • recentItemsSubmenu.js:347
    console.error(`[globalmenu] Recent Items: ${err}`)

EGO-P-007 warning

JavaScript files should be reachable from extension.js or prefs.js

Some JavaScript files are not reachable from `extension.js` or `prefs.js` imports.

Don't include unnecessary files

  • systemInfoPanel.js

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

  • menuManager.js:365
                menuItem.connect("activate", () => {
                  if (this._clipboardPanel) this._clipboardPanel.toggle(this);
                })
  • menuManager.js:369
                menuItem.connect("activate", () => {
                  if (this._emojiPicker) this._emojiPicker.toggle(this);
                })
  • menuManager.js:373
                menuItem.connect("activate", () => {
                  this._executeNativeAction(item.action);
                })

All Versions

Version Status
20 Unreviewed
19 Rejected
18 Rejected
17 Rejected
16 Rejected
15 Active
14 Active
13 Rejected
12 Active
11 Rejected
10 Rejected
9 Active
8 Rejected
7 Active
6 Active
5 Rejected
4 Rejected
3 Rejected
2 Rejected
1 Rejected

Previous Reviews on this Version

Shiro auto- rejected
Auto-rejected because of new version 17 was uploaded