xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.

Opened 9 years ago

Closed 9 years ago

Last modified 17 months ago

#313 closed enhancement (wontfix)

speed up clipboard paste for "greedy" clients (win32)

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: minor Milestone: 0.10
Component: client Version:
Keywords: Cc:

Description (last modified by Antoine Martin)

Not sure if this would work or not, OTOH why not?

When we paste something coming from the server into a win32 application, we ask for the clipboard contents everytime the client application requests the data (for every paste).

Because this ends up doing a round-trip to the server, this can be quite slow. For example: try copying something in the server, then holding "Ctrl+V" in notepad on win32.

Because win32 clients are "greedy" / buggy, we are already notified by the server whenever the contents change so we should be able to cache the value after each request (per TARGET: UTF8_STRING="somestring", STRING="..") and skip the roundtrip for subsequent requests.

Furthermore, if this works well enough, we may want to make all clients greedy to speed things up? (or maybe just for "CLIPBOARD" as "PRIMARY" changes way too often - beware of clipboard managers problems though)

Another thing we may be able to do for greedy clients is to always send the list of targets with the clipboard token, saving another round trip as the client requests the targets pretty much every time (IIRC).

Change History (3)

comment:1 Changed 9 years ago by Antoine Martin

Description: modified (diff)
Owner: changed from Antoine Martin to Antoine Martin
Status: newassigned
Summary: speed up clipboard paste using caching for "greedy" clients (win32)speed up clipboard paste for "greedy" clients (win32)

comment:2 Changed 9 years ago by Antoine Martin

Resolution: wontfix
Status: assignedclosed

Clipboard is tricky enough as it is!

comment:3 Changed 17 months ago by migration script

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/313

Note: See TracTickets for help on using tickets.