A customizable GNOME Shell extension that enhances the user experience with various modules and features. The optional Clipboard History module reads and stores clipboard text locally so it can be browsed and restored; no clipboard data is shared with third parties, and its open shortcut is unset by default.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-X-006 warning
extensions should not use lookupByURL or lookupByUUID for current extension access
Use `this`, `this.getSettings()` or `this.path` instead of `lookupByURL()` or `lookupByUUID()` for the current extension.
shared/icons.js:12
Extension.lookupByURL(import.meta.url)
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
moduleDefinition.js
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.
modules/bluetoothMenu/deviceItem.js:43
this._batteryLabel = new St.Label({
style_class: 'aurora-bt-battery-label',
y_align: Clutter.ActorAlign.CENTER,
x_expand: false,
})
modules/bluetoothMenu/deviceItem.js:49
this._stateIcon = new St.Icon({
icon_size: 16,
style_class: 'popup-menu-icon',
y_align: Clutter.ActorAlign.CENTER,
x_expand: false,
})
modules/volumeMixer/mixerPanel.js:37
this._scroll = scroll
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`.
modules/bluetoothMenu/deviceItem.js:43
this._batteryLabel = new St.Label({
style_class: 'aurora-bt-battery-label',
y_align: Clutter.ActorAlign.CENTER,
x_expand: false,
})
modules/bluetoothMenu/deviceItem.js:49
this._stateIcon = new St.Icon({
icon_size: 16,
style_class: 'popup-menu-icon',
y_align: Clutter.ActorAlign.CENTER,
x_expand: false,
})
modules/volumeMixer/mixerPanel.js:37
this._scroll = scroll
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.
modules/bluetoothMenu/bluetoothMenu.js:89
item.connect('destroy', () => {
this._patchers.delete(item);
})
modules/bluetoothMenu/deviceItem.js:70
this._batteryNotifyId = item._device.connect('notify::battery-percentage', () => {
this._updateBatteryLabel();
})
modules/bluetoothMenu/deviceItem.js:73
this._connectedNotifyId = item._device.connect('notify::connected', () => {
this._updateBatteryLabel();
this._updateStateIcon();
})
modules/bluetoothMenu/deviceItem.js:59
this._spinnerNotifyId = item._spinner.connect('notify::visible', () => {
if (item._spinner.visible) {
this._updateStateIcon();
this._updateBatteryLabel();
} else {
this._scheduleUpdate();
}
})
modules/volumeMixer/streamSlider.js:33
this._sliderChangedId = this.slider.connect('notify::value', () => this._sliderChanged())
modules/volumeMixer/streamSlider.js:23
this._soundSettings.connect(`changed::${ALLOW_AMPLIFIED_VOLUME_KEY}`, () =>
this._updateAllowAmplified(),
)
modules/volumeMixer/streamSlider.js:34
this.slider.connect('drag-begin', () => {
this._inDrag = true;
})
modules/volumeMixer/streamSlider.js:37
this.slider.connect('drag-end', () => {
this._inDrag = false;
})
modules/volumeMixer/volumeMixer.js:119
this._toggleButton.connect('clicked', () => {
if (!this._panel || !this._menuSection || !this._settingsSection) return;
this._menuSection.box.show();
this._settingsSection.box.show();
slider._deviceSection?.box.hide();
slider.menu._setSettingsVisibility?.(false);
EGO-L-004 warning
main loop sources should be removed in disable()
Main loop sources assigned in `enable()` are missing matching removals in `disable()` or its helper methods.
modules/bluetoothMenu/deviceItem.js:108
this._animationTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 250, () => {
this._animationFrame = (this._animationFrame % 4) + 1;
this._stateIcon.gicon = this._loadIcon(
`bbm-bluetooth-${this._animatingState}-${this._animationFrame}-symbolic`,
)
modules/bluetoothMenu/deviceItem.js:84
this._pendingUpdateId = GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE, () => {
this._pendingUpdateId = 0;
this._updateStateIcon();
this._updateBatteryLabel();
return GLib.SOURCE_REMOVE;
})
shared/ui/dash.js:588
this._springLoadTimerId = GLib.timeout_add(
GLib.PRIORITY_DEFAULT,
SPRING_LOAD_DELAY,
() => {
this._springLoadTimerId = 0;
if (this._isDestroyed) return GLib.SOURCE_REMOVE;
const windo
shared/ui/dash.js:721
this._workAreaUpdateId = GLib.idle_add(GLib.PRIORITY_DEFAULT, () => {
this._workAreaUpdateId = 0;
if (this._workArea) {
this.applyWorkArea(this._workArea);
}
return GLib.SOURCE_REMOVE;
})
| Version | Status |
|---|---|
| 50.9 (26) | Active |
| 50.8 (25) | Active |
| 50.6 (24) | Active |
| 50.5 (23) | Rejected |
| 50.4 (22) | Rejected |
| 50.2 (21) | Rejected |
| 50.3 (20) | Rejected |
| 50.2 (19) | Rejected |
| 18 | Rejected |
| 17 | Active |
| 16 | Active |
| 15 | Rejected |
| 14 | Rejected |
| 13 | Rejected |
| 12 | Rejected |
| 11 | Rejected |
| 10 | Active |
| 9 | Rejected |
| 8 | Active |
| 7 | Rejected |
| 6 | Active |
| 5 | Active |
| 4 | Rejected |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Rejected |