| Summary: | Cannot paste from clipboard after notification popup timeout without the clipboard tray applet | ||
|---|---|---|---|
| Product: | [Applications] Spectacle | Reporter: | hexchain <kde> |
| Component: | General | Assignee: | Boudhayan Gupta <me> |
| Status: | RESOLVED NOT A BUG | ||
| Severity: | normal | CC: | kde, nate |
| Priority: | NOR | ||
| Version First Reported In: | 22.08.2 | ||
| Target Milestone: | --- | ||
| Platform: | Arch Linux | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
hexchain
2022-10-15 18:32:10 UTC
When you disable the clipboard manager, the system isn't capable of storing clipboard data after the app that provided it quits; that's one of the features that it provides. Once the notification disappears, Spectacle quits. I would recommend that you avoid disabling the clipboard service if you want to use the features that it provides! :) Some applications (like wl-copy) keep themselves running until they lose grip on the clipboard. Is it desirable for Spectacle to do the same? Can you outline what would that look like for Spectacle? (In reply to Nate Graham from comment #3) > Can you outline what would that look like for Spectacle? It would look like this: Spectacle would not quit immediately after a screenshot. Instead, it would wait while it still "owns the clipboard" (i.e. a paste action elsewhere would paste from Spectacle). It only quits once it loses ownership. To demonstrate this behavior with wl-copy: - In a terminal, run "echo 1234 | wl-copy -f" -> wl-copy waits in the foreground; at the same time, pasting shows "1234" - Copy something to the clipboard -> wl-copy quits Do you have an idea for how it could know that? How does wl-copy do it? In wl-copy I think it listens to the "wl_data_source::cancelled" (or similar) event to determine if it is still the clipboard owner. I did some experiments with PyQt and this can somehow be done by listening to the QClipboard::dataChanged event and checking QClipboard::ownsClipboard. However, it only seems to work if there is a window. Yeah that won't work for Spectacle unfortunately. |