https://bugs.kde.org/show_bug.cgi?id=519651

Noah Davis <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/fram
                   |                            |eworks/kguiaddons/-/commit/
                   |                            |fd4c6d1b7dfb77ecf43607ad49f
                   |                            |17cebe1205f4b
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #2 from Noah Davis <[email protected]> ---
Git commit fd4c6d1b7dfb77ecf43607ad49f17cebe1205f4b by Noah Davis, on behalf of
Zhora Zmeykin.
Committed on 13/08/2026 at 13:04.
Pushed by ndavis into branch 'master'.

Reuse explicitly provided image data

Spectacle already encodes the image for the clipboard and puts both the
ready-to-use `image/<preferred format>` bytes and the original QImage into
QMimeData.

However, whenever an image is requested,
`DataControlSource::ext_data_control_source_v1_send()` ignores the existing
encoded representation and re-encodes the image using `QImage::save()`.

Re-encoding large screenshots as PNG can take more than a second. This happens
after the receiver has requested the MIME type and opened the pipe, while
`DataControlOffer::readData()` stops waiting if the first byte does not arrive
within one second. The receiver then closes the pipe, and the screenshot may
become unavailable for pasting or be stored as an empty Klipper entry.

On my laptop’s 3.1K display, this prevents the image from being stored in
Klipper in time. This is a reduced-scope continuation of !206 although, to be
honest, I only found that MR while preparing this one

Co-authored-by: Tom Ripley <[email protected]>

M  +10   -15   src/systemclipboard/waylandclipboard.cpp
M  +10   -17   src/systemclipboard/wlrwaylandclipboard.cpp

https://invent.kde.org/frameworks/kguiaddons/-/commit/fd4c6d1b7dfb77ecf43607ad49f17cebe1205f4b

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to