Save and search your copy history right from the top bar. Click an entry to paste it where you type. Pairs with the clipman GTK app (optional).
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-X-004 warning
extensions should avoid synchronous file IO in shell code
Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.
extension.js:38
GLib.file_get_contents(path)
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:59
St.Clipboard.get_default()
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.
extension.js:280
this._clearBtn = clearBtn
extension.js:306
this._historySection = new PopupMenu.PopupMenuSection()
extension.js:264
this._search = new St.Entry({
hint_text: 'Search history…',
can_focus: true,
style_class: 'clipboard-history-search',
})
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`.
extension.js:280
this._clearBtn = clearBtn
extension.js:306
this._historySection = new PopupMenu.PopupMenuSection()
extension.js:264
this._search = new St.Entry({
hint_text: 'Search history…',
can_focus: true,
style_class: 'clipboard-history-search',
})
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:287
menu.connect('open-state-changed', (m, open) => {
this._menuOpen = open;
if (open) {
this._reload();
this._search.text = '';
GLib.idle_add(GLib.PRIORITY_DEFAULT, () => {
this._search.grab_key_focus();
extension.js:269
this._search.clutter_text.connect('text-changed', () =>
this._rebuildDebounced())
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.
extension.js:135
GLib.timeout_add(GLib.PRIORITY_DEFAULT, PASTE_DELAY_MS, () => {
try {
this._injectPaste([KEY_CTRL], KEY_V);
} catch (e) {
log(`clipboard-history: paste injection failed: ${e}`);
}
return GLib.SOURCE_REMOVE;
extension.js:292
GLib.idle_add(GLib.PRIORITY_DEFAULT, () => {
this._search.grab_key_focus();
return GLib.SOURCE_REMOVE;
})
EGO-C45-001 warning
45+ preferences should use fillPreferencesWindow instead of getPreferencesWidget
45+ preferences code should use `fillPreferencesWindow()` instead of `getPreferencesWidget()`.
prefs.js:8
getPreferencesWidget() {
const settings = this.getSettings();
const page = new Adw.PreferencesPage();
const group = new Adw.PreferencesGroup({
title: 'History',
description: 'Copies are stored in ~/.local/share/clipboard-manager/history.jsonl',
| Version | Status |
|---|---|
| 1 | Unreviewed |