The most popular clipboard manager for GNOME, with over 2M downloads
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-A-005 manual_review
extensions should not access the clipboard directly
Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.
extension.js:68
St.Clipboard.get_default()
EGO-A-004 warning
extension files should not contain excessive ungated console logging
File contains 7 ungated console.log/warn/error calls (threshold: 5).
extension.js:1022
console.error('Clipboard Indicator: Failed to refresh indicator')
extension.js:1023
console.error(e)
extension.js:1330
console.error(e)
extension.js:1430
console.error('Clipboard Indicator: Failed to update registry')
extension.js:1431
console.error(e)
extension.js:1713
console.error('Clipboard Indicator: failed to load image preview')
extension.js:1714
console.error(e)
EGO-X-003 warning
extensions should not call run_dispose in extension code
Extension code should not call `run_dispose()`.
keyboard.js:19
this.#device.run_dispose()
EGO-P-006 warning
unnecessary build and translation artifacts should not be shipped
Compiled GSettings schemas should not be shipped for 45+ packages.
Don't include unnecessary files
schemas/gschemas.compiled
schemas/gschemas.compiled
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.
extension.js:1223
this._notifSource.connect('destroy', () => {
this._notifSource = null;
})
extension.js:372
this.clearMenuItem.connect('activate', this._removeAll.bind(this))
extension.js:705
menuItem.imagePreviewBtn.connect('clicked', () => this.#showImagePreview(entry))
extension.js:723
menuItem.editBtn.connect('clicked', () => this.#showEditDialog(menuItem))
extension.js:762
menuItem.pasteBtn.connect('clicked',
() => this.#pasteItem(menuItem)
)
extension.js:782
menuItem.tagBtn.connect('clicked', () => this.#showTagDialog(menuItem))
extension.js:630
menuItem.actor.connect('key-press-event', (actor, event) => {
switch (event.get_key_symbol()) {
case Clutter.KEY_Delete:
this.#selectNextMenuItem(menuItem);
this._removeEntry(menuItem, 'delete');
return C
extension.js:114
this.menu.connect('open-state-changed', (menu, isOpen) => {
if (!isOpen)
this.menu.sourceActor = this;
})
extension.js:254
this.menu.connect('open-state-changed', (self, open) => {
this._setFocusOnOpenTimeout = setTimeout(() => {
if (!open) return;
if (this._focusItemOnOpen) {
const item = this._focusItemOnOpen;
this._focusItemO
extension.js:364
this.resetTimerButton.connect('clicked', () => {
this._scheduleNextHistoryClear();
})
extension.js:384
this.settingsMenuItem.connect('activate', this._openSettings.bind(this))
| Version | Status |
|---|---|
| 70 | Active |
| 69 | Active |
| 68 | Active |
| 67 | Rejected |
| 66 | Active |
| 65 | Active |
| 64 | Active |
| 63 | Active |
| 62 | Active |
| 61 | Active |
| 60 | Active |
| 59 | Active |
| 58 | Inactive |
| 57 | Active |
| 56 | Active |
| 55 | Active |
| 54 | Active |
| 53 | Active |
| 52 | Active |
| 51 | Active |
| 50 | Active |
| 49 | Rejected |
| 48 | Rejected |
| 47 | Active |
| 46 | Rejected |
| 45 | Active |
| 44 | Active |
| 43 | Active |
| 42 | Active |
| 41 | Rejected |
| 40 | Rejected |
| 39 | Inactive |
| 38 | Active |
| 37 | Active |
| 36 | Active |
| 35 | Inactive |
| 34 | Active |
| 33 | Active |
| 32 | Active |
| 31 | Inactive |
| 30 | Active |
| 29 | Active |
| 28 | Active |
| 27 | Active |
| 26 | Active |
| 25 | Active |
| 24 | Active |
| 23 | Active |
| 22 | Active |
| 21 | Active |
| 20 | Active |
| 19 | Active |
| 18 | Active |
| 17 | Active |
| 16 | Active |
| 15 | Active |
| 14 | Active |
| 13 | Active |
| 12 | Rejected |
| 11 | Active |
| 10 | Active |
| 9 | Active |
| 8 | Active |
| 7 | Active |
| 6 | Active |
| 5 | Active |
| 4 | Rejected |
| 3 | Rejected |
| 2 | Active |
| 1 | Rejected |